public void SetMaterialInstance(EngineNS.Graphics.CGfxMaterialInstance mtl, EngineNS.Graphics.Mesh.CGfxMesh mesh, int mtlindex) { mMaterialInstance = mtl; MaterialInstanceName = mtl.Name; MtlIndex = mtlindex; SceneMesh = mesh; mSRVPrimitives = new List <SRVRName>(); for (UInt32 i = 0; i < mMaterialInstance.SRVNumber; i++) { var item = new SRVRName(); item.Index = (int)i; item.SceneMesh = mesh; item.MtlIndex = (UInt32)mtlindex; item.Host = this; mSRVPrimitives.Add(item); } mShaderVars = new List <VarRName>(); for (UInt32 i = 0; i < mMaterialInstance.VarNumber; i++) { var item = new VarRName(); item.Index = (int)i; item.SceneMesh = mesh; item.MtlIndex = (UInt32)mtlindex; item.Host = this; mShaderVars.Add(item); } }
public void SetMaterialInstance(EngineNS.Graphics.CGfxMaterialInstance mtl) { mMaterialInstance = mtl; mSRVPrimitives = new List <SRVRName>(); for (UInt32 i = 0; i < mMaterialInstance.SRVNumber; i++) { var item = new SRVRName(); item.Index = i; item.mMaterialInstance = mMaterialInstance; mSRVPrimitives.Add(item); } mShaderVars = new List <VarRName>(); for (UInt32 i = 0; i < mMaterialInstance.VarNumber; i++) { var item = new VarRName(); item.Index = i; item.mMaterialInstance = mMaterialInstance; mShaderVars.Add(item); } }