在drawprimitive 之前 将 SetTransform(D3DTS_WORLD, &worldmat);设置成单位矩阵
模型一样能显示在正确的位置上
顶点也不是rhw
不知道 他那个位置是通过什么原理显示出来的
好像跟 worldmat 没什么关系
8 个解决方案
#1
3D程序在T&L的阶段最开始执行的就是坐标的转换。一般遵循会设置MVP矩阵对源顶点进行坐标转换。
M = Model
V = View
P = Projection
令D3D的世界矩阵为W,那么有
V = W^-1
设定W矩阵的意思是设置模型在世界坐标的位置。
M = Model
V = View
P = Projection
令D3D的世界矩阵为W,那么有
V = W^-1
设定W矩阵的意思是设置模型在世界坐标的位置。
#2
单位矩阵不就是没动吗。。。世界矩阵就是为了设置物体的平移、旋转、缩放,然后得到一个矩阵就是世界矩阵,把这个矩阵在和原位置点向量相乘,就得到了新的世界位置,如果是单位矩阵,做矩阵乘法就是没变嘛,也是对的啊,不知道你说的正确位置是什么意思。。。
真的真的建议看一下图形学里面的基本内容,或者这个网站教程的前几节,虽然他是讲OpenGL,但是之前的数学知识都是一样的,这些问题你就都懂了
http://www.opengl-tutorial.org/zh-hans/beginners-tutorials-zh/
真的真的建议看一下图形学里面的基本内容,或者这个网站教程的前几节,虽然他是讲OpenGL,但是之前的数学知识都是一样的,这些问题你就都懂了
http://www.opengl-tutorial.org/zh-hans/beginners-tutorials-zh/
#3
可我发现 某个游戏 我拦截了那个游戏的 drawindexprimitive
发现 在调用 drawindexprimitive 之前 我把 worldmat设置成单位矩阵
SetTransform(D3DTS_WORLD, &worldmat)
有些模型一样会显示在正确的位置上
有些模型 就不会正常显示了
不知道这个原因是什么
发现 在调用 drawindexprimitive 之前 我把 worldmat设置成单位矩阵
SetTransform(D3DTS_WORLD, &worldmat)
有些模型一样会显示在正确的位置上
有些模型 就不会正常显示了
不知道这个原因是什么
#4
我也看了那些显示正常的模型的顶点坐标 也都是几个单位的
所以我在猜想 会不会 有其他什么坐标的设置
所以我在猜想 会不会 有其他什么坐标的设置
#5
可能后面它又调用了平移等函数
#6
draw完了 再调?
#7
我在想 会不会他用了shader来渲染整个模型?
#8
都有可能。。。没看过代码。。。这个实在不知道。。。只能建议你你好好看看读一读
#1
3D程序在T&L的阶段最开始执行的就是坐标的转换。一般遵循会设置MVP矩阵对源顶点进行坐标转换。
M = Model
V = View
P = Projection
令D3D的世界矩阵为W,那么有
V = W^-1
设定W矩阵的意思是设置模型在世界坐标的位置。
M = Model
V = View
P = Projection
令D3D的世界矩阵为W,那么有
V = W^-1
设定W矩阵的意思是设置模型在世界坐标的位置。
#2
单位矩阵不就是没动吗。。。世界矩阵就是为了设置物体的平移、旋转、缩放,然后得到一个矩阵就是世界矩阵,把这个矩阵在和原位置点向量相乘,就得到了新的世界位置,如果是单位矩阵,做矩阵乘法就是没变嘛,也是对的啊,不知道你说的正确位置是什么意思。。。
真的真的建议看一下图形学里面的基本内容,或者这个网站教程的前几节,虽然他是讲OpenGL,但是之前的数学知识都是一样的,这些问题你就都懂了
http://www.opengl-tutorial.org/zh-hans/beginners-tutorials-zh/
真的真的建议看一下图形学里面的基本内容,或者这个网站教程的前几节,虽然他是讲OpenGL,但是之前的数学知识都是一样的,这些问题你就都懂了
http://www.opengl-tutorial.org/zh-hans/beginners-tutorials-zh/
#3
可我发现 某个游戏 我拦截了那个游戏的 drawindexprimitive
发现 在调用 drawindexprimitive 之前 我把 worldmat设置成单位矩阵
SetTransform(D3DTS_WORLD, &worldmat)
有些模型一样会显示在正确的位置上
有些模型 就不会正常显示了
不知道这个原因是什么
发现 在调用 drawindexprimitive 之前 我把 worldmat设置成单位矩阵
SetTransform(D3DTS_WORLD, &worldmat)
有些模型一样会显示在正确的位置上
有些模型 就不会正常显示了
不知道这个原因是什么
#4
我也看了那些显示正常的模型的顶点坐标 也都是几个单位的
所以我在猜想 会不会 有其他什么坐标的设置
所以我在猜想 会不会 有其他什么坐标的设置
#5
可能后面它又调用了平移等函数
#6
draw完了 再调?
#7
我在想 会不会他用了shader来渲染整个模型?
#8
都有可能。。。没看过代码。。。这个实在不知道。。。只能建议你你好好看看读一读