青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

還沒想好
還沒想好
posts - 4,comments - 6,trackbacks - 0
http://www.gamedev.net/community/forums/topic.asp?topic_id=412504

No... In true, PVWp is wrong because P,V and W (as Direct3D defines) were created to satisfy the [row vector]*[matrix] multiplying order. In other words, the content of a transformation matrix could be different depending on the multiplying rule.

For example, consider a translation matrix:

For a [row vector]*[matrix] multiplying order, it is described as:
1 0 0 0
0 1 0 0
0 0 1 0
x y z 1

For a [matrix]*[column vector] multiplying order, it is described as:
1 0 0 x
0 1 0 y
0 0 1 z
0 0 0 1

 


I don't know the math details you're attempting to work out... I'm really bad at formal math theory. I do however know the D3D details of what's going on. Perhaps if I explain what D3D is doing, it'll help you.

Matrix in memory normally.
11 12 13 14
21 22 23 24
31 32 33 34
41 42 43 44

Normally a vector * matrix such a D3DXMatrixTransform will do:
outx = vec dot (11,21,31,41)
outy = vec dot (12,22,32,42)
outz = vec dot (13,23,33,43)
outw = vec dot (14,24,34,44)

When you give a matrix to a shader, it is transposed, which offers a small optimization for most matrices, which I'll explain in a bit. After it's transposed, it's stored in 4 constant registers (or 3... I'll get to that).

c0 = 11,21,31,41
c1 = 12,22,32,42
c2 = 13,23,33,43
c3 = 14,24,34,44

Next, in the shader performing a "mul(vec,mat)" will do this:
v0 = input register containing position
r0 = temp register
dp4 r0.x, v0, c0 // (r0.x = v0 dot c0)
dp4 r0.y, v0, c1
dp4 r0.z, v0, c2
dp4 r0.w, v0, c3

As you can see, this is the same as D3DXMatrixTransform. Why does D3D perform a hidden transpose? To save precious constant space. You can declare your matrix as float4x3 and the transformation becomes:
dp4 r0.x, v0, c0
dp4 r0.y, v0, c1
dp4 r0.z, v0, c2
mov r0.w, (some constant holding 1)

Any time the matrix isn't a projection, ie: for world, worldview, view, and bones especially, you can drop a constant without affecting the results, as it's always a (0,0,0,1) vector. Back in shader 1.1 with only 96 constants, it was a big deal. If you had 20 bone matrices, that would be either 80 or 60 constants. Personally, I'd take the 60, leaving more room for lights, fog, texture transforms, etc. It also takes time to upload all those useless (0,0,0,1) vectors to the video card, which is another small savings.

