关于骨骼动画和BUMP贴图的聊天记录
2010-01-08 22:23
357 查看
请问有没有朋友做过骨骼动画结合BUMP贴图的?
是不是我遥再顶点着色器中
对世界矩阵求逆矩阵
再对每个骨骼矩阵求逆矩阵
然后更具这些矩阵求出光源相对于对模型空间的位置
然后再转换导切线空间,
把光源转换导BUMP贴图空间的方向
然后把这个空间传送导像素着色器。
你看是不是要做这么多
自作聪明(517377672) 21:32:22
shader步骤:
1,求出mesh每个顶点世界坐标。
2,根据顶点世界坐标和纹理坐标求出纹理空间基在世界空间中的表示。
3,把光线变换到bump空间中
4,求光照
自作聪明(517377672) 21:34:15
1,求出mesh每个顶点世界坐标。
static mesh 和skeletal emsh就这步骤有区别
自作聪明(517377672) 21:34:24
其他的一样的
(249974072) 21:35:06
对于骨骼动画,计算出变换的顶点后和静态的没有区别了。。。
阿鲁锋(20024675) 21:35:13
“把光线变换到bump空间中”
这个如何变呢,是不是很复杂,要对每个骨骼做逆矩阵
如果在GPU中做骨骼变化稍微麻烦点,如果在CPU下就很简单了。和普通的静态模型没有什么趋避。。
自作聪明(517377672) 21:36:28
关键是求出bump空间的基
(249974072) 21:36:50
U,V,N就能确定他的旋转矩阵。。。
阿鲁锋(20024675) 21:36:05
“把光线变换到bump空间中”
那这部应该如何做
阿鲁锋(20024675) 21:38:17
U,V,N是要用原始模型的点来做,还是要用经过世界变换和骨骼混合后的点做呢?
自作聪明(517377672) 21:36:28
关键是求出bump空间的基
如果这个空间的基求出了,可以直接得出变换矩阵,然后光线乘以这个矩阵的梨
(249974072) 21:39:11
知道法线(n),切线(t),副法线(bn)的向量。。
将光线变换到这空间的旋转矩阵构造就是
t.x ,t.y, t.z
n.x, n.y, n.z
bn.x,bn.y, bn.z
(249974072) 21:39:18
希望我没说错。。
日期:2010-1-8
自作聪明(517377672) 21:39:25
阿鲁锋(20024675) 21:38:17
U,V,N是要用原始模型的点来做,还是要用经过世界变换和骨骼混合后的点做呢?
世界变换不会改变u,v,n的坐标
(249974072) 21:41:24
这里说的,U,V,N不是说纹理坐标,法线,而是他本地坐标空间的3个坐标轴的向量。。。
(249974072) 21:42:39
反下就是刚好知道本地坐标转到世界坐标的旋转操作。。具体参照大学图形学课程中。。。
(249974072) 21:43:06
U,V,N必须要单位化的,这点很重要~
(249974072) 21:43:38
如果研究过物理引擎的实现,你们将对这些东西非常熟悉。。。~
(249974072) 21:44:59
你们是做次时代游戏的???
阿鲁锋(20024675) 21:45:10
这个理论我不是很清楚,不过我可以参考书上的代码把U,V,N算出来。
现在我就是想知道,如果不用CPU混合骨骼,是不是能在顶点着色器中算出光线相对于贴图的正确的方向?
自作聪明(517377672) 21:46:02
能
(249974072) 21:47:12
那样将不可能。。。
因为顶点的相对位置会被修改,同事法线,副法线的计算需要在面中才能计算。。。
(249974072) 21:47:38
可以参照法线,副法线的计算过程就知道了。。。
阿鲁锋(20024675) 21:48:10
是不是如果要用BUMP贴图,就必须再CPU中混合骨骼
(249974072) 21:48:42
算了,等下吧,我思考清楚来,不想随便说出口误人误己~
自作聪明(517377672) 21:48:53
可以的啊
阿鲁锋(20024675) 21:49:46
如何可以呢,我现在想把光源转换导顶点的空间坐标都很困难
(249974072) 21:50:11
也可以,但是有点点问题,我在想。。。
我们可以进行混合的时候,也将预处理好的切线,副法线同顶点样进行混合处理,但是效果如何我就不太清楚了。。可以去尝试下。。
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
(249974072) 21:52:07
就是说blend的时候需要操作的有(vpos, normal, tangent, bnormal)~
(249974072) 21:52:47
没尝试过,效果估计让人担心。。。。
阿鲁锋
tangent, bnormal
是不是这两也要做骨骼混合
(249974072) 21:53:54
恩~
说实话,我感觉这些拿去blend有点让人觉得怪怪的。。~
自作聪明(517377672) 21:54:15
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
tangent, bnormal可以根据顶点坐标和纹理坐标计算出来
(249974072) 21:54:56
我现在的处理是在CPU下计算出静态的模型,然后重新计算normal,bn,t来,然后和静态模型一样渲染
是不是我遥再顶点着色器中
对世界矩阵求逆矩阵
再对每个骨骼矩阵求逆矩阵
然后更具这些矩阵求出光源相对于对模型空间的位置
然后再转换导切线空间,
把光源转换导BUMP贴图空间的方向
然后把这个空间传送导像素着色器。
你看是不是要做这么多
自作聪明(517377672) 21:32:22
shader步骤:
1,求出mesh每个顶点世界坐标。
2,根据顶点世界坐标和纹理坐标求出纹理空间基在世界空间中的表示。
3,把光线变换到bump空间中
4,求光照
自作聪明(517377672) 21:34:15
1,求出mesh每个顶点世界坐标。
static mesh 和skeletal emsh就这步骤有区别
自作聪明(517377672) 21:34:24
其他的一样的
(249974072) 21:35:06
对于骨骼动画,计算出变换的顶点后和静态的没有区别了。。。
阿鲁锋(20024675) 21:35:13
“把光线变换到bump空间中”
这个如何变呢,是不是很复杂,要对每个骨骼做逆矩阵
如果在GPU中做骨骼变化稍微麻烦点,如果在CPU下就很简单了。和普通的静态模型没有什么趋避。。
自作聪明(517377672) 21:36:28
关键是求出bump空间的基
(249974072) 21:36:50
U,V,N就能确定他的旋转矩阵。。。
阿鲁锋(20024675) 21:36:05
“把光线变换到bump空间中”
那这部应该如何做
阿鲁锋(20024675) 21:38:17
U,V,N是要用原始模型的点来做,还是要用经过世界变换和骨骼混合后的点做呢?
自作聪明(517377672) 21:36:28
关键是求出bump空间的基
如果这个空间的基求出了,可以直接得出变换矩阵,然后光线乘以这个矩阵的梨
(249974072) 21:39:11
知道法线(n),切线(t),副法线(bn)的向量。。
将光线变换到这空间的旋转矩阵构造就是
t.x ,t.y, t.z
n.x, n.y, n.z
bn.x,bn.y, bn.z
(249974072) 21:39:18
希望我没说错。。
日期:2010-1-8
自作聪明(517377672) 21:39:25
阿鲁锋(20024675) 21:38:17
U,V,N是要用原始模型的点来做,还是要用经过世界变换和骨骼混合后的点做呢?
世界变换不会改变u,v,n的坐标
(249974072) 21:41:24
这里说的,U,V,N不是说纹理坐标,法线,而是他本地坐标空间的3个坐标轴的向量。。。
(249974072) 21:42:39
反下就是刚好知道本地坐标转到世界坐标的旋转操作。。具体参照大学图形学课程中。。。
(249974072) 21:43:06
U,V,N必须要单位化的,这点很重要~
(249974072) 21:43:38
如果研究过物理引擎的实现,你们将对这些东西非常熟悉。。。~
(249974072) 21:44:59
你们是做次时代游戏的???
阿鲁锋(20024675) 21:45:10
这个理论我不是很清楚,不过我可以参考书上的代码把U,V,N算出来。
现在我就是想知道,如果不用CPU混合骨骼,是不是能在顶点着色器中算出光线相对于贴图的正确的方向?
自作聪明(517377672) 21:46:02
能
(249974072) 21:47:12
那样将不可能。。。
因为顶点的相对位置会被修改,同事法线,副法线的计算需要在面中才能计算。。。
(249974072) 21:47:38
可以参照法线,副法线的计算过程就知道了。。。
阿鲁锋(20024675) 21:48:10
是不是如果要用BUMP贴图,就必须再CPU中混合骨骼
(249974072) 21:48:42
算了,等下吧,我思考清楚来,不想随便说出口误人误己~
自作聪明(517377672) 21:48:53
可以的啊
阿鲁锋(20024675) 21:49:46
如何可以呢,我现在想把光源转换导顶点的空间坐标都很困难
(249974072) 21:50:11
也可以,但是有点点问题,我在想。。。
我们可以进行混合的时候,也将预处理好的切线,副法线同顶点样进行混合处理,但是效果如何我就不太清楚了。。可以去尝试下。。
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
(249974072) 21:52:07
就是说blend的时候需要操作的有(vpos, normal, tangent, bnormal)~
(249974072) 21:52:47
没尝试过,效果估计让人担心。。。。
阿鲁锋
tangent, bnormal
是不是这两也要做骨骼混合
(249974072) 21:53:54
恩~
说实话,我感觉这些拿去blend有点让人觉得怪怪的。。~
自作聪明(517377672) 21:54:15
阿鲁锋(20024675) 21:51:05
就是我现在不考虑BUMP贴图了
我想在着色器中计算光源 相对于 顶点在原始模型中的位置
tangent, bnormal可以根据顶点坐标和纹理坐标计算出来
(249974072) 21:54:56
我现在的处理是在CPU下计算出静态的模型,然后重新计算normal,bn,t来,然后和静态模型一样渲染
相关文章推荐
- 转载并记录一遍关于骨骼动画的cocos2d论坛帖子。
- 关于“读S计划”的聊天记录:统一理念,确定目前的工作
- 关于骨骼动画及微软示例Skinned Mesh的解析(一)
- 关于骨骼动画及微软示例Skinned Mesh的解析
- 关于骨骼动画及微软示例Skinned Mesh的解析
- 敏捷开发生态系统系列之五:关于敏捷生态系统的一次聊天记录(敏捷估算,同行压力,估算扑克)
- 记录 Spine骨骼动画导入unity 步骤[unity3d 4.6.6版本 2d动画]
- 关于Cocos Creator用js脚本代码播放骨骼动画的步骤和注意事项
- 关于用Spine制作骨骼动画的步骤
- 和陈正的msn聊天记录-关于搜索引擎
- 关于xmpp丢包的问题探讨聊天记录
- 关于骨骼动画及微软示例Skinned Mesh的解析
- 引擎设计跟踪(九.14.2) 更新记录和骨骼动画导出更新
- 关于聊天记录数据库表结构设计
- 敏捷开发生态系统系列之五:关于敏捷生态系统的一次聊天记录(敏捷估算,同行压力,估算扑克)
- 关于骨骼动画及微软示例Skinned Mesh的解析
- 关于聊天记录的管理与查询
- 关于 骨骼动画之理解蒙皮算法
- android中关于位移动画TranslateAnimation开始和结束时闪动问题的记录
- 分享ActionScript3骨骼动画和贴图整合支持Starling