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

實時陰影繪制技術(shù)研究

C++博客 首頁 新隨筆 聯(lián)系 聚合 管理
  48 Posts :: 20 Stories :: 57 Comments :: 0 Trackbacks
流水帳,隨手記下:
  • 直到現(xiàn)在我才明白,CGCGCGFXCGFXCG是一種語言,CGFX是一套編程模型,而我們要做的是封裝cgFX,有了CGFX就有更強的一種表達,可以對不同的Profile指定配置,可以設(shè)定openGL state
  • 對于D3D的繪制方式而言,是根據(jù)名字得到Technique的句柄,然后每次繪制Mesh前設(shè)定生效的Technique,在遍歷該Technique下的所有Pass,逐一進行繪制;
  • 那么對于OpenGL來說,我們只知道在CreateProgram的時候指定一個入口函數(shù),那對于具有多個Technique的情況我們還不知道怎么進行切換,是用兩個Program表示呢,還是調(diào)用什么參數(shù)可以切換?
  • 但是不管怎么表示,從概念上是應(yīng)該允許像D3D那樣指定的,即在某一個Mesh繪制前指定用某一個Effect的某一個Technique,甚至Pass
  • 后來查到在cg1.2發(fā)布的cg_tookit里邊提供了CgFx的很好的支持,能夠想D3D Effect格式那樣ICgFxEffect->setTechnique(),有pass->begin(),pass->end()這種方法,但是不知道為什么到cg1.4把這些東西去掉了。在cgReleaseNote里邊寫到:
    • Complete rewrite of CgFX, including an API integrated with the Cg runtime API, support for extensible, cross-platform graphics state management, and support for unsized arrays and interfaces.
??? 就是說重寫了,跟以前不一樣兒了,后邊給了對于使用CgFx庫的說明:
  • Applications and effects that used previous versions of CgFX will require modification.Applications that use CgFX will have to be modified to use the new CgFX API. If the supplied OpenGL state manager for CgFX is used, the effect files themselves must be modified. The effects must be changed to use OpenGL state assignments, rather than the D3D state assignments supported in prior versions of CgFX. A subsequent release of Cg will provide D3D and cross-platform state managers for CgFX.
  • CgFX has been redesigned and re-implemented. As noted above, existing applications that use CgFX must be modified if the new API is to be used. In addition, if you wish to use the supplied “native” OpenGL state manager, which assumes that OpenGL-style state names and vales are used in effects, existing effects must be modified to use OpenGL-style states. See the “Introduction to CgFX” chapter in the Cg Users Manual for more details. If you have questions or problems related to porting existing CgFX applications, please contact NVIDIA developer relations.
太惡心了,就是說原來如果你用了很好實現(xiàn)的CgFx,現(xiàn)在對不起,不能用了。所以我看到的早期的使用cg1.2的nebula2都封裝了CGFX,但是到了1.4不知道為什么,發(fā)布的CG_tookit里邊卻去掉了這個CGFX的運行庫。nebula2新的版本也去掉了CGFX,只剩下D3DShader的支持。
上邊這段話最后說如果有問題,聯(lián)系Nvidia developer relations。我想一想也沒有辦法了,去問wj大牛都不知道怎么回事兒,那只好去問一下了,結(jié)果到了nvidia developer網(wǎng)站上也差不到可以直接問誰,還填了一張表注冊了一個用戶,現(xiàn)在還沒有被批下來。最后實在等不及了,去論壇上問吧。下面幾個地址,沒準兒有熟知cg的人可以答復(fù)一下.

http://www.gamedev.net/community/forums/topic.asp?topic_id=389475

?

http://www.smth.org/bbscon.php?bid=50&id=43518

?

http://www.smth.org/bbscon.php?bid=197&id=50169

?

http://forums.nvidia.com/index.php?showtopic=13875


再看看Nvidia到底怎么說的:
  • Cg1.1里邊關(guān)于cgFX說:

CgFX beta support for DirectX 8, DirectX 9, and OpenGL

  • Cg1.2里邊關(guān)于cgFX說:

Cg Effects Explained document?

CgFX beta support for DirectX 8, DirectX 9, and OpenGL

  • Cg1.4.1里邊關(guān)于cgFX說:

Complete rewrite of CgFX, including an API integrated with the Cg runtime API, support for extensible, cross-platform graphics state management, and support for unsized arrays and interfaces.

  • Cg1.5beta里邊關(guān)于cgFX說:

