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

還沒想好
還沒想好
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 @ 2010-07-20 11:25 MDnullWHO 閱讀(536) | 評論 (0)編輯 收藏
1): #define YY_NO_UNISTD_H
2): http://stackoverflow.com/questions/2793413/unistd-h-related-problem-when-compiling-bison-flex-program-under-vc

isatty is used by the lexer to determine if the input stream is a terminal or a pipe/file. The lexer uses this information to change its caching behavior (the lexer reads large chunks of the input when it is not a terminal). If you know that your program will never be used in an interactive kind, you can add %option never-interactive to you lexer. When the program is run with user input, use %option interactive. When both uses are desired, you can either generate an interactive lexer, which gives a performance loss when used in batch mode, or provide your own isatty function.

flex.exe --never-interactive
posted @ 2010-07-05 10:23 MDnullWHO 閱讀(298) | 評論 (0)編輯 收藏
記錄從VC6 到 VC8遇到的問題和解決辦法
1) msvcr80d.dll 找不到
 1)) manifest WIN32 set Yes, 2)) ignore msvcrt.lib
 /*
 

Hi there,

I read every post in this thread without any help in my case.

The problem turned out: The DEBUG version was trying to link with BOTH msvcr80.dll and msvcr80d.dll.

Check if this is the case for you using the "dependency walker" on your executable. If these two are both loaded, then you got the same problem as I did.

The solution is to set "Properties->Linker->Input->Ignore Specific library" to "msvcrt.lib".

 

More details below:

I was compiling and running a program that uses opencv library. One of the libraries in opencv (highgui to be exact) was linking with non-debug versions of some graphics libraries even in its debug version. Apparently this was OK before. 

This resulted in my debug version program linking with both msvcr80.dll and msvcr80d.dll. It appears this is a problem since the manifest only mentions one of these libraries and the other one (msvcr80.dll) appears not to be found causing the error mentioned in this thread. Why no-one in this thread mentioned that this could be the case is beyond me. I found out about this using "dependency walker" on the .exe that I compile and/or the highgui100d.dll that I load from the library.

That is the reason the complaint is about msvcr80.dll and not msvcr80d.dll in VS8!!!

The fix is to re-compile highgui100d.dll (debug version) with Properties->Linker->Input->Ignore Specific library set to singly "msvcrt.dll".

Just wanted to add this so other people do not waste time as I did...

Hakan

*/

2) MFC 
 MFC 從VC6到V8變動很大,
// VC8
LRESULT CDialogBar::HandleInitDialog(WPARAM, LPARAM)
{
 Default();  // allow default to initialize first (common dialogs/etc)

 // create OLE controls
 COccManager* pOccManager = afxOccManager;
 if ((pOccManager != NULL) && (m_pOccDialogInfo != NULL))
 {
  if (!pOccManager->CreateDlgControls(this, m_lpszTemplateName,
   m_pOccDialogInfo))
  {
   TRACE(traceAppMsg, 0, "Warning: CreateDlgControls failed during dialog bar init.\n");
   return FALSE;
  }
 }

 return FALSE;
}

//VC6
LRESULT CDialogBar::HandleInitDialog(WPARAM, LPARAM)
{
 Default();  // allow default to initialize first (common dialogs/etc)

 // create OLE controls
 COccManager* pOccManager = afxOccManager;
 if ((pOccManager != NULL) && (m_pOccDialogInfo != NULL))
 {
  if (!pOccManager->CreateDlgControls(this, m_lpszTemplateName,
   m_pOccDialogInfo))
  {
   TRACE0("Warning: CreateDlgControls failed during dialog bar init.\n");
   return FALSE;
  }
 }

 return TRUE;
}

竟然有這么大的區別,同時看不懂VC8為什么要那么作

