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

posts - 72,  comments - 4,  trackbacks - 0
泰坦之旅的shader處理流程:
例如讀取以下shader文件
{fileName="Shaders/Overlay.ssh" resourceLoader=0x021090e0 resourceType=resourceShader ...}
1. Block_Constants:
   共7個const:
    1)constants[0].elements[] = VertexShader
VertexShader->bindings[0] {registerIndex=0, registerCount=4; valueisrefconst(const or param)=false, valueidx=0;}
   VertexShader->shader = 編譯好的shader;
2)constants[1].elements[] = int;
3)constants[2].elements[] = int;
4)constants[3].elements[] = int;
5)constants[4].elements[] = int;
6)constants[5].elements[] = int;
7)constants[6].elements[] = int;
2. Block_Parameters:
   共2個Param:
   1) parameters[0] = "objectToScreenMatrix"  Type_Float4x4 
   2) parameters[1] = "vs", parameter.defaultValueIndex = 0; // 即缺省指向constants[0],也即1.1)中的VertexShader
   以上Param映射到parameterNameMap表中[name]=i; 這樣通過i可以直接索引設置parameters[i].value數值。
3. Block_Styles:
   共1個Style
   styles[0].name="normal"          
   styles[0].order=0;
   numPasses=1;// 目前只支持1pass
   styles[0].bindings=7
  1).styles[0].bindins[0] {state=State_VertexShader stateIndex=0 valueReference={constant=false index=1} }     // 即指向parameters[1]
  2).styles[0].bindins[1] {state=State_DepthWriteMode stateIndex=0 valueReference={constant=true index=1} }    // 即指向constants[1]
  3).styles[0].bindins[2] {state=State_AlphaWriteMode stateIndex=0 valueReference={constant=true index=2} }    // 即指向constants[2]
  4).styles[0].bindins[3] {state=State_CullingMode stateIndex=0 valueReference={constant=true index=3} }       // 即指向constants[3]
  5).styles[0].bindins[2] {state=State_DepthTestFunction stateIndex=0 valueReference={constant=true index=4} } // 即指向constants[4]
  6).styles[0].bindins[2] {state=State_BlendSrcFactor stateIndex=0 valueReference={constant=true index=5} }    // 即指向constants[5]
  7).styles[0].bindins[2] {state=State_BlendDstFactor stateIndex=0 valueReference={constant=true index=6} }    // 即指向constants[6]
說明:   
a. 渲染前如果設置參數,將會搜索parameters[]并修改對應的值,
b. 而當渲染時,會傳入styleindex進行渲染,這時會遍歷所有styles[styleindex].bindins[],按state進行設置, 如果state是渲染狀態則通過SetRenderState之類接設置則完成,
如果是vs或者是ps,則設置對應vs->shader/ps->shader,并遍歷其bindings[]把索引到的param或者const值設置給shader.
例如:
  我們使用const kGraphicsShader2* shader = gEngine->GetGraphicsEngine()->LoadShader2("Shaders/BasicTexture.ssh");這個帶貼圖的shader.
  在渲染前通過shader->SetTexture("baseTexture",0,currentTexture0);設置貼圖時會在parameters[]搜索找并設置該貼圖,
  之后渲染時會處理styles[當前style].bindins[], 如果state是普通渲染狀態則用SetRenderState之類接設置則完成,