posted on 2010-07-20 11:25 MDnullWHO 閱讀(534) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品国精品久久99热一| 亚洲国产成人91精品| 日韩一级黄色av| 欧美日韩一区二区欧美激情| 亚洲另类自拍| 亚洲乱码日产精品bd| 欧美性事免费在线观看| 亚洲欧美清纯在线制服| 午夜精品久久久久| 极品少妇一区二区| 亚洲欧洲精品成人久久奇米网 | 小黄鸭精品密入口导航| 亚洲欧美日韩一区| 狠狠色香婷婷久久亚洲精品| 欧美国产一区二区在线观看 | 国产精品久久| 久久久蜜臀国产一区二区| 久久亚洲综合色| 亚洲砖区区免费| 久久精品最新地址| 99在线|亚洲一区二区| 亚洲一区二区精品视频| 伊人久久综合| 亚洲天堂偷拍| 亚洲福利一区| 午夜一区二区三视频在线观看| 韩国av一区二区三区四区| 亚洲第一视频| 国产亚洲女人久久久久毛片| 亚洲第一伊人| 国产综合香蕉五月婷在线| 欧美激情在线免费观看| 国产精品免费电影| 亚洲国产高清一区| 国产手机视频精品| 日韩亚洲欧美一区二区三区| 一区二区在线观看视频在线观看| 日韩视频一区二区三区| 曰本成人黄色| 久久福利资源站| 亚洲私人黄色宅男| 免费成人黄色| 免费观看不卡av| 国产亚洲在线| 午夜日韩激情| 午夜精品短视频| 欧美日韩妖精视频| 91久久午夜| 最近中文字幕mv在线一区二区三区四区| 亚洲手机视频| 亚洲无人区一区| 欧美激情综合网| 亚洲风情亚aⅴ在线发布| 韩国亚洲精品| 久久精品首页| 久久久久综合| 国产亚洲制服色| 欧美亚洲在线观看| 久久国产日本精品| 国产亚洲精品bv在线观看| 亚洲欧美卡通另类91av| 午夜免费电影一区在线观看| 欧美视频一区二区三区…| 亚洲精品一区二区三区樱花| 亚洲精品视频一区| 欧美激情一区二区三区四区| 亚洲激情二区| 国产精品99久久久久久久久久久久 | 亚洲校园激情| 欧美性大战久久久久久久| 亚洲精品国偷自产在线99热| 一本久久知道综合久久| 欧美日韩日日骚| 亚洲私人影吧| 欧美专区一区二区三区| 国产丝袜一区二区| 久久激情综合网| 蜜臀99久久精品久久久久久软件| 狠狠色狠狠色综合| 女仆av观看一区| 亚洲区国产区| 亚洲欧美激情四射在线日 | 久久久www免费人成黑人精品| 久久久国产视频91| 亚洲国产精品黑人久久久| 欧美成人激情在线| 亚洲一级免费视频| 久久久亚洲精品一区二区三区| 狠狠色伊人亚洲综合网站色| 欧美成人日韩| 中文日韩在线| 狼狼综合久久久久综合网| 亚洲精品久久| 国产精品乱码久久久久久| 久久精品导航| 亚洲欧洲在线观看| 性做久久久久久久免费看| 狠狠爱综合网| 欧美日韩综合| 久久一区二区三区四区| 日韩网站在线看片你懂的| 欧美在线综合视频| 日韩一区二区久久| 国产在线视频不卡二| 欧美日韩精品久久| 欧美有码在线观看视频| 亚洲黄色在线观看| 久久久美女艺术照精彩视频福利播放| 亚洲精品免费观看| 激情成人亚洲| 国产精品嫩草久久久久| 免播放器亚洲一区| 亚洲欧美日韩另类| 99re6热只有精品免费观看| 老鸭窝毛片一区二区三区| 亚洲一区二区视频在线观看| 精品不卡一区二区三区| 国产精品稀缺呦系列在线| 欧美韩日一区| 老牛嫩草一区二区三区日本 | 亚洲精品一二区| 久久综合五月| 欧美一区二区日韩| 亚洲午夜激情免费视频| 亚洲韩国日本中文字幕| 国产一区二区精品| 国产欧美日韩另类一区| 欧美日韩另类国产亚洲欧美一级| 久久频这里精品99香蕉| 欧美在线www| 午夜在线视频观看日韩17c| 一本久久a久久免费精品不卡 | 香蕉成人啪国产精品视频综合网| 亚洲人成毛片在线播放| 在线欧美三区| 亚洲成在线观看| 激情五月综合色婷婷一区二区| 国产精品九九久久久久久久| 欧美日韩综合视频| 欧美精品在线网站| 欧美精品一区二区久久婷婷| 欧美黑人一区二区三区| 欧美刺激性大交免费视频| 蜜臀久久久99精品久久久久久| 久久婷婷国产综合精品青草| 久久精品人人做人人爽| 久久久午夜电影| 久久一区精品| 欧美高清hd18日本| 欧美日本高清视频| 欧美日韩国产欧| 国产精品久久久久久久久久直播| 国产精品久久久一本精品| 国产精品伊人日日| 国产色综合久久| 怡红院精品视频在线观看极品| 影音先锋久久| 亚洲精品美女免费| 亚洲素人在线| 久久久久www| 欧美国产精品一区| 亚洲六月丁香色婷婷综合久久| 日韩午夜在线| 欧美一级视频免费在线观看| 久久视频在线看| 欧美另类变人与禽xxxxx| 国产精品久久久久久久久久直播| 国产亚洲精品自拍| 亚洲人成啪啪网站| 午夜宅男欧美| 欧美国产日韩一区二区三区| 日韩午夜激情av| 久久gogo国模啪啪人体图| 欧美va亚洲va日韩∨a综合色| 欧美偷拍一区二区| 一区国产精品| 亚洲一级免费视频| 久久中文久久字幕| 99视频一区二区| 欧美综合激情网| 欧美日韩国产一级| 国产亚洲欧美色| 在线一区二区日韩| 免费在线看成人av| 亚洲视频日本| 欧美77777| 国产一区二区三区四区在线观看| 91久久线看在观草草青青| 欧美一区二区视频97| 亚洲成色www8888| 欧美一区深夜视频| 国产精品xvideos88| 亚洲国产aⅴ天堂久久| 欧美一区二区三区四区高清| 亚洲国产欧美在线人成| 欧美在线中文字幕| 国产精品免费观看在线| 99riav国产精品| 欧美.www| 久久久久综合网|