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

還沒想好
還沒想好
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>
            日韩一区二区久久| 中文久久乱码一区二区| 久久精品视频免费播放| 国内精品嫩模av私拍在线观看| 激情五月婷婷综合| 欧美成人免费网站| 久久av在线看| 在线播放中文字幕一区| 欧美高清在线精品一区| 欧美人交a欧美精品| 亚洲男人第一av网站| 欧美一区二区三区免费观看视频| 在线不卡免费欧美| 亚洲欧洲中文日韩久久av乱码| 欧美日韩成人一区| 欧美中文字幕第一页| 久久精品99久久香蕉国产色戒| 亚洲国产高清在线观看视频| 91久久综合亚洲鲁鲁五月天| 欧美日韩综合视频网址| 久久精品在这里| 蜜臀av性久久久久蜜臀aⅴ| 亚洲精品三级| 亚洲视频一区二区| 一区二区在线不卡| 亚洲午夜久久久久久久久电影网| 影音欧美亚洲| 亚洲主播在线播放| 99精品热视频只有精品10| 午夜精品一区二区三区在线| 在线观看国产成人av片| 亚洲特黄一级片| 激情国产一区| 亚洲小视频在线观看| 亚洲日本中文字幕| 先锋亚洲精品| 亚洲影视在线播放| 亚洲视频观看| 久久全国免费视频| 久久精品99无色码中文字幕| 欧美黑人在线观看| 欧美va天堂| 国内久久婷婷综合| 亚洲婷婷在线| 亚洲一二区在线| 欧美激情第4页| 欧美va亚洲va香蕉在线| 国产区在线观看成人精品| 日韩一级精品| 一区二区三区国产精华| 欧美成人精品在线| 欧美国产另类| 亚洲第一二三四五区| 欧美在线啊v| 欧美一区1区三区3区公司| 欧美日韩一区在线播放| 亚洲人成在线观看一区二区| 亚洲黄色av| 久久午夜色播影院免费高清| 久久中文字幕一区| 好看的日韩av电影| 久久久五月婷婷| 久久夜色精品一区| 激情懂色av一区av二区av| 久久精品国产999大香线蕉| 午夜精品999| 国产精品国产三级国产| 亚洲制服少妇| 久久久久一区二区三区| 精品999久久久| 久久免费的精品国产v∧| 免费观看亚洲视频大全| 亚洲黄一区二区三区| 欧美a级大片| 亚洲最新视频在线播放| 午夜日韩电影| 狠狠色伊人亚洲综合网站色| 久久综合久久久| 91久久精品国产91久久| 亚洲午夜av在线| 国产精品欧美在线| 久久国产色av| 欧美激情一区三区| 亚洲午夜av在线| 国产欧美视频在线观看| 久久久精品tv| 亚洲精品视频免费| 久久国产精品毛片| 亚洲高清久久网| 欧美精品一区二区三区蜜臀 | 国产精品国产三级国产a| 亚洲视频一二三| 久久精品视频在线| 亚洲日本久久| 国产视频在线观看一区二区三区| 久久久一区二区三区| 99爱精品视频| 另类av一区二区| 亚洲在线一区二区| 亚洲电影视频在线| 国产精品日韩在线| 欧美高清视频一区二区| 亚洲系列中文字幕| 亚洲国产成人久久综合| 欧美一级在线亚洲天堂| 亚洲国产一区二区三区青草影视 | 免费欧美网站| 午夜国产不卡在线观看视频| 亚洲第一福利在线观看| 国产精品国产三级国产普通话99 | 极品少妇一区二区三区精品视频| 浪潮色综合久久天堂| 99伊人成综合| 欧美国产一区视频在线观看| 欧美亚洲免费高清在线观看| 99视频精品全部免费在线| 国产深夜精品| 国产精品免费在线| 欧美黄色日本| 久久一区二区三区av| 亚洲欧美精品suv| 亚洲欧洲综合另类在线| 麻豆av一区二区三区久久| 亚洲欧美bt| 99精品久久久| 亚洲黄色影院| 国产综合久久久久久| 国产欧美日韩另类一区| 欧美日韩免费一区二区三区| 欧美电影免费观看高清完整版| 久久精品夜色噜噜亚洲aⅴ| 亚洲欧美国产高清| 亚洲综合精品四区| 亚洲一区日韩在线| 一区二区三区高清在线观看| 日韩系列在线| 99精品欧美一区| 一本色道久久综合一区| 日韩视频国产视频| 亚洲免费av电影| 一本色道综合亚洲| 亚洲视频视频在线| 亚洲专区在线| 欧美在线视频二区| 久久久久九九九九| 久久午夜色播影院免费高清| 免费观看亚洲视频大全| 欧美~级网站不卡| 欧美日韩成人精品| 国产精品第一区| 国产日韩一区欧美| 黄色国产精品| 日韩亚洲综合在线| 亚洲视频在线二区| 欧美一区二区三区免费视频| 久久激情网站| 欧美电影电视剧在线观看| 亚洲高清不卡| 亚洲天堂免费观看| 欧美一区二区三区日韩视频| 久久久国产一区二区三区| 美腿丝袜亚洲色图| 欧美日一区二区三区在线观看国产免| 国产精品户外野外| 国产一区二区三区日韩欧美| 亚洲国产激情| 亚洲与欧洲av电影| 久久精品国产99精品国产亚洲性色| 老司机精品视频一区二区三区| 欧美黄色精品| 亚洲午夜羞羞片| 免费91麻豆精品国产自产在线观看| 欧美区日韩区| 韩国美女久久| 中文欧美在线视频| 久久久精品一区| 99国产精品久久久久久久成人热 | 欧美福利电影在线观看| 一区二区三区黄色| 久久九九精品99国产精品| 久久久久久网址| 亚洲精品123区| 欧美在线高清视频| 欧美精品国产一区二区| 国产日本欧美一区二区| 日韩午夜精品视频| 久久香蕉国产线看观看av| 99热这里只有精品8| 麻豆av一区二区三区久久| 国产精品亚洲一区| 一本色道久久综合亚洲精品高清 | 欧美成人69| 午夜电影亚洲| 欧美日韩精品欧美日韩精品一| 韩日精品视频一区| 亚洲女人天堂成人av在线| 亚洲国产精品123| 久久精品在线观看| 国产精品有限公司| 亚洲制服欧美中文字幕中文字幕|