背面剔除(backface culling)

frontface:按照顶点定义的先后顺序,呈顺时针排列的顶点构成的三角形是frontface

backface:按照顶点定义的先后顺序,呈逆时针排列的顶点构成的三角形是frontface

通常backface都是不可见的,为了提高渲染速度,DX允许用户对backface进行剔除,有三种剔除方法

  • D3DCULL_NONE - 不进行任何剔除
  • D3DCULL_CW  - 按顺时针方向进行剔除
  • D3DCULL_CCW - 按逆时针方向进行剔除(这是DX的默认剔除方式
时间: 2024-12-10 07:07:30

背面剔除(backface culling)的相关文章

OPENGL——背面剔除

Opengl 表面剔除是提高 Opengl 程序渲染效率的一个有效途径. 我们知道,OpenGL 渲染的基本单位是一个个的三角形面片.无论多么复杂的3D 模 型都是由一个个基本的三角型的面片组成的. 既然是一个面片,那必然就有两个面,如果其中有一个面被称为正面,那相应的另一 面就被称为背面.同一时刻我们在看见某一面的同时,另外一面则必然是看不的. 在这里我们可以想象一个封闭的不透明的几何体,我们肉眼只能看到它的外面,而 它的内部我们是看不见的.但如果是从 OpenGL的角度来看,如果没有开启表面

GPU 图形绘制管线

参考自 <GPU 编程与CG 语言之阳春白雪下里巴人> 图形绘制管线描述 GPU 渲染流程,即"给定视点.三维物体.光源.照明模式和纹理等元素,如何绘制一幅二维图像". 在<实时计算机图形学>一书中,将图形绘制管线分为三个主要阶段:应用 程序阶段.几何阶段.光栅阶段. 应用程序阶段,使用高级编程语言(C.C++.JAVA 等)进行开发,主要和 CPU.内存打交道,诸如碰撞检测.场景图建立.空间八叉树更新.视锥裁剪等 经典算法都在此阶段执行.在该阶段的末端,几何体

{Horizon Culling} 地平线剔除

From : http://cesiumjs.org/2013/04/25/Horizon-culling/ 在虚拟地球(如, Cesium)的开发过程中, 我们需要能够快速确定场景中的对象, 如地形瓦片(terrain tiles), 卫星(satellites), 建筑物(buildings), 交通工具(vehicles)等, 何时是不可见的.因为这些对象不可见, 所以也就没有必要被渲染.我们当然需要进行视域(view-frustum)的剔除.但是, 地平线剔除(horizon culli

【浅墨Unity3D Shader编程】之四 热带雨林篇: 剔除、深度测试、Alpha测试以及基本雾效合辑

本系列文章由@浅墨_毛星云 出品,转载请注明出处.   文章链接:http://hpw123.net/a/C__/kongzhitaichengxu/2014/1222/163.html 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 邮箱: [email protected] QQ交流群:330595914 更多文章尽在:http://www.hpw123.net 本文介绍了Unity中Shader书写中会用到的剔除.深度测试.Alpha测试以及基

剔除算法总结

剔除算法汇总: (1)距离剔除:物体与相机的最大或最小距离,可能最大距离还要加上fadeDistance,来判断物体是否被剔除.距离剔除原理简单,效率高,cpu端运行.ue4的实现在FScene的ComputeViewVisibility函数调用的FrustumCUll函数.ue4可以用culling volume,根据物体的体积设置剔除距离,这个剔除volume可以嵌套. (2)视锥体剔除:应用程序阶段,判断是否在视锥体内,将视锥体外的物体剔除.用物体的包围盒和fov.近裁剪面.远裁剪面的距离

Culling

hidden surface determination viewing frustum culling backface culling contribution culling occlusion culling/(z culling)

View Frustum Culling

作者:i_dovelemon 来源:CSDN 日期:2014 / 10 / 28 主题:View Frustum, Culling 引言 在前面的一篇文章获取View Frustum的6个面中讲述了如何根据View-Proj矩阵来获取View Frustum在世界坐标系中的6个平面.研究过场景管理的同学就会知道,在将图元数据传入到流水线之前,我们需要对数据进行组织.而场景管理通常就是进行这样的工作,通过场景管理,我们剔除(Culling)那些不在View Frustum中的物体,也就是在显示器中

Culling &amp; Depth Testing

[Culling & Depth Testing] Culling is an optimization that does not render polygons facing away from the viewer. All polygons have a front and a back side. Culling makes use of the fact that most objects are closed; if you have a cube, you will never

第三章:初始化 OpenGL 4.0

原文地址: http://www.rastertek.com/gl40tut03.html Tutorial 3: Initializing OpenGL 4.0 This tutorial will be the first real introduction to working with OpenGL 4.0. We will address three main things which are initializing OpenGL 4.0, shutting it down, and