Instancing with Hardware Skinning

九十九夜,失落的奥德赛,似乎都用到这些技术。以前一直认为instancing很容易地就带上了hardware skining的,认真看了以后发觉不是这么回事。

不过,在sm 3.0上如果vertex texture fetch代价还是很大的情况下,很难将bone matrix编码在fp texture中,更何况每帧更新texture还很成问题。

所以想想在vs_2_0 的256 constant register配置下,bone matrix压缩为2个float4——translation和rotation,matrix到shader中再展开,这样20根骨骼的一个instance data只需要2×20=40个constant register,这样256个register中可以容纳6个instance data。如果同屏2000个人的话,勉强333次draw call可以对付对付……
posted @ 2007-05-08 15:51 eygneph 阅读(105) 评论(2)  编辑 收藏 网摘

  回复  引用    
#1楼 2007-11-19 17:13 | tearshark [未注册用户]
这种情况的话,干嘛不使用CPU来计算Skin,然后使用硬件的instancing——不要以为CPU计算就慢得不行了,GPU大约也就比CPU快几倍,10倍不到而已。
  回复  引用    
#2楼 2007-11-23 11:44 | eygneph1 [未注册用户]
考虑到适宜的架构中进行流水线的向量计算,以及driver和DMA等开销,你是否觉得CPU还合适?

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》



相关文章:

相关链接: