當前位置:
首頁 >
GameBryo Shader 组织方式
發布時間:2025/5/22
49
豆豆
生活随笔
收集整理的這篇文章主要介紹了
GameBryo Shader 组织方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.NiMaterialNodeLibrary中添加NiMaterialFragmentNode
2.NiMaterialFragmentNode繼承于NiMaterialNode
3.輸入輸出的變量作為NiMaterialResource,SetType(float4等等),SetVariable(變量名字)
4.用NiMaterialFragmentNode的AddInputResource或者AddOutputResource來確定是輸入或者輸出變量
5.函數中的代碼片用NiCodeBlock來進行維護參看下面代碼
6.Contex.m_spConfigurator->AddBinding是將第一個參數NiMaterialNode輸出參數賦值給第二個NiMaterialNode輸入參數
7.Contex.m_spOutputs就是Shader中的Output結構體,同理Contex.m_spInputs就是Shader中的Input結構體,所有操作都會在相應的結構體中添加相關的參數.
8.Shader的組織方式非常簡單,最后在生成的主函數Main中能夠看到其具體的過程,大致代碼可以參考如下,深入的需要仔細看NiStandMaterial
9.新的Shader組織方式,自己做一個類,繼承自NiStandMaterial然后NiRenderer::GetRenderer()->SetDefaultMaterial(m_MRTMaterial);
By EnoroF
2.NiMaterialFragmentNode繼承于NiMaterialNode
3.輸入輸出的變量作為NiMaterialResource,SetType(float4等等),SetVariable(變量名字)
4.用NiMaterialFragmentNode的AddInputResource或者AddOutputResource來確定是輸入或者輸出變量
5.函數中的代碼片用NiCodeBlock來進行維護參看下面代碼
6.Contex.m_spConfigurator->AddBinding是將第一個參數NiMaterialNode輸出參數賦值給第二個NiMaterialNode輸入參數
7.Contex.m_spOutputs就是Shader中的Output結構體,同理Contex.m_spInputs就是Shader中的Input結構體,所有操作都會在相應的結構體中添加相關的參數.
8.Shader的組織方式非常簡單,最后在生成的主函數Main中能夠看到其具體的過程,大致代碼可以參考如下,深入的需要仔細看NiStandMaterial
9.新的Shader組織方式,自己做一個類,繼承自NiStandMaterial然后NiRenderer::GetRenderer()->SetDefaultMaterial(m_MRTMaterial);
By EnoroF
轉載于:https://www.cnblogs.com/EnoroF/p/3286194.html
總結
以上是生活随笔為你收集整理的GameBryo Shader 组织方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决bash: mysql: comma
- 下一篇: 去除VisualStudio中拼写错误检