posted @ 2008-03-15 02:57 MDnullWHO 閱讀(997) | 評論 (0)編輯 收藏
最近在用VS 2005寫代碼,非常痛苦,VS2005是SB作的,邊寫邊罵,總是感覺VC8的界面是弱智設計的,浪費了太多了不必要的經歷
VC6 我只有一點不爽,沒有SOLUTIONG 的概念,幾個工程合在一起的時候太笨拙了
想不出來,界面咋變得那么SB了,保持VC6的風格不好么,不過MS攻關能力真是夠強大,那么多OPEN SOURCE放棄了VC6,開始只發布VC8的工程文件了
posted @ 2008-03-12 21:07 MDnullWHO 閱讀(441) | 評論 (6)編輯 收藏
僅列出標題  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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精品国自产| 在线不卡免费欧美| 在线亚洲国产精品网站| 亚洲一区免费网站| 国产精品少妇自拍| 久久精品国产欧美激情| 欧美成人免费网| 最近中文字幕日韩精品 | 亚洲国产精品成人| 欧美日韩国产片| 亚洲一区二区三区中文字幕在线| 久久国产手机看片| 亚洲高清色综合| 欧美三级资源在线| 欧美伊人精品成人久久综合97| 免费日韩av| 亚洲视频一二三| 激情成人av| 欧美激情一区在线| 亚洲欧美怡红院| 欧美黄色一级视频| 先锋亚洲精品| 亚洲日韩欧美视频| 国产欧美日韩视频在线观看| 麻豆久久婷婷| 亚洲一区在线播放| 欧美激情小视频| 久久成人精品视频| 亚洲乱码国产乱码精品精可以看| 国产精品美女视频网站| 久久综合伊人77777麻豆| 亚洲色图综合久久| 欧美国产日本韩| 欧美在线视频全部完| 99国产精品99久久久久久| 国产欧美欧洲在线观看| 欧美精品一卡| 久久久久久一区二区三区| 亚洲一本大道在线| 亚洲国产三级网| 久久免费视频在线| 亚洲亚洲精品三区日韩精品在线视频 | 久热精品视频在线| 亚洲欧美国内爽妇网| 亚洲狠狠丁香婷婷综合久久久| 国产精品美女久久久久久久| 女仆av观看一区| 久久久久久自在自线| 亚洲欧美国产制服动漫| 日韩午夜中文字幕| 亚洲第一网站| 麻豆免费精品视频| 久久亚洲二区| 久久久999精品免费| 亚洲综合日韩在线| 亚洲午夜精品福利| 亚洲麻豆国产自偷在线| 亚洲第一区在线| 极品尤物一区二区三区| 国产三级精品在线不卡| 国产精品久久久亚洲一区| 欧美美女喷水视频| 欧美精品日韩一区| 欧美激情a∨在线视频播放| 快播亚洲色图| 免费观看在线综合| 鲁大师成人一区二区三区| 久久久综合视频| 久久久久久久999精品视频| 欧美一区二区免费| 久久国产精品亚洲77777| 午夜在线精品偷拍| 性伦欧美刺激片在线观看| 性欧美xxxx大乳国产app| 午夜激情综合网| 午夜在线成人av| 欧美在线影院| 久久免费视频在线观看| 久久精品国产99国产精品| 久久国产精品网站| 久久综合伊人77777蜜臀| 欧美成人免费一级人片100| 欧美88av| 欧美日韩一区二区三区高清| 欧美亚日韩国产aⅴ精品中极品| 欧美日韩一区二区在线观看视频| 欧美性视频网站| 国产欧美三级| 亚洲电影免费观看高清| 亚洲人成精品久久久久| 亚洲深夜影院| 久久精品夜色噜噜亚洲aⅴ| 免费视频一区二区三区在线观看| 欧美激情一区二区在线 | 亚洲视频免费在线观看| 亚洲欧美国产视频| 久久久欧美精品sm网站| 欧美激情精品久久久久久变态| 欧美三级特黄| 国产一区二区三区高清| 亚洲国产精品悠悠久久琪琪| 日韩亚洲欧美成人一区| 亚洲免费综合| 久久最新视频| 99热在这里有精品免费| 亚洲欧美日韩国产一区二区三区 | 亚洲人成网站精品片在线观看| 99爱精品视频| 久久久999| 亚洲青色在线| 亚洲欧美激情一区二区| 嫩草影视亚洲| 国产精品视频一区二区高潮| 亚洲电影视频在线| 亚洲欧美成人一区二区三区| 欧美成人精品激情在线观看| 一道本一区二区| 久久色在线观看| 国产精品日本| 亚洲精品久久久久久久久久久久久 | 亚洲午夜一级| 欧美电影在线播放| 亚洲综合色在线| 欧美精品在线观看播放| 国产亚洲一区二区精品| 一本色道久久综合亚洲精品不卡| 久久久久九九视频| 一本综合久久| 欧美国产精品人人做人人爱| 国产亚洲午夜| 亚洲一级在线观看| 亚洲国产精品黑人久久久| 亚洲欧美国产不卡| 欧美日韩1080p| 亚洲激情校园春色| 久久久精品免费视频| 一本一道久久综合狠狠老精东影业 | 欧美在线观看你懂的| 国产精品久久久久久户外露出| 亚洲黄色一区| 久久亚洲影音av资源网| 亚洲一线二线三线久久久| 欧美日韩国产一区二区三区地区| 亚洲第一精品夜夜躁人人爽| 久久精品视频亚洲| 亚洲欧美日韩一区二区三区在线 | 亚洲激情图片小说视频| 老牛国产精品一区的观看方式| 亚洲免费网站| 国产精品久久久久aaaa九色| 日韩一级精品| 最新日韩欧美| 欧美区日韩区| 日韩一级大片在线| 亚洲激情中文1区| 欧美激情久久久久| 亚洲精品日韩精品| 亚洲高清免费| 欧美激情一区三区| 一区二区日韩精品| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美一区网站| 性欧美video另类hd性玩具| 国产九色精品成人porny| 欧美一级大片在线观看| 欧美亚洲三级| 黄色在线成人| 免费在线亚洲| 欧美xxx在线观看| 亚洲开发第一视频在线播放| 亚洲国产人成综合网站| 欧美精品在线免费观看| 这里只有精品视频| 一区二区欧美精品| 国产精品丝袜91| 久久久久久综合网天天| 久久精彩视频| 亚洲国产成人精品视频| 亚洲激情成人| 欧美三级欧美一级| 欧美亚洲尤物久久| 久久久人人人| 99国产精品国产精品久久| 一区二区免费在线观看| 国产欧美日韩专区发布| 免费久久99精品国产自在现线| 欧美成人一区二区在线 | 久久久中精品2020中文| 另类专区欧美制服同性| 99综合视频| 亚洲影院色无极综合| 狠狠入ady亚洲精品经典电影| 欧美岛国在线观看| 欧美性事在线| 美玉足脚交一区二区三区图片| 欧美激情第1页| 久久国产视频网| 欧美精品v日韩精品v国产精品| 亚洲一区二区三区四区五区黄| 欧美在线亚洲综合一区|