网站正在建设中怎么办,快速网站建设价格,哪做网站比较好,陕西企业营销型网站建设渲染流程包括 CPU应用程序端渲染逻辑 和 GPU渲染管线 一、CPU应用程序端渲染逻辑
剔除操作对物体进行渲染排序打包数据调用Shader SetPassCall 和 Drawcall
1.剔除操作
视椎体剔除 #xff08;给物体一个包围盒#xff0c;利用包围盒和摄像机的视椎体进行碰撞检测#xf… 渲染流程包括 CPU应用程序端渲染逻辑 和 GPU渲染管线 一、CPU应用程序端渲染逻辑
剔除操作对物体进行渲染排序打包数据调用Shader SetPassCall 和 Drawcall
1.剔除操作
视椎体剔除 给物体一个包围盒利用包围盒和摄像机的视椎体进行碰撞检测在视椎体外的物体被剔除 层级剔除 给物体设置层级标识利用层级剔除物体 遮挡剔除 被遮挡的物体将不会显示渲染在屏幕中
2.排序操作
渲染队列 先渲染不透明物体再渲染半透明物体不透明队列 从前到后渲染半透明队列 从后往前渲染
3.打包视椎体内模型的数据
模型信息 顶点坐标、法线、UV、顶点颜色、索引列表等变换矩阵灯光、材质参数 比如一个正方体模型的信息 4.提交数据到GPU端
SetPass Call (设置渲染状态告诉GPU端需要使用哪一个Shader/Pass、混合模式以及背面剔除的设置)
Draw Call (CPU调用图像应用编程接口来命令GPU进行渲染的操作) 引用自DrawCall、Batches、SetPassCalls的区别和联系_setpasscall draw call-CSDN博客 二、GPU渲染 1.顶点Shader阶段 将模型空间顶点转换到裁剪空间下 顶点Shader并不会产生2D图像仅使得场景中的3D图像产生变形的效果 转换步骤 2.图元装配以及光栅化阶段 裁剪操作针对裁剪空间下内外模型的三角面而言不会直接丢弃整个物体 将裁剪空间下的模型的顶点坐标转换为标准化设备坐标 -11 模型的背面剔除 将标准化的设备坐标中的(x,y)转换为屏幕坐标(x,y) 以上为对顶点的操作 图元装配阶段将各个顶点连接形成封闭的三角图元 光栅化 3.片元Shader上色 1纹理技术 纹理采样 纹理过滤机制 Mipmap 纹理寻址模式 纹理压缩格式 纹理过滤机制 为了解决小图像映射到大块区域所产生的失真的情况如下图锯齿效果 纹理过滤机制的原理 根据周围四个纹素点进行插值计算(双线性插值)生成比较柔和的图像效果 Mipmap:生成多级渐远贴图 为了解决大图像映射到小块区域时引起图像失真的情况 可以将高级别模糊的图像应用到远处或者小块的区域上 2光照计算 光照组成 直接光照、间接光照 光照模型 基本的光照框架直接光漫反射直接光镜面反射间接光漫反射间接光镜面反射 4.输出合并阶段 通过片元Shader输出的数据例如片元颜色、深度值等进行相关的测试Alpha测试、模版测试、深度测试等 最后总结