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

還沒想好
還沒想好
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 閱讀(534) | 評論 (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 閱讀(294) | 評論 (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 閱讀(994) | 評論 (0)編輯 收藏
最近在用VS 2005寫代碼,非常痛苦,VS2005是SB作的,邊寫邊罵,總是感覺VC8的界面是弱智設計的,浪費了太多了不必要的經歷
VC6 我只有一點不爽,沒有SOLUTIONG 的概念,幾個工程合在一起的時候太笨拙了
想不出來,界面咋變得那么SB了,保持VC6的風格不好么,不過MS攻關能力真是夠強大,那么多OPEN SOURCE放棄了VC6,開始只發布VC8的工程文件了
posted @ 2008-03-12 21:07 MDnullWHO 閱讀(437) | 評論 (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>
            欧美激情aⅴ一区二区三区| 欧美久久电影| 伊人激情综合| 欧美大片免费观看在线观看网站推荐| 久久男女视频| 一区二区电影免费在线观看| 一区二区三区精密机械公司| 国产精品美女诱惑| 久久久久久日产精品| 99re66热这里只有精品4| 亚洲二区视频在线| 欧美日韩国产不卡| 亚洲欧美日韩高清| 久久午夜精品一区二区| 亚洲最新视频在线播放| 亚洲图片激情小说| 在线欧美电影| 国产精品99久久久久久久vr| 国产真实精品久久二三区| 欧美刺激午夜性久久久久久久| 欧美精品91| 久久三级福利| 欧美日韩国产高清| 猫咪成人在线观看| 欧美午夜精品久久久久久孕妇| 久久久激情视频| 欧美视频一区二区三区在线观看 | 国产一区欧美日韩| 亚洲精品1234| 久久久一本精品99久久精品66| 国产日韩在线播放| 亚洲国产毛片完整版| 国产欧美日韩在线观看| 亚洲国产天堂久久综合| 国语对白精品一区二区| 亚洲精品综合精品自拍| 在线观看精品| 午夜精品免费视频| 亚洲综合电影| 欧美韩日一区二区三区| 久久一区中文字幕| 国产精品igao视频网网址不卡日韩 | 欧美另类videos死尸| 久久亚洲精品中文字幕冲田杏梨| 欧美日韩精品一区二区在线播放 | 99精品欧美一区二区三区 | 亚洲一区二区免费视频| 99这里只有精品| 免费欧美日韩| 欧美大片免费观看| 又紧又大又爽精品一区二区| 午夜一区二区三区不卡视频| 亚洲自拍偷拍色片视频| 欧美日韩另类在线| 日韩视频免费看| 日韩网站在线观看| 欧美激情精品久久久久久蜜臀 | 欧美在线播放一区二区| 欧美一区二区三区在| 国产精品一二三四区| 久久av最新网址| 国产精品亚洲产品| 亚洲综合色噜噜狠狠| 午夜精品久久久久影视 | 久久视频在线免费观看| 久久久久久综合| 国产主播精品在线| 久久精品视频导航| 欧美www视频在线观看| 一区精品久久| 蜜桃av噜噜一区二区三区| 欧美岛国激情| 一本一本久久a久久精品综合麻豆| 欧美精品不卡| 亚洲性线免费观看视频成熟| 午夜精品短视频| 黄色精品一区| 欧美成人69av| 一区二区欧美国产| 久久精品国产999大香线蕉| 国产一区二区三区在线观看视频 | 欧美在线观看你懂的| 美女黄色成人网| 日韩视频一区二区在线观看 | 久久九九精品99国产精品| 免费成人黄色| 一区二区三区色| 国产精品亚洲а∨天堂免在线| 欧美在线免费视频| 欧美成ee人免费视频| 一本在线高清不卡dvd| 国产精品伊人日日| 欧美成人精品h版在线观看| 一本综合久久| 女生裸体视频一区二区三区| 一本色道婷婷久久欧美| 国产欧美不卡| 欧美交受高潮1| 欧美一区深夜视频| 亚洲精品乱码久久久久久| 久久国产精品毛片| 99视频精品全部免费在线| 国产一区二区你懂的| 欧美女同在线视频| 欧美影院午夜播放| 一区二区日韩精品| 欧美成人激情在线| 欧美一区二区精品久久911| 亚洲激情视频在线观看| 国产欧美在线视频| 欧美日韩hd| 久热精品视频在线观看| 亚洲综合首页| 亚洲人成高清| 欧美激情视频一区二区三区在线播放| 午夜视频一区在线观看| 亚洲精选视频免费看| 狠狠入ady亚洲精品经典电影| 欧美小视频在线| 免费的成人av| 久久婷婷av| 欧美在线视频一区二区三区| 在线视频日韩| 亚洲区一区二区三区| 欧美激情一区二区三区在线视频观看| 久久精品在线视频| 欧美一区二区成人6969| 亚洲免费影视| 亚洲视频在线二区| 一区二区精品在线观看| 亚洲精品亚洲人成人网| 欧美日韩一二三四五区| 欧美1区视频| 久久综合久久久| 久久久久久一区二区三区| 欧美一区三区二区在线观看| 亚洲一区二区综合| 亚洲欧美日韩第一区| 午夜精品短视频| 香蕉成人久久| 久久精品国产亚洲一区二区三区| 午夜亚洲视频| 欧美怡红院视频| 久久精品亚洲一区二区| 久久精品国产在热久久| 久久男人av资源网站| 免费看的黄色欧美网站| 欧美成人中文字幕| 欧美日本一区二区高清播放视频| 欧美精品一卡| 国产精品成人v| 国产精品午夜春色av| 国产一区二区成人| 尤物视频一区二区| 日韩一区二区免费看| 亚洲午夜精品久久久久久app| 亚洲一区二区三区欧美| 欧美在线视频观看| 免费看成人av| 91久久在线观看| 亚洲综合日韩在线| 久久免费视频这里只有精品| 欧美激情一区| 国产精品久久久久久久午夜| 国产一区二区三区直播精品电影| 伊人成年综合电影网| 99视频超级精品| 欧美在线你懂的| 欧美电影在线免费观看网站| 99这里只有精品| 小黄鸭视频精品导航| 免费成人性网站| 国产精品蜜臀在线观看| 伊人久久久大香线蕉综合直播| 99riav1国产精品视频| 欧美在线三区| 亚洲人成小说网站色在线| 亚洲免费在线观看视频| 老司机免费视频久久| 国产精品日日摸夜夜添夜夜av| 一区二区视频欧美| 亚洲砖区区免费| 欧美激情精品久久久久久变态| 亚洲五月六月| 久热国产精品视频| 国产免费观看久久| 99精品久久| 免费影视亚洲| 亚洲免费视频网站| 欧美激情一区二区三区在线视频 | 国产噜噜噜噜噜久久久久久久久 | 亚洲美女毛片| 久久久久国产精品厨房| 一本色道久久综合狠狠躁篇的优点| 久久久久久久久久看片| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲人www| 免费观看成人鲁鲁鲁鲁鲁视频 | 美日韩精品免费| 午夜精品短视频|