Realtime Rendering 1.1

Realtime Rendering 1.1

1、A linear transform is one that preserves vector addition and scalar multiplication. Specifically,

  

24、Combining linear transforms and translations can be done using an affine transform.

  An affine transform is one that performs a linear transform and then a translation.

  The main characteristic of an affine matrix is that it preserves the parallelism of lines, but not necessarily lengths and angles.

  仿射变换保留了平行性,而没保留长度、角度特性。

25、All rotation matrices have a determinant of one and are orthogonal ,  the determinant of a rotation matrix is always one, since the matrix is orthogonal.

  旋转不会改变正交矩阵的三个正交基,所以旋转矩阵还是正交矩阵。

  

26、This order change can cause incorrect lighting and backface culling to occur. To detect whether a given matrix reflects in some manner, compute the determinant of the upper left 3 × 3 elements of the matrix. If the value is negative, the matrix is reflective.

27、H′ij(s, t) = Hik(s)Hjk(t)。 Finally, it should be noted that since the determinant of any shear matrix |H| = 1, this is a volume preserving transformation.

  

28、a transform, consisting of concatenations of only translations and rotations, is called a rigid-body transform and has the characteristic of preserving lengths, angles, and handedness.

  

  The inverse of X is computed as X−1 = (T(t)R)−1 = R−1T(t)−1 = RTT(−t).

29、the proper method transform normal is to use the transpose of the matrix’s adjoint.  The traditional answer for transforming the normal is that the transpose of the inverse is computed [1277]. This method normally works. The full inverse is not necessary, however, and occasionally cannot be created. The inverse is the adjoint divided by the original matrix’s determinant. If this determinant is zero, the matrix is singular, and the inverse does not exist.

    

30、旋转矩阵

  

  

  

31、We have already presented two decompositions, those of deriving the translation and rotation matrix for a rigid-body transformation (see Section 4.1.6) and deriving the Euler angles from an orthogonal matrix (Section 4.2.2).

  It is trivial to retrieve the translation matrix, as we simply need the elements in the last column of the 4×4 matrix.

  We can also determine if a reflection has occurred by checking whether the determinant of the matrix is negative.

32、绕任意轴旋转。

  

33、根据给定r,计算出basis:r,s,t。

  find the smallest component (in absolute value) of r, and set it to 0. Swap the two remaining components, and then negate the first9 of these.

  

  This matrix transforms the vector r into the x-axis (ex), s into the y-axis, and t into the z-axis.  the final transform for rotating α radians around the normalized vector r is then.

  

  

  Goldman公式:

  

34、 For every 3 × 3 rotation matrix,1 R, that rotates φ radians around any axis, the trace (see page 898 for a definition) is constant independent of the axis.

  

35、四元数的逆。

共轭复数有些有趣的性质:

  

  

  

  

  

  

36、单位四元数可以写成下面这样。

  

  

  

37、put the four coordinates of a point or vector p = (px py pz pw)T into the components of a quaternion ˆp, and assume that we have a unit quaternion ˆq = (sinφuq, cos φ).

  

  rotates ˆp (and thus the point p) around the axis uq by an angle 2φ. Note that since ˆq is a unit quaternion, ˆq−1 = ˆq∗. This rotation, which clearly can be used to rotate around any axis

  Given two unit quaternions, ˆq and ˆr, the concatenation of first applying ˆq and then ˆr to a quaternion, ˆp (which can be interpreted as a point p), is given by Equation 4.41:

  

38、A quaternion, ˆq, can be converted into a matrix Mq.

  

  Here, the scalar is s = 2/n(ˆq). For unit quaternions, this simplifies to:

  

  由 4.44 + 4.45 可以从M推导出四元数4.46:

  

  

  令  t = q2w −q2x −q2y −q2,可以得到避免除法的公式:

  

39、The algebraic form of Spherical linear interpolation:

  

  However, for software implementations, the following form, where slerp stands for spherical linear interpolation, is much more appropriate:

  

  

  

  The slerp function is perfectly suited for interpolating between two orientations and it behaves well (fixed axis, constant speed). This is not the case with when interpolating using several Euler angles.

40、 球面样条插值。Squad。 

  introduce quaternions ˆai and ˆai+1 between ˆqi and ˆqi+1.

  

41、After some algebraic and trigonometric simplification of Equation 4.43,the rotation matrix becomes [893]:

  

  In this equation, we have used the following intermediate calculations:

  

   As can be seen, all square roots and trigonometric functions have disappeared due to the simplifications, and so this is an efficient way to create the matrix.

