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

還沒想好
還沒想好
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;
}

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

posted @ 2008-03-15 02:57 MDnullWHO 閱讀(988) | 評論 (0)編輯 收藏
最近在用VS 2005寫代碼,非常痛苦,VS2005是SB作的,邊寫邊罵,總是感覺VC8的界面是弱智設計的,浪費了太多了不必要的經歷
VC6 我只有一點不爽,沒有SOLUTIONG 的概念,幾個工程合在一起的時候太笨拙了
想不出來,界面咋變得那么SB了,保持VC6的風格不好么,不過MS攻關能力真是夠強大,那么多OPEN SOURCE放棄了VC6,開始只發布VC8的工程文件了
posted @ 2008-03-12 21:07 MDnullWHO 閱讀(430) | 評論 (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| 羞羞视频在线观看欧美| 精品成人乱色一区二区| 亚洲福利视频网| 欧美高清在线观看| 亚洲一级特黄| 先锋亚洲精品| 91久久久久久国产精品| 国产精品99久久久久久有的能看| 国产精品久久一级| 久久综合久色欧美综合狠狠| 欧美gay视频| 亚洲婷婷综合久久一本伊一区| 亚洲欧美另类在线观看| 一区二区三区在线免费观看| 亚洲乱亚洲高清| 国产亚洲综合精品| 亚洲国产精品一区二区三区| 国产精品麻豆欧美日韩ww| 久热精品在线视频| 欧美日韩国产bt| 久久久亚洲成人| 欧美日韩精品不卡| 欧美3dxxxxhd| 国产精品久久久久久久久久尿 | 在线播放国产一区中文字幕剧情欧美 | 国产欧美日韩亚洲| 亚洲国产精品电影在线观看| 国产精品一区二区三区乱码| 最新日韩欧美| 韩日在线一区| 亚洲一区二区免费| 亚洲毛片av| 久久久久国产精品www | 国产一区99| 亚洲一区二区成人| 亚洲美女毛片| 欧美ed2k| 欧美福利视频网站| 国产视频欧美视频| 亚洲一区二区黄色| 亚洲午夜av电影| 欧美电影免费观看| 蜜臀av国产精品久久久久| 国产日本欧洲亚洲| 亚洲一区二区av电影| 亚洲综合激情| 欧美日韩精品高清| 亚洲人妖在线| 亚洲激情偷拍| 免费的成人av| 牛夜精品久久久久久久99黑人| 国产啪精品视频| 亚洲性感美女99在线| 亚洲一区在线观看视频 | 性欧美xxxx大乳国产app| 亚洲欧美日韩国产综合| 欧美日韩三级在线| 亚洲精品自在久久| 亚洲国产婷婷| 亚洲精品国产视频| 免费亚洲一区二区| 欧美国产欧美亚洲国产日韩mv天天看完整| 国产亚洲精品高潮| 久久精品色图| 欧美福利视频在线| 亚洲人www| 欧美巨乳在线观看| 亚洲视频久久| 久久精品久久综合| 伊人久久亚洲热| 久久综合狠狠综合久久综合88| 免费一级欧美在线大片| 亚洲人成网站色ww在线| 欧美精品一区二区三区蜜臀| av成人免费观看| 欧美在线三区| 伊人色综合久久天天五月婷| 欧美不卡视频| 99综合精品| 久久精品久久综合| 亚洲国产一区二区视频| 欧美色另类天堂2015| 亚洲午夜精品网| 久久综合免费视频影院| 亚洲精品乱码久久久久久| 欧美日韩在线三区| 欧美一区=区| 亚洲欧洲一区二区三区| 香蕉成人啪国产精品视频综合网| 精品96久久久久久中文字幕无| 免费成人性网站| 亚洲在线观看视频网站| 欧美韩日亚洲| 欧美一区二区三区久久精品| 亚洲国产一区视频| 国产欧美日韩视频在线观看| 蜜桃久久精品乱码一区二区| 一区二区三区日韩欧美精品| 久久视频精品在线| 亚洲一区二区三区成人在线视频精品| 国产亚洲精品久| 欧美日韩国产色站一区二区三区| 欧美一级片在线播放| 亚洲日本电影在线| 久久综合国产精品| 午夜精品福利一区二区蜜股av| 在线观看中文字幕亚洲| 国产精品久久久久久一区二区三区| 久久婷婷蜜乳一本欲蜜臀| 一本久久a久久免费精品不卡| 久久综合影音| 久久er精品视频| 中文av字幕一区| 亚洲人妖在线| 激情文学一区| 国产人成精品一区二区三| 欧美区视频在线观看| 狼人天天伊人久久| 久久国产毛片| 欧美亚洲一区在线| 亚洲在线播放电影| 亚洲在线黄色| 中日韩视频在线观看| 亚洲精品日韩综合观看成人91| 老司机精品视频网站| 久久久久久久综合日本| 亚洲欧美日韩一区二区在线| 亚洲天堂成人| 一区二区av| 一本色道久久综合狠狠躁篇的优点 | 久久亚洲欧美国产精品乐播| 欧美一区激情| 欧美在线不卡| 欧美在线影院在线视频| 午夜日韩在线| 久久国产66| 久久亚洲二区| 米奇777在线欧美播放| 免费看精品久久片| 欧美成ee人免费视频| 免费日韩av片| 欧美激情第3页| 欧美美女bbbb| 欧美系列电影免费观看| 国产精品一区二区男女羞羞无遮挡 | 久久美女性网| 美女日韩欧美| 欧美激情第一页xxx| 欧美日韩亚洲视频一区| 欧美图区在线视频| 国产精品视频观看| 国产真实乱子伦精品视频| 一区精品在线播放| 亚洲欧洲一级| 亚洲在线成人精品| 欧美在线日韩精品| 欧美国产91| 99热这里只有精品8| 午夜精品国产精品大乳美女| 久久久久久久久综合| 欧美激情精品久久久| 国产精品s色| 国一区二区在线观看| 亚洲美女av在线播放| 午夜激情久久久| 嫩草影视亚洲| 在线综合亚洲欧美在线视频| 香蕉久久国产| 欧美成人一区二区三区片免费| 欧美午夜女人视频在线| 黑人操亚洲美女惩罚| 99pao成人国产永久免费视频| 欧美亚洲综合网| 亚洲国产老妈| 午夜日本精品| 欧美日韩国产专区| 尤物网精品视频| 亚洲女同在线| 亚洲国产一区二区三区在线播| 一区二区三区日韩欧美| 美女脱光内衣内裤视频久久网站| 欧美午夜电影在线观看| 亚洲高清在线观看| 欧美一级理论片| 91久久久久久久久| 久久激情网站| 国产精品丝袜白浆摸在线| 亚洲人人精品| 久久亚洲午夜电影| 亚洲在线视频网站| 欧美日韩第一页| 最新成人av网站| 老**午夜毛片一区二区三区|