Cg 1.3 and 1.4 style Effects files supported



  • 又考察了openGL2.0GLSL,發(fā)現(xiàn)對于繪制的描述感覺跟CG1.4FX的運行庫也差不多,又因為不熟悉,還是回頭看cgFX吧。
  • 裝了cg1.2看原來的文檔,學(xué)習(xí)筆記如下:
  • cgFX主要提供了三點好處:
    • 不同硬件得以配置(technique,profile)
    • 多遍繪制的描述(pass)
    • 表達了環(huán)境信息(state)
  • cgFXmicrosoft FX2.0DirectX9.0Effect格式相似
  • cgFX既可以在openGL又可以在D3D上運行,便于以后擴展
  • 主要方法接口:
  • CgFXCreateEffect,CgFXCreateEffectFromFileA,CgFXCreateEffectCompiler,CgFXCreateEffectCompilerFromFileA
  • CgFXSetDevice,CgFXFreeDevice
  • CGFXHANDLE GetTechnique(UINT index);CGFXHANDLE GetTechniqueByName(LPCSTR name);
  • CGFXHANDLE GetPass(CGFXHANDLE technique, UINT index);CGFXHANDLE GetPassByName(CGFXHANDLE technique, LPCSTR name);
  • CGFXHANDLE GetParameter(CGFXHANDLE parent, UINT index);
  • CGFXHANDLE GetParameterByName(CGFXHANDLE parent, LPCSTR name);
  • CGFXHANDLE GetParameterBySemantic(CGFXHANDLE parent, LPCSTR name);
  • CGFXHANDLE GetParameterElement(CGFXHANDLE parent, UINT element);
  • HRESULT FindNextValidTechnique(CGFXHANDLE hTechnique,CGFXHANDLE *pTechnique);
  • HRESULT SetTechnique(CGFXHANDLE pTechnique);CGFXHANDLE GetCurrentTechnique();
  • HRESULT Begin(UINT* pPasses, DWORD Flags);HRESULT Pass(UINT passNum);HRESULT End();
  • HRESULT CloneEffect(ICgFXEffect** ppNewEffect);
  • HRESULT GetDevice(LPVOID* ppDevice);
  • HRESULT OnLostDevice();
  • HRESULT OnResetDevice();
  • 主要接口:
  • ICgFXBaseEffect
  • ICgFXEffect
  • ICgFXEffectCompiler
