深度测试
来源:互联网 发布:linux切换oracle实例 编辑:程序博客网 时间:2024/06/06 02:18
继上篇:深度缓存
其实在上篇中的新版优化,可知,如果没开启深度缓存,就不可能有深度测试的所以这在相关优化版来说,这篇的内容是不必要的,因为已实现在新优版中的写法会更合理一些,而且内存占用也会少很多,但保留这些久版内容,是未优化的,可读性,理解上会好很快,而且也比较有空间感
// @author Jave.Lin// @date 2016-04-14 23:38// 以下伪代码,纯属个人的一些片面理解写下的// 后面再不断学习现有的渲染架构,或是新的架构// 再逐个重构架构// 欢迎大家指点// 深度测试public class ZTest{ public function ZTest() { } // 测试指定的x,y坐标对应z深度要不要绘制 public function test(x:int, y:int, z:Number, zbuff:ZBuffer):Boolean { var a:int; for (var i:int = 0; i < zbuff.vec.length; ++i) { var lBuff:ZLayerBuffer = zbuff.vec[i]; if (lBuff.z > z) // 后面的深度不用比较 { break; } a += (lBuffer.read(x, y) & 0xff000000) >> 24; if (a >= 255) // 前面的所有深度最结果为完全不透明 { return false; } } return true; }}
0 0
- 深度测试
- 深度测试
- 深度测试
- 深度测试
- 深度测试
- openGL 深度格式 深度测试
- 关于深度、深度缓存和深度测试
- OpenGL中的深度、深度缓存、深度测试
- openGL 深度测试
- openGL 深度测试
- D3D深度测试
- 6、深度测试
- openGL 深度测试
- openGL 深度测试
- openGL 深度测试
- OpenGL: 深度测试
- opengl深度测试
- openGL 深度测试使用
- GPU 加速NLP任务(Theano+CUDA)
- 简单的leetcode题(四)
- 3.1.4 Memcached的简单使用过程
- LeetCode 110. Balanced Binary Tree
- 软件设计模式——你真的会写单例模式吗?
- 深度测试
- 求数组中最大的值
- 折腾记录——Ubuntu14.04系统安装NvidiaCUDA7.5并搭建
- C++ cin学习笔记
- LeetCode 285. Inorder Successor in BST
- JS中的call()和apply()方法
- 异常处理代码之简洁(一)
- SED1520 取字模软件
- Linux学习进阶路线图