42、Vertex Blending

  the entire mesh is often called a skin.

  p is the original vertex, and u(t) is the transformed vertex whose position depends on the time t. There are n bones influencing the position of p, which is expressed in world coordinates.  The matrix Mi transforms from the initial bone’s coordinate system to world coordinates. Typically a bone has its controlling joint at the origin of its coordinate system. The Bi(t) matrix is the ith bone’s world transform that changes with time to animate the object,

  

  the final location is interpolated from the set of computed points. The matrix Mi is not explicitly shown in some discussions of skinning, but rather is considered as being a part of Bi(t).

  the transformed point u will lie in the convex hull of the set of points Bi(t)M−1 i p, for all i = 0. . .n − 1 (fixed t).

43、Morphin(Vertex Morphing):混合顶点

  Morph targets:基Model + Diff。如下图:

  

  

  Skinning、Morph Target 一起使用可以达到非常好的效果。

  

  

44、透视投影中 z 值是非线性的。

  One effect of using a perspective transformation is that the computed depth value does not vary linearly with the input pz value. For example, if n′ = 10 and f′ = 110 (using the OpenGL terminology), when pz is 60 units down the negative z-axis (i.e., the halfway point) the normalized device coordinate depth value is 0.833, not 0.

  

  

  

  

原文地址:https://www.cnblogs.com/tekkaman/p/9251432.html

时间: 2024-10-04 10:49:23

Realtime Rendering 1.1的相关文章

【《Real-Time Rendering 3rd》 提炼总结】(一) 全书知识点总览

本文由@浅墨_毛星云 出品,转载请注明出处.   文章链接:http://blog.csdn.net/poem_qianmo/article/details/69849858 一.<Real-Time Rendering 3rd>其书 在实时渲染和计算机图形学领域,<Real-Time Rendering 3rd>这本书一直备受推崇.有人说,它实时渲染的圣经.也有人说,它是绝世武功的目录. 诚然,<Real-Time Rendering 3rd>这本书的世界观架构宏大,

[图形学] 《Real-Time Rendering》碰撞检测(一)

原文有35页,容我慢慢翻译,第一部分翻译了10页 reference:<Real-Time Rendering> 目录 17   前言 17.1 和射线的碰撞检测 17.2 使用BSP树的动态碰撞检测 17.3 一般层次的碰撞检测 17.3.1 分层的构建 17.3.2 不同层之间的碰撞检测 17.3.3 代价函数 17.4 OBB树 17.5 多重物体碰撞检测系统 17.5.1 广阶段的碰撞检测 17.5.2 总结 17.6 更多样的话题 17.6.1 及时碰撞检测 17.6.2 距离查询

【《Real-Time Rendering 3rd》 提炼总结】(二) 第二章 图形渲染管线 The Graphics Rendering Pipeline

本文由@浅墨_毛星云 出品,转载请注明出处.   文章链接:http://blog.csdn.net/poem_qianmo/article/details/70544201 这篇文章是解析计算机图形学界"九阴真经总纲"一般存在的<Real-Time Rendering 3rd>系列文章的第二篇.将带来RTR3第二章内容"Chapter 2 The Graphics Rendering Pipeline 图形渲染管线"的总结.概括与提炼. 文章分为全文内

Realtime Rendering 6

[Realtime Rendering 6] 1.Lighting computations occur in two phases: 1)light phase. used to compute the light’s direction vector l and irradiance contribution  E^L. 2)material phaes. In the material phase, the BRDF parameters and surface normal. The r

Shaders(读书笔记4 --- Real-Time rendering)

1. vertex,pixel以及geometry shaders共享一个programming model,即common-shader core,在GPU架构中的unified shader可以和这个core很好的契合. common-shader core是API,支持unified shader是GPU的特性. 2. shaders是用类C的语言如HLSL,Cg,GLSL等编写的,程序被编译为不依赖于机器的assembly language,即intermediate language(

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 Earth to Mars,b

读 Real-Time Rendering 收获

chapter 4. Transform p54 affine transform p57 all rotation matrices have a determinant of one and are orthogonal p59 scale,reflection matrix p62 Rigid-Body Transform

Graphics-Processing Architecture Based on Approximate Rendering

BACKGROUND The present invention generally relates to the processing of graphics data, and particularly relates to methods and apparatus for controlling approximation errors in the rendering of three-dimensional graphics data. State-of-the-art three-

Unity3D光照前置知识——Rendering Paths(渲染路径)及LightMode(光照模式)译解

简述 Unity supports different Rendering Paths. You should choose which one you use depending on your game content and target platform / hardware. Different rendering paths have different performance characteristics that mostly affect Lights and Shadows