posted on 2006-04-25 23:41 苦行僧 閱讀(1470) 評論(0)  編輯 收藏 引用 所屬分類: graphic
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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一区二区三区四区| 亚洲欧洲一区二区天堂久久| 亚洲精品永久免费| 99亚洲精品| 午夜精品偷拍| 久久久久久色| 久久理论片午夜琪琪电影网| 欧美中文日韩| 免费日韩视频| 亚洲精品一区在线观看| 一区二区三区精品久久久| 亚洲男女自偷自拍图片另类| 久久久夜夜夜| 欧美系列精品| 在线观看国产一区二区| 日韩亚洲视频在线| 欧美影院在线| 亚洲国产国产亚洲一二三| 亚洲国产美女久久久久| 亚洲五月婷婷| 美女网站在线免费欧美精品| 国产精品爱久久久久久久| 在线观看成人av| 亚洲一区在线看| 久久综合狠狠综合久久综青草| 欧美激情aaaa| 欧美在线一区二区三区| 欧美日韩在线免费视频| 在线不卡视频| 午夜宅男欧美| 999在线观看精品免费不卡网站| 久久国产一区二区三区| 国产精品国产a级| 亚洲美女在线视频| 久久久噜噜噜久久| 亚洲私人影院在线观看| 欧美大片国产精品| 狠狠色狠狠色综合日日五| 亚洲视频中文| 亚洲国产精品成人va在线观看| 香蕉久久夜色精品国产| 欧美三级黄美女| 亚洲日本精品国产第一区| 久久免费国产| 午夜在线不卡| 国产精品美女www爽爽爽| 日韩亚洲欧美综合| 亚洲国产三级在线| 久久中文字幕一区| 国产视频精品xxxx| 欧美一级电影久久| 亚洲一区二区三区精品动漫| 欧美日韩亚洲一区二区三区| 亚洲精品视频在线看| 欧美国产日韩精品免费观看| 久久久女女女女999久久| 国产日韩欧美在线视频观看| 午夜久久tv| 亚洲欧美欧美一区二区三区| 国产精品久久久久国产a级| 亚洲少妇在线| 亚洲视频免费看| 国产精品久久久免费| 国产精品久久久久免费a∨大胸| 欧美电影免费| 亚洲日韩中文字幕在线播放| 欧美激情视频给我| 欧美福利视频在线观看| 亚洲精品久久久久| 亚洲激情视频网站| 欧美精品一区三区| 亚洲一区二区在线看| 亚洲深夜av| 国产亚洲一区二区三区在线播放| 久久精品亚洲国产奇米99| 久久成人一区| 亚洲国产99| 亚洲免费观看高清完整版在线观看| 欧美精品一区三区| 亚洲免费视频网站| 欧美在线视频播放| 亚洲国产精品v| 日韩一二三区视频| 国产亚洲欧美一区在线观看| 久久免费视频这里只有精品| 你懂的亚洲视频| 亚洲午夜视频| 欧美在线不卡视频| 在线视频国产日韩| 一级日韩一区在线观看| 国产性天天综合网| 亚洲高清一区二| 国产精品久久二区二区| 另类亚洲自拍| 欧美色中文字幕| 久久综合狠狠综合久久激情| 欧美日韩另类在线| 久久一区欧美| 国产精品毛片高清在线完整版| 久热精品视频在线免费观看| 欧美日韩激情网| 久久尤物视频| 国产精品日韩欧美一区二区三区 | 激情自拍一区| 999亚洲国产精| 亚洲精品免费在线播放| 欧美伊人精品成人久久综合97| 亚洲精选成人| 久久色在线播放| 欧美亚洲免费电影| 欧美精品日韩综合在线| 久久躁狠狠躁夜夜爽| 欧美色欧美亚洲高清在线视频| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产精品美女久久福利网站| 麻豆精品一区二区综合av| 国产精品久久国产愉拍| 亚洲激情在线激情| 亚洲国产成人高清精品| 欧美亚洲网站| 欧美一级理论片| 国产精品高潮呻吟久久av无限| 亚洲黄色一区| 亚洲九九精品| 最新国产乱人伦偷精品免费网站| 性欧美xxxx大乳国产app| 亚洲一区免费在线观看| 欧美人与禽性xxxxx杂性| 欧美成人自拍视频| 在线成人h网| 久久久久在线观看| 久热这里只精品99re8久| 国产亚洲aⅴaaaaaa毛片| 亚洲欧美精品一区| 亚洲欧美视频一区| 国产精品xvideos88| 一区二区三区久久网| 亚洲免费一区二区| 国产乱码精品一区二区三区av| 亚洲一区二区在线看| 亚洲欧美激情一区| 国产精品麻豆va在线播放| 亚洲一卡久久| 欧美一级视频免费在线观看| 国产精品丝袜xxxxxxx| 欧美一站二站| 欧美jjzz| 亚洲老板91色精品久久| 欧美剧在线观看| 一区二区欧美亚洲| 香港久久久电影| 激情成人av在线| 欧美jizzhd精品欧美喷水| 亚洲国产成人在线视频| 日韩一级黄色大片| 国产精品v欧美精品∨日韩| 这里只有精品在线播放| 久久精品二区| 亚洲国产日韩美| 欧美视频四区| 久久精品72免费观看| 亚洲二区精品| 亚洲欧美日韩中文播放| 韩国精品一区二区三区| 欧美激情偷拍| 香蕉久久久久久久av网站| 欧美搞黄网站| 亚欧美中日韩视频| 亚洲日本va在线观看| 国产精品久久久久久亚洲毛片 | 亚洲一区二区三区激情| 久久麻豆一区二区| 亚洲午夜女主播在线直播| 国内久久精品| 欧美调教vk| 久久精品欧美日韩| 一本久久精品一区二区| 久久午夜视频| 亚洲天堂第二页| 亚洲第一主播视频| 国产精品夜夜夜| 欧美福利电影网| 欧美影片第一页| 亚洲视频你懂的| 亚洲日韩第九十九页| 久久久久久91香蕉国产| 亚洲午夜91| 亚洲精品你懂的| 很黄很黄激情成人| 国产精品日本欧美一区二区三区| 欧美成人精品福利| 欧美影院午夜播放| 亚洲男人的天堂在线| 在线日韩中文字幕| 欧美va日韩va| 欧美在线日韩| 午夜一区二区三区在线观看|