而如果是shader,那么會設置對應的shade,并遍歷shader.bindings[]索引找到對應的param把對應的貼圖傳遞給shader,從而得已正確渲染.
posted on 2011-11-15 14:12 flipcode 閱讀(287) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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成人精品| 久久一区二区三区四区五区| 亚洲精品日韩在线观看| 香蕉成人久久| 亚洲精品综合在线| 麻豆国产精品一区二区三区| 欧美性大战久久久久久久蜜臀| 亚洲国产欧美一区| 久久久综合视频| 亚洲一区二区三区在线视频| 欧美区亚洲区| 欧美插天视频在线播放| 韩国成人福利片在线播放| 午夜天堂精品久久久久 | 久久精品一本| 亚洲男人的天堂在线aⅴ视频| 亚洲视频在线观看免费| 亚洲午夜国产一区99re久久| 欧美日韩国产综合视频在线观看中文| 久久成人久久爱| 国产热re99久久6国产精品| 久久精品国产91精品亚洲| 久久福利影视| 一区二区三区日韩精品视频| 亚洲视频免费观看| 在线观看91久久久久久| 99精品国产一区二区青青牛奶| 国产视频在线观看一区| 亚洲国产成人在线视频| 欧美视频不卡| 欧美激情网友自拍| 国产综合色精品一区二区三区| 亚洲精品社区| 性欧美大战久久久久久久免费观看| 亚洲天堂免费观看| 久久精品国产亚洲一区二区三区| 欧美日韩国内自拍| 亚洲国产婷婷| 嫩草伊人久久精品少妇av杨幂| 亚洲小少妇裸体bbw| 国产真实精品久久二三区| 久热精品视频在线免费观看| 国产精品有限公司| 欧美主播一区二区三区| 欧美日韩一区视频| 亚洲精品小视频在线观看| 亚洲国产免费看| 久久一区免费| 亚洲电影观看| 激情综合中文娱乐网| 欧美承认网站| 韩国av一区| 亚洲男人第一av网站| 欧美亚洲日本一区| 亚洲精品日韩欧美| 欧美激情一区二区三区高清视频 | 亚洲国产精品激情在线观看| 久久久久网站| 国产精品99久久99久久久二8 | 亚洲国产二区| 蜜臀av国产精品久久久久| 久久综合伊人77777尤物| 国产一区二区三区在线观看免费| 日韩视频在线播放| 久久婷婷人人澡人人喊人人爽| 91久久亚洲| 亚洲制服丝袜在线| 99精品免费| 欧美日韩日本网| 99在线观看免费视频精品观看| 欧美在线一区二区三区| 国产私拍一区| 欧美+日本+国产+在线a∨观看| 欧美国产日韩xxxxx| 正在播放亚洲| 狠狠色狠狠色综合人人| 欧美日韩不卡| 久久综合伊人77777蜜臀| 亚洲一区日韩| 99热精品在线| 亚洲盗摄视频| 中国女人久久久| 一区二区三区国产精华| 国产午夜精品在线观看| 欧美精品一区二区三区一线天视频| 先锋影音久久久| 国产精品theporn88| 亚洲日韩欧美视频| 亚洲成人在线观看视频| 亚洲激情另类| 在线成人www免费观看视频| 久久一区视频| 亚洲精品乱码久久久久久久久| 亚洲精品乱码久久久久久按摩观| 欧美大成色www永久网站婷| 亚洲图中文字幕| 国产精品一区二区a| 久久综合导航| 日韩视频在线一区二区| 亚洲成人在线视频播放| 久久成人这里只有精品| 亚洲人成网站在线观看播放| 亚洲第一成人在线| 亚洲国产日韩欧美一区二区三区| 99在线热播精品免费99热| 亚洲久久视频| 亚洲一区二区视频在线| 久久久夜精品| 亚洲伊人观看| 亚洲国产高清aⅴ视频| 麻豆国产va免费精品高清在线| 亚洲欧美日韩视频二区| 久久久久久香蕉网| 亚洲精品视频一区| 亚洲毛片在线免费观看| 最新69国产成人精品视频免费| 激情综合色丁香一区二区| 狠狠色香婷婷久久亚洲精品| 欧美乱大交xxxxx| 9色porny自拍视频一区二区| 亚洲一区二区三区高清| 99精品福利视频| 亚洲欧美一区二区激情| 久久亚洲精品中文字幕冲田杏梨| 欧美一区二区三区四区夜夜大片 | 在线一区二区日韩| 亚洲欧美日韩精品在线| 欧美日韩亚洲精品内裤| 在线日韩日本国产亚洲| 久久久青草婷婷精品综合日韩 | 免费永久网站黄欧美| 久久久xxx| 欧美成人一品| 欧美激情一区在线| 亚洲一级电影| 欧美日韩成人综合天天影院| 亚洲综合视频1区| 国产精品家庭影院| 久久综合精品国产一区二区三区| 欧美一区二区三区视频在线观看| 欧美电影在线观看| 亚洲免费在线观看视频| 欧美成人69av| 午夜国产一区| 国产精品看片你懂得| 中文亚洲欧美| 欧美激情精品久久久久久免费印度 | 亚洲激情另类| 欧美亚洲一区| 欧美激情国产日韩| 国产精品亚洲美女av网站| 亚洲国产另类精品专区| 欧美激情一区二区三区高清视频| 亚洲尤物在线视频观看| 国产精品午夜在线观看| 亚洲在线观看视频| 久久躁日日躁aaaaxxxx| 在线一区免费观看| 久久亚洲欧美| 欧美韩日一区二区| 亚洲欧美日韩精品在线| 国产精品海角社区在线观看| 亚洲欧美日韩一区二区在线| 久久色在线播放| 在线免费观看欧美| 1024日韩| 中文国产亚洲喷潮| 在线观看亚洲视频| 欧美尤物一区| 亚洲一区二区高清视频| 久久国产欧美| 欧美国产高潮xxxx1819| 99精品免费| 亚洲影院色在线观看免费| 激情五月综合色婷婷一区二区| 欧美黄色大片网站| 国产精品久久国产愉拍| 新片速递亚洲合集欧美合集| 欧美日韩三区| 性色av香蕉一区二区| 欧美一区二区三区四区在线| 欧美成人免费va影院高清| 国产精品高清一区二区三区| 亚洲第一二三四五区| 国产欧美日韩精品丝袜高跟鞋| 欧美一二三区在线观看| 欧美另类69精品久久久久9999| 午夜精品久久久久久久99樱桃| 开元免费观看欧美电视剧网站| 亚洲自拍三区| 国产精品亚洲产品| 亚洲一区二区三区激情| 久久久精品网| 尤物九九久久国产精品的特点| 欧美日韩一区三区| 99在线|亚洲一区二区| 国产精品国产三级国产普通话三级 | 久久久久久久波多野高潮日日| 女主播福利一区| 最新亚洲激情|