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

Method onAdd

Engine/source/environment/basicClouds.cpp:111–161  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

109
110
111bool BasicClouds::onAdd()
112{
113 if ( !Parent::onAdd() )
114 return false;
115
116 setGlobalBounds();
117 resetWorldBox();
118
119 addToScene();
120
121 if ( isClientObject() )
122 {
123 _initTexture();
124 _initBuffers();
125
126 // Find ShaderData
127 ShaderData *shaderData;
128 mShader = Sim::findObject( "BasicCloudsShader", shaderData ) ? shaderData->getShader() : NULL;
129 if ( !mShader )
130 {
131 Con::errorf( "BasicClouds::onAdd - could not find BasicCloudsShader" );
132 return false;
133 }
134
135 // Create ShaderConstBuffer and Handles
136 mShaderConsts = mShader->allocConstBuffer();
137 mModelViewProjSC = mShader->getShaderConstHandle( "$modelView" );
138 mTimeSC = mShader->getShaderConstHandle( "$accumTime" );
139 mTexScaleSC = mShader->getShaderConstHandle( "$texScale" );
140 mTexDirectionSC = mShader->getShaderConstHandle( "$texDirection" );
141 mTexOffsetSC = mShader->getShaderConstHandle( "$texOffset" );
142 mDiffuseMapSC = mShader->getShaderConstHandle( "$diffuseMap" );
143
144 // Create StateBlocks
145 GFXStateBlockDesc desc;
146 desc.setCullMode( GFXCullNone );
147 desc.setBlend( true );
148 desc.setZReadWrite( true, false );
149 desc.samplersDefined = true;
150 desc.samplers[0].addressModeU = GFXAddressWrap;
151 desc.samplers[0].addressModeV = GFXAddressWrap;
152 desc.samplers[0].addressModeW = GFXAddressWrap;
153 desc.samplers[0].magFilter = GFXTextureFilterLinear;
154 desc.samplers[0].minFilter = GFXTextureFilterLinear;
155 desc.samplers[0].mipFilter = GFXTextureFilterLinear;
156
157 mStateblock = GFX->createStateBlock( desc );
158 }
159
160 return true;
161}
162
163void BasicClouds::onRemove()
164{

Callers

nothing calls this directly

Calls 9

setCullModeMethod · 0.80
setBlendMethod · 0.80
setZReadWriteMethod · 0.80
createStateBlockMethod · 0.80
findObjectFunction · 0.50
errorfFunction · 0.50
getShaderMethod · 0.45
allocConstBufferMethod · 0.45
getShaderConstHandleMethod · 0.45

Tested by

no test coverage detected