Real-Time Rendering读书辩疑琐记
At Page 707,5th paragrah.it write:If a normal vector is stored as three 32-bit floats,it has enough accuracy to point from Earth to a rock on Mars with sub-centimeter precision.
I think the float vector can represent the distance from EartMY543 h to Mars,but it can not in sub-centimeter precision.
Eric Hanies给我的回复:
We're quoting from this work:
[1207] Sowizral, Henry, Kevin Rushforth, and Michael Deering, The Java 3D API Specification, Addison Wesley, 1997.
This is online here:
B.8
Normal Representation and Quantization
Probably the most innovative concept in compressed geometry is the method of compressing surface normals. Traditionally, 96-bit normals (three 32-bit IEEE floating-point numbers) are used in calculations to determine 8-bit color intensities. Theoretically, 96 bits of information could be used to represent 296 different normals, spread evenly over the surface of a unit sphere. This is a normal every 2-46 radians in any direction. Such angles are so exact that spreading out angles evenly in every direction from earth, you could point out any rock on Mars with subcentimeter accuracy.
There are typos on this page, it should say "2^96", not "296", and "2^(-46)", not "2-46". See the original paper http://michaelfrankdeering.com/Projects/HardWare/CompressedGeometry/SigGeometryCompression.pdf for the proper passage.
Note that he is not specifying the distance to Mars, he is saying that you could point in a direction from the Earth to a rock on Mars with subcentimeter accuracy. If you can show that this is incorrect, let us know and also write Michael Deering and discuss it with him.
By the way, a good recent article about normal compression methods is http://jcgt.org/published/0003/02/01/
总结:原文的意思是说从地标发出的射线夹角,即使到达火星后,也能在火星表面形成不到半厘米的扩散。我一开始理解成以地心为坐标原点,建立笛卡尔坐标系,在火星表面按坐标指示石块位置了。
At Page 818,Equation 17.12,the last parenthesis didn't match the first brack.Did it have another mean or only a mistake?
总结:作者给我回复。这里应该是个右大括号。
At Page 826,line 1没理解这里使用纹理在CPU进行更准确的多边形碰撞测试是什么。
At Page 858,Programmable Culling Unit怎么解决了Z-culling被关闭的问题呢?难道作者的意思失火你遇到Z-culling被关闭的时候记住还有PCU可用?
At Page 860,在vertex grouper and tessellator里already-transformed的顶点,在哪被reused了啊?还有SM3.0是什么啊?shader model?Xbox360上的vectors of 64 vertices没太懂。
At Page 862,第二小节这个vertex and pixel是Sequencer发出的指令,从Memory取得的吧。
第三小节的64 entries是什么,16个core乘以4个clock cycle,那为什么要强调是4个clock cycle?
Triangle traversal到ALU之间是怎么连接的?居然一次可以发送包含64pixels的vector。
为什么要把顶点组成quad呢?为什么不是triangle呢?
At Page 863,64 entry vector长啥样?
At Page 866,最后一节,同属于一个quad的点怎么会属于同一个三角形呢?
pixels that are outside the triangle是什么样子?
At Page 868,7块SPE吧?
总结,有一块备用,所以是8块。
At Page 872,tile的重要性到底有多高?Mali200称为tiling architecture,而XBox和PS3呢?
Real-Time Rendering读书辩疑琐记的更多相关文章
- Anderson《空气动力学基础》5th读书笔记 第2记——流体静力学初步
与物体在水中受到水的浮力一样,空气中的物体也会受到空气的浮力,但由于这个浮力往往比较小,实际中的很多问题我们常常将它忽略,而对于像热气球这样的靠空气的浮力产生升力的飞行器来说,空气的浮力是不能忽略的. ...
- Anderson《空气动力学基础》5th读书笔记 第1记——流动相似性
在飞机真正上天之前,我们常常需要制作出缩小版的模型放在风洞中吹呀吹,尽可能地模拟真实飞行中的参数,这时我们就需要实现流动相似性,这便是本记要讲的. 文章目录 一.流动相似性的标准 二.流动相似性的应用 ...
- Anderson《空气动力学基础》5th读书笔记 第4记——黏性流动入门
目录 一.边界层的概念 二.边界层的产生原因 三.剪切力的公式 四.温度分布情况 五.雷诺数与层流.湍流 一.边界层的概念 我们先来介绍边界层的概念(边界层正是黏性流动的产物),边界层是紧挨物体的薄层 ...
- asp.net 琐记
Page的AutoEventWireup作用是是否引发PreInit Load PreRender Unload几个页面处理流程事件 和控件的事件处理函数无关
- lucene4入门(3)琐记
欢迎转载http://www.cnblogs.com/shizhongtao/p/3440486.html <--这个是lucene4.6的api下载地址,格式是chm的.需要的人可以下载htt ...
- Java琐记
svn项目倒入,所选的文件夹一定是src上面以及的:然后eclipse会自动创建一个项目,项目名称就是src上级文件夹的名称:然后会按照路径下的文档结构如导入到eclipse的结构中: 被标记为// ...
- C++关于变量初始化的琐记
#include <iostream> using namespace std; class Base{ virtual void func1() { cout<<" ...
- mysql SQL优化琐记之索引
equal最好了,其次in,最后是range != <> 这类非操作尽量不用,它会转换为range.>都是范围查询 复合索引有左匹配原则,(clo_a,clo_b)相当建立了两个 ...
- Anderson《空气动力学基础》5th读书笔记 第5记——推导二维机翼的空气动力学系数
机翼的受力分析图 我们知道,空气对一个物体产生的升力和阻力以及力矩源于作用在整个物体上的压力分布和剪切力分布,所以我们分析上图可知(取单位展长的机翼): 对于上表面: ...
随机推荐
- asp.net中Ajax控件的用途(二)
1.个人觉得对于新手最为实用的PopupControlExtender,弹出层载体,在实例中可以弹出登录框,百度的登陆页面基本都用的这种形式,可以把浮动的panel宽高都设置为100%,以屏蔽底层操作 ...
- SignalR入门之小试身手
建立好持久性连接类TestConnection之后,现在为我们的SignalR程序配置持久性连接类以及访问路径. 进入刚刚建立的Startup类,进入Configuration这个方法里来配置: us ...
- WPF的一些总是记不住的Tips
Margin(Left,Top,Right,Bottom); HorizontalAlignment(Height的Opposite,水平对齐方式):VerticalAlignment(Width的反 ...
- 解决之前上架的 App 在 iOS 9 会闪退问题 (更新:已有 Hotfix)
最新更新:(2015.10.02) 开发环境: Delphi 10 Seattle OS X El Capitan v10.11 需使用下列 HotfixID: 30398, PAServer Hot ...
- apache tiles 页面模板的使用
jar包maven <!-- Tiles 模板--> <dependency> <groupId>org.apache.tiles</groupId> ...
- jvm运行数据分布
本人看的深入理解jvm(该版本的java se7) java运行时数据区域 Java虚拟机在执行java程序时,把内存划分为几个不同的阶段,存在不同的存在时间.不同的用途 先上图 程序计数器:是jvm ...
- POJ 3276 Face The Right Way 反转
大致题意:有n头牛,有些牛朝正面,有些牛朝背面.现在你能一次性反转k头牛(区间[i,i+k-1]),求使所有的牛都朝前的最小的反转次数,以及此时最小的k值. 首先,区间反转的顺序对结果没有影响,并且, ...
- linux Centos 6.5 安装桌面环境GNOME
在某种场合之下,我们使用的Linux还是要选择安装桌面环境的,所以在这里介绍一下如何给没有安装桌面环境的系统安装桌面环境.以Centos 6.5 为例演示一下如何安装桌面环境. 工具/原料 Linux ...
- 对chain.doFilter(request,response)的理解
他的作用是将请求转发给过滤器链上下一个对象.这里的“下”指的是哪里 ? 指的是下一个filter,如果没有filter那就是你请求的资源. 一般filter都是一个链,web.xml 里面配置了几个就 ...
- ASP.NET根据URL生成网页缩略图示例程序(C#语言)
工作中可能马上要用到根据URL生成网页缩略图功能,提前做好准备. 在网上找了份源码,但是有错误:当前线程不在单线程单元中,因此无法实例化 ActiveX 控件“8856f961-340a-11d0-a ...
Normal Representation and Quantization