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

還沒想好
還沒想好
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 閱讀(526) | 評論 (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 閱讀(286) | 評論 (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;
}

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

posted @ 2008-03-15 02:57 MDnullWHO 閱讀(988) | 評論 (0)編輯 收藏
最近在用VS 2005寫代碼,非常痛苦,VS2005是SB作的,邊寫邊罵,總是感覺VC8的界面是弱智設(shè)計的,浪費了太多了不必要的經(jīng)歷
VC6 我只有一點不爽,沒有SOLUTIONG 的概念,幾個工程合在一起的時候太笨拙了
想不出來,界面咋變得那么SB了,保持VC6的風(fēng)格不好么,不過MS攻關(guān)能力真是夠強大,那么多OPEN SOURCE放棄了VC6,開始只發(fā)布VC8的工程文件了
posted @ 2008-03-12 21:07 MDnullWHO 閱讀(430) | 評論 (6)編輯 收藏
僅列出標(biāo)題  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲理论在线观看| 日韩午夜高潮| 久久久亚洲综合| 欧美亚洲一区在线| 伊人蜜桃色噜噜激情综合| 久久久久久自在自线| 久久久久久久精| 亚洲区在线播放| 一区二区三区国产| 国产一区二区三区在线观看网站 | 国产麻豆精品在线观看| 久久精品人人做人人爽| 久久福利精品| 一区二区欧美日韩视频| 亚洲永久精品大片| 1204国产成人精品视频| 亚洲美女在线国产| 韩国三级电影久久久久久| 亚洲大片在线| 国产精品私拍pans大尺度在线| 久久国产天堂福利天堂| 欧美大色视频| 久久9热精品视频| 欧美超级免费视 在线| 午夜亚洲视频| 免费在线亚洲| 久久精品人人做人人综合| 欧美国产一区视频在线观看| 性高湖久久久久久久久| 麻豆精品在线视频| 久久国产精品一区二区| 欧美激情影院| 女女同性精品视频| 国产女精品视频网站免费| 亚洲国内高清视频| 国产亚洲在线观看| 一区二区三区波多野结衣在线观看| 韩国一区二区在线观看| 在线午夜精品自拍| 99re视频这里只有精品| 久久久久久亚洲综合影院红桃| 亚洲一区日韩在线| 欧美精品在线极品| 欧美二区在线播放| 激情成人亚洲| 欧美在线观看日本一区| 亚洲欧美日韩在线播放| 欧美精品aa| 欧美黄色一区二区| 亚洲高清免费| 久久亚洲欧美国产精品乐播| 欧美一区国产二区| 国产精品美女久久| 亚洲视频在线观看网站| 亚洲天堂网站在线观看视频| 你懂的成人av| 亚洲高清久久久| 亚洲国产欧美不卡在线观看| 久久精品国产免费| 久久久久久免费| 国内精品久久久| 久久高清国产| 麻豆精品国产91久久久久久| 激情欧美一区二区三区| 久久久久久久久久看片| 久久综合狠狠| 亚洲区一区二区三区| 欧美大片在线看| 亚洲乱码国产乱码精品精98午夜| 日韩网站在线看片你懂的| 欧美日韩ab| 亚洲视频专区在线| 欧美中文在线观看国产| 国产亚洲视频在线观看| 久久久久久久久久久一区 | 亚洲欧洲视频在线| 中文av一区特黄| 国产精品久久久久影院亚瑟| 亚洲一区二区免费视频| 久久精品国产99国产精品澳门| 狠狠色丁香婷婷综合| 麻豆av福利av久久av| 亚洲日韩视频| 欧美亚洲视频在线观看| 国产亚洲成av人片在线观看桃| 久久成人综合视频| 亚洲国产精品久久久久秋霞不卡| av成人免费观看| 国产视频亚洲| 欧美a级大片| 亚洲一区免费| 欧美大片91| 亚洲一区二区三区视频| 国产伊人精品| 欧美日韩免费一区二区三区| 亚洲免费一级电影| 欧美电影打屁股sp| 午夜免费久久久久| 亚洲国产黄色| 国产老女人精品毛片久久| 久久婷婷久久| 亚洲一区在线看| 亚洲国产另类精品专区| 久久久99爱| 亚洲一区三区电影在线观看| 在线免费观看视频一区| 欧美日韩在线视频一区二区| 欧美一区三区三区高中清蜜桃| 91久久夜色精品国产九色| 久久国产精品久久国产精品| 亚洲免费观看| 亚洲成色999久久网站| 国产精品免费观看视频| 欧美精品激情在线| 久久婷婷丁香| 欧美在线1区| 亚洲天堂免费观看| 亚洲黄页视频免费观看| 美国十次了思思久久精品导航| 亚洲欧美日韩中文播放| 日韩亚洲欧美在线观看| 亚洲成人在线网| 国产亚洲欧美一区| 国产精品视频网址| 欧美深夜影院| 欧美日韩国产经典色站一区二区三区| 欧美中文在线视频| 香港成人在线视频| 亚洲天堂成人| 亚洲综合激情| 亚洲综合首页| 亚洲性视频网站| 亚洲色图在线视频| 99在线精品视频| 日韩亚洲视频在线| 日韩亚洲欧美一区二区三区| 亚洲日本va午夜在线影院| 欧美黄在线观看| 亚洲国产精彩中文乱码av在线播放| 久久久久9999亚洲精品| 久久久久综合| 玖玖视频精品| 欧美成人精品| 亚洲高清久久| 夜夜爽av福利精品导航 | 午夜在线视频观看日韩17c| 亚洲一区二区三区久久| 亚洲一区二区三区四区在线观看| 一区二区三区导航| 亚洲欧美乱综合| 欧美在线视频免费观看| 久久精品91久久香蕉加勒比| 久久精品亚洲一区二区三区浴池| 久久精品亚洲热| 欧美freesex8一10精品| 最新国产の精品合集bt伙计| 亚洲精品美女免费| 亚洲一区二区三区视频播放| 亚洲欧美日韩一区| 久久精品色图| 欧美激情一区二区三区在线 | 性一交一乱一区二区洋洋av| 性欧美1819性猛交| 鲁大师成人一区二区三区| 欧美jjzz| 国产精品一卡二| 影音先锋日韩资源| 中文在线不卡| 欧美在线免费| 亚洲国产精品一区在线观看不卡 | 亚洲一区二区三区中文字幕| 亚洲欧美国产一区二区三区| 久久久久高清| 欧美午夜宅男影院在线观看| 国产伦精品一区二区三区高清版| 伊人精品视频| 亚洲一区二区久久| 毛片av中文字幕一区二区| 日韩一区二区精品视频| 欧美在线视频免费观看| 欧美理论电影网| 狠狠色香婷婷久久亚洲精品| 亚洲精品一二区| 久久精品一区四区| 野花国产精品入口| 久久综合久色欧美综合狠狠| 欧美亚洲成人免费| 亚洲人成亚洲人成在线观看| 羞羞答答国产精品www一本| 欧美成人在线免费观看| 亚洲欧美成人一区二区三区| 欧美高清一区| 激情综合五月天| 羞羞漫画18久久大片| 亚洲精品一二| 美女图片一区二区| 激情久久久久久| 欧美影院在线| 亚洲深夜福利视频| 欧美日韩免费在线观看|