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

還沒想好
還沒想好
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 閱讀(526) 評論(0)  編輯 收藏 引用
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            美女网站久久| 欧美亚洲在线播放| 日韩视频一区二区| 久久亚洲欧洲| 欧美精品尤物在线| 欧美日韩国产在线观看| 欧美黄在线观看| 欧美精品免费视频| 国产精品高潮呻吟久久av黑人| 欧美日韩综合一区| 国产精品爽爽ⅴa在线观看| 国产美女一区二区| 黄色一区二区在线| 亚洲美女在线一区| 亚洲欧美乱综合| 欧美有码视频| 欧美激情亚洲自拍| 在线亚洲免费| 老司机成人在线视频| 欧美日韩国内| 国产亚洲一区二区三区在线观看| 亚洲第一二三四五区| 亚洲理论在线| 久久久999| 日韩亚洲一区在线播放| 亚洲男女自偷自拍图片另类| 久久综合一区二区三区| 欧美日韩国产系列| 在线成人激情视频| 西西人体一区二区| 欧美激情中文不卡| 欧美一区二区视频观看视频| 欧美国产亚洲另类动漫| 国产一区二区精品丝袜| 宅男噜噜噜66一区二区66| 欧美在线观看一二区| 最新日韩av| 欧美在线日韩在线| 国产精品久久二区二区| 日韩一二三区视频| 母乳一区在线观看| 欧美一区二区三区在线播放| 国产精品豆花视频| 洋洋av久久久久久久一区| 巨乳诱惑日韩免费av| 亚洲一级黄色| 国产精品久久看| 亚洲视频日本| 亚洲精品国偷自产在线99热| 久久久久99精品国产片| 国产乱码精品一区二区三区不卡| 99精品黄色片免费大全| 亚洲成色999久久网站| 欧美影视一区| 欧美日韩精品二区| 日韩视频中午一区| 亚洲电影免费在线| 六月天综合网| 亚洲第一成人在线| 免费国产自线拍一欧美视频| 亚洲你懂的在线视频| 国产精品久久久久国产精品日日| 久久综合网色—综合色88| 影音先锋亚洲视频| 欧美成人精品一区二区| 久久在精品线影院精品国产| 伊人影院久久| 欧美xxxx在线观看| 欧美成人中文| 一区二区三区四区五区精品视频| 亚洲国产婷婷综合在线精品| 欧美精品在线一区| 亚洲精品一二三区| 亚洲乱码国产乱码精品精| 欧美日韩精品综合| 亚洲直播在线一区| 亚洲欧美日韩成人| 国产综合精品| 欧美福利在线观看| 欧美精品一区二区蜜臀亚洲 | 久久精品一二三| 国产一区二区欧美日韩| 浪潮色综合久久天堂| 噜噜噜91成人网| 一区二区欧美激情| 午夜精品免费视频| 亚洲国产一区在线观看| aaa亚洲精品一二三区| 国产精品久在线观看| 欧美一区二区精美| 美女爽到呻吟久久久久| 亚洲一区二区三区久久| 亚洲欧美国产精品va在线观看| 狠狠色丁香婷婷综合| 亚洲欧洲日韩在线| 国产日韩精品一区二区浪潮av| 久久综合一区二区| 欧美日韩国产美| 欧美影院午夜播放| 欧美精品97| 久久久久久91香蕉国产| 欧美久久久久久| 久久疯狂做爰流白浆xx| 欧美jizzhd精品欧美喷水| 午夜精品影院| 欧美成人一区二区三区在线观看| 亚洲欧美国产精品va在线观看| 久久久亚洲午夜电影| 亚洲欧美日本国产专区一区| 免费看亚洲片| 久久精品噜噜噜成人av农村| 欧美日韩天天操| 欧美va亚洲va香蕉在线| 国产精品一级久久久| 亚洲国产毛片完整版| 国产一区二区精品丝袜| 亚洲网站在线看| 日韩亚洲不卡在线| 麻豆av一区二区三区久久| 久久国产一二区| 国产精品高清一区二区三区| 亚洲国产成人不卡| 国内成人在线| 欧美一区二区视频免费观看| 国产精品一卡二卡| 亚洲伦理在线| 亚洲乱码精品一二三四区日韩在线 | 欧美一区二区三区在线观看| 国产精品99久久久久久久久久久久| 久久全球大尺度高清视频| 亚洲欧美日韩区| 欧美视频第二页| 亚洲国产精品尤物yw在线观看| 在线精品在线| 久久久久久有精品国产| 久久久久综合| 黑人一区二区| 性亚洲最疯狂xxxx高清| 欧美一区=区| 国产精品一区二区在线| 亚洲欧美日韩一区二区在线| 香港久久久电影| 国产日韩综合一区二区性色av| 亚洲午夜电影网| 欧美在线亚洲在线| 国产婷婷色一区二区三区在线| 99国内精品久久| 亚洲永久字幕| 国产欧美一区二区视频| 欧美在线首页| 毛片一区二区三区| 亚洲日本激情| 欧美日韩福利视频| 亚洲一级免费视频| 久久av资源网| 黄色成人在线免费| 久久精品卡一| 亚洲第一在线视频| 久久久最新网址| 91久久精品日日躁夜夜躁欧美| 中国日韩欧美久久久久久久久| 国产精品久久久久久久电影| 午夜久久久久久久久久一区二区| 久久久国产一区二区| 亚洲电影欧美电影有声小说| 欧美成人精品在线观看| 在线一区二区三区四区五区| 久久精品麻豆| 亚洲日本理论电影| 国产欧美日韩一区二区三区| 久久午夜影视| 亚洲午夜一区| 欧美二区在线看| 午夜精品福利一区二区蜜股av| 精品不卡一区二区三区| 欧美日韩日日骚| 久久高清一区| 在线亚洲国产精品网站| 欧美成人一区二区在线| 亚洲中无吗在线| 亚洲国产精品传媒在线观看 | 亚洲精品一二区| 欧美一级大片在线免费观看| 亚洲国产欧美一区二区三区久久 | 午夜老司机精品| 亚洲精华国产欧美| 国产欧美日韩综合| 亚洲精品久久久久久久久| 久久成人免费| 在线视频日韩| 亚洲国产日韩一区二区| 国产一区白浆| 国产精品sss| 欧美高清视频一二三区| 欧美一区二区三区喷汁尤物| 亚洲精品一级| 欧美激情精品久久久久久大尺度 | 一本色道**综合亚洲精品蜜桃冫| 国产一区二区在线观看免费播放| 欧美精品在线极品|