MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / _initMaterial

Method _initMaterial

Engine/source/environment/decalRoad.cpp:1048–1083  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1046// Internal Helper Methods
1047
1048void DecalRoad::_initMaterial()
1049{
1050 _setMaterial(getMaterial());
1051
1052 if (mMaterialAsset.notNull())
1053 {
1054 if (mMaterialInst && String(mMaterialAsset->getMaterialDefinitionName()).equal(mMaterialInst->getMaterial()->getName(), String::NoCase))
1055 return;
1056
1057 SAFE_DELETE(mMaterialInst);
1058
1059 Material* tMat = nullptr;
1060
1061 if (!Sim::findObject(mMaterialAsset->getMaterialDefinitionName(), tMat))
1062 Con::errorf("DecalRoad::_initMaterial - Material %s was not found.", mMaterialAsset->getMaterialDefinitionName());
1063
1064 mMaterial = tMat;
1065
1066 if (mMaterial)
1067 mMaterialInst = mMaterial->createMatInstance();
1068 else
1069 mMaterialInst = MATMGR->createMatInstance("WarningMaterial");
1070
1071 if (!mMaterialInst)
1072 Con::errorf("DecalRoad::_initMaterial - no Material called '%s'", mMaterialAsset->getMaterialDefinitionName());
1073 }
1074
1075 if (!mMaterialInst)
1076 return;
1077
1078 GFXStateBlockDesc desc;
1079 desc.setZReadWrite( true, false );
1080 mMaterialInst->addStateBlockDesc( desc );
1081
1082 mMaterialInst->init( MATMGR->getDefaultFeatures(), getGFXVertexFormat<GFXVertexPNTBT>() );
1083}
1084
1085void DecalRoad::_debugRender( ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance* )
1086{

Callers

nothing calls this directly

Calls 12

notNullMethod · 0.80
setZReadWriteMethod · 0.80
StringClass · 0.50
findObjectFunction · 0.50
errorfFunction · 0.50
equalMethod · 0.45
getNameMethod · 0.45
getMaterialMethod · 0.45
createMatInstanceMethod · 0.45
addStateBlockDescMethod · 0.45
initMethod · 0.45

Tested by

no test coverage detected