从有限元到Unity——渲染管线与着色器

从有限元到Unity

一、从有限元到Unity——有限元网格信息导出及分析
二、从有限元到Unity——Unity网格编程
三、从有限元到Unity——从abaqus网格模型文件到Unity模型数据
四、从有限元到Unity——有限元分析结果导出
五、从有限元到Unity——渲染管线与着色器



前言

  上一篇文章大概说了Abaqus如何导出分析后的场变量数据,为后期渲染作数据准备。从本文开始正式进入渲染环节。本章先对渲染管线进行基础了解,以便于后面着色器、渲染过程的理解。


一、渲染管线是什么?

  我们以手机装配流水线为例,首先生产线的前端会有原材料的投入,如机壳、PCB板、电池等,然后是员工进行各个原材料的组装、到整机测试、整机包装,最后输出成品。
  渲染管线的工作与装配流水线类似,网格、材质相当于投入到产线的原材料,CPU和GPU相当于员工,协同起来进行图像渲染和输出,最终获得屏幕上的图像。

二、渲染管线干了些什么?

  前面说了渲染管线是CPU和GPU协同下完成进行图像渲染和输出的过程,而这个过程大体可分为应用阶段、几何阶段和光栅化阶段。那这些阶段中处理些什么?CPU和GPU干了些什么?我们后面就来探讨下。

1.CPU干了些什么?

  在渲染工作中,CPU主要在应用阶段起作用,负责将渲染数据和指令发送至缓存区,GPU负责从缓存区取出数据和指令进行渲染。
  具体的话,应用阶段中CPU将场景数据(模型、光源信息、渲染数据等)、渲染状态设置等进行准备并发送给图形硬件(GPU、显存),同时调用DrawCall(CPU调用图像编程接口)向命令缓冲区依此写入命令,使GPU能依次将其取出执行。
  简而言之,CPU充当着下达渲染命令调用GPU执行的角色。

2.GPU干了些什么?

  GPU主要在几何阶段和光栅化阶段起作用,其中,在几何阶段中又包括了顶点着色器、曲面细分着色器、几何着色器、裁剪、屏幕映射几步。

2.1.几何阶段

2.1.1.顶点着色器

  顶点着色器为几何阶段必需一步,而且是完全可编程的(对应Unity着色器里面的顶点函数),这一步中主要对顶点的坐标进行空间模型转换。这几个空间包括:
  (1)模型空间:即顶点在模型上的坐标位置
  (2)世界空间:最大的空间,即顶点在世界坐标的绝对位置
  (3)视图空间:与模型空间概念类似,只不过从顶点在模型上的位置转为顶点在摄像机的位置
  (4)剪裁空间:除去摄像机视锥体外顶点的坐标空间
  顶点着色器完成顶点坐标从模型空间到世界空间(通过M矩

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值