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

還沒想好
還沒想好
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 閱讀(431) | 評論 (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>
            亚洲成色777777女色窝| 国产一区 二区 三区一级| 亚洲精品乱码久久久久久蜜桃91 | 免费在线观看精品| 久久精视频免费在线久久完整在线看| 午夜精品剧场| 久久久999国产| 免费在线欧美视频| 欧美精品国产一区| 欧美性大战久久久久| 国产精品久久久久久久久久久久| 国产精品久久激情| 精品9999| 亚洲一区二区三区中文字幕在线| 亚洲一区三区视频在线观看| 久久精品91久久香蕉加勒比| 欧美成人dvd在线视频| 亚洲每日在线| 欧美一区二区三区四区在线| 美女日韩在线中文字幕| 欧美揉bbbbb揉bbbbb| 国产日韩在线亚洲字幕中文| 亚洲激情在线| 麻豆久久婷婷| 欧美怡红院视频一区二区三区| 亚洲欧美成人一区二区在线电影| 亚洲精品乱码久久久久久黑人| 一区二区三区精密机械公司| 久久久精品久久久久| 91久久亚洲| 欧美一区二区三区四区视频| 欧美精品aa| 一色屋精品亚洲香蕉网站| 一区二区三区精品| 蜜臀va亚洲va欧美va天堂| 夜夜爽夜夜爽精品视频| 久久香蕉国产线看观看网| 欧美视频在线免费| 亚洲精品久久久久久久久| 久久精品国产99国产精品| 亚洲美女中出| 免费不卡在线视频| 黑丝一区二区| 久久国产欧美精品| 一区二区欧美在线观看| 欧美激情在线免费观看| 亚洲国产视频一区| 老司机午夜精品| 亚洲欧美综合网| 国产精品视频yy9099| 亚洲午夜激情网页| 亚洲人成人77777线观看| 久久偷看各类wc女厕嘘嘘偷窃| 国产精品久久中文| 亚洲一级特黄| 亚洲社区在线观看| 欧美手机在线| 亚洲图片自拍偷拍| 一区二区日韩| 国产精品久久午夜| 欧美影院午夜播放| 亚洲综合首页| 国产精品视频午夜| 欧美一级播放| 亚洲影院免费观看| 国产精品爽黄69| 久久精品视频在线| 久久精品99国产精品日本| 国产一区二区主播在线| 久热re这里精品视频在线6| 性欧美暴力猛交另类hd| 国模私拍一区二区三区| 久久人91精品久久久久久不卡| 亚洲摸下面视频| 国产一区再线| 亚洲第一福利社区| 欧美精品一区二区三区在线播放| 亚洲精品一区在线观看| 亚洲精品一区二区网址| 欧美性大战xxxxx久久久| 久久成人精品一区二区三区| 久久久久久久999| 在线视频欧美日韩精品| 亚洲视频每日更新| 亚洲国产aⅴ天堂久久| 亚洲国产精品一区二区尤物区| 亚洲欧美一区二区原创| 精品69视频一区二区三区 | 亚洲日本欧美日韩高观看| 欧美日韩国产综合视频在线| 午夜欧美精品| 另类亚洲自拍| 亚洲一区二区在线播放| 欧美一级久久久| 日韩一级精品| 欧美一区二视频| av成人免费| 久久精品视频一| 亚洲一区二区三区久久| 久久成人免费视频| 一区二区三区欧美成人| 欧美伊人久久大香线蕉综合69| 亚洲黄色视屏| 久久国产加勒比精品无码| 艳女tv在线观看国产一区| 香蕉久久夜色| 亚洲自拍都市欧美小说| 免费不卡在线观看av| 久久精品国产亚洲一区二区三区| 欧美高清视频一区| 久久影视精品| 国产欧美日韩精品专区| 亚洲三级免费观看| 1769国产精品| 欧美一区二区三区在线视频| 一区二区三区黄色| 欧美激情精品久久久久久久变态 | 在线性视频日韩欧美| 影音先锋在线一区| 亚洲欧美日韩另类| 亚洲一区二区三区视频| 欧美国产日产韩国视频| 另类av一区二区| 国产亚洲一区二区三区在线观看| 日韩亚洲一区在线播放| 99re热这里只有精品视频| 久久久精品网| 久久久久久夜| 国产一区视频网站| 欧美一区午夜精品| 欧美一区午夜视频在线观看| 欧美午夜国产| 亚洲视频每日更新| 性欧美1819性猛交| 国产精品日韩在线播放| 亚洲专区在线| 久久高清一区| 精品9999| 欧美插天视频在线播放| 亚洲激情视频网| 一区二区三区四区五区精品| 欧美日韩国产大片| 一区二区三区**美女毛片| 亚洲欧美日本日韩| 国产色综合久久| 久久久亚洲成人| 亚洲第一精品在线| 99国产精品久久久久久久成人热| 欧美日韩国产精品自在自线| 久久夜精品va视频免费观看| 亚洲综合色激情五月| 欧美日韩一区二区三区在线视频| 日韩视频在线一区二区三区| 亚洲一二区在线| 国产欧美日韩麻豆91| 久久精品官网| 亚洲国产三级在线| 亚洲一区二区动漫| 国产午夜精品美女毛片视频| 欧美中文在线免费| 欧美激情一区| 亚洲欧美激情精品一区二区| 国产日韩一区二区三区| 久久久久久亚洲综合影院红桃| 欧美成人国产| aⅴ色国产欧美| 国产一区二区三区在线观看精品| 久久人人看视频| 亚洲最新在线| 暖暖成人免费视频| 在线视频你懂得一区二区三区| 国产欧美一区二区精品性色| 裸体丰满少妇做受久久99精品| 欧美国产日韩xxxxx| aⅴ色国产欧美| 狠狠久久婷婷| 国产精品高潮久久| 久久一区亚洲| 午夜免费在线观看精品视频| 欧美激情片在线观看| 亚欧成人精品| 亚洲美女福利视频网站| 国内精品美女在线观看| 欧美三级电影精品| 久久资源在线| 欧美一区成人| 99精品免费| 欧美激情一区二区三区在线视频| 午夜伦欧美伦电影理论片| 亚洲激情在线观看| 黄色一区三区| 国产欧美一区二区精品婷婷| 欧美日韩和欧美的一区二区| 久久久久99| 亚洲欧美在线网| 中文欧美字幕免费| 亚洲人屁股眼子交8| 老司机一区二区| 久久精品二区| 久久久久久999|