ruby-ogre 0.0.3-x86-linux → 0.0.4-x86-linux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. data/Rakefile +7 -8
  2. data/bindings/ogre/interface/ogre_all.i +1 -0
  3. data/bindings/ogre/interface/ogre_wrap.cpp +591 -46
  4. data/bindings/ogre/interface/ogre_wrap.o +0 -0
  5. data/bindings/ogrebites/interface/ogrebites_wrap.o +0 -0
  6. data/bindings/procedural/interface/procedural_wrap.o +0 -0
  7. data/deps/include/OGRE/OgreAny.h +23 -1
  8. data/deps/include/OGRE/OgreBillboardChain.h +5 -1
  9. data/deps/include/OGRE/OgreBillboardParticleRenderer.h +2 -0
  10. data/deps/include/OGRE/OgreConfigDialog.h +0 -2
  11. data/deps/include/OGRE/OgreDynLib.h +1 -7
  12. data/deps/include/OGRE/OgreErrorDialog.h +0 -2
  13. data/deps/include/OGRE/OgreHeaderSuffix.h +3 -3
  14. data/deps/include/OGRE/OgreInstanceBatch.h +4 -0
  15. data/deps/include/OGRE/OgreInstanceManager.h +5 -0
  16. data/deps/include/OGRE/OgreIteratorRange.h +13 -2
  17. data/deps/include/OGRE/OgreParticleSystem.h +2 -0
  18. data/deps/include/OGRE/OgreParticleSystemRenderer.h +4 -0
  19. data/deps/include/OGRE/OgrePlatform.h +5 -28
  20. data/deps/include/OGRE/OgrePrerequisites.h +1 -1
  21. data/deps/include/OGRE/OgreProfiler.h +102 -59
  22. data/deps/include/OGRE/OgreProgressiveMesh.h +2 -2
  23. data/deps/include/OGRE/OgreRenderSystem.h +18 -1
  24. data/deps/include/OGRE/OgreRoot.h +1 -1
  25. data/deps/include/OGRE/OgreSearchOps.h +0 -5
  26. data/deps/include/OGRE/OgreSimpleRenderable.h +1 -1
  27. data/deps/include/OGRE/OgreStdHeaders.h +2 -2
  28. data/deps/include/OGRE/OgreStringConverter.h +5 -0
  29. data/deps/include/OGRE/OgreTimer.h +1 -1
  30. data/deps/include/OGRE/OgreUTFString.h +0 -2
  31. data/deps/include/OGRE/OgreWindowEventUtilities.h +3 -1
  32. data/deps/include/OGRE/OgreWorkQueue.h +2 -2
  33. data/deps/include/OGRE/RTShaderSystem/OgreShaderCGProgramProcessor.h +5 -5
  34. data/deps/include/OGRE/RTShaderSystem/OgreShaderCGProgramWriter.h +17 -15
  35. data/deps/include/OGRE/RTShaderSystem/OgreShaderExDualQuaternionSkinning.h +3 -3
  36. data/deps/include/OGRE/RTShaderSystem/OgreShaderExHardwareSkinning.h +5 -4
  37. data/deps/include/OGRE/RTShaderSystem/OgreShaderExHardwareSkinningTechnique.h +3 -3
  38. data/deps/include/OGRE/RTShaderSystem/OgreShaderExIntegratedPSSM3.h +50 -32
  39. data/deps/include/OGRE/RTShaderSystem/OgreShaderExLayeredBlending.h +13 -9
  40. data/deps/include/OGRE/RTShaderSystem/OgreShaderExLinearSkinning.h +7 -7
  41. data/deps/include/OGRE/RTShaderSystem/OgreShaderExNormalMapLighting.h +149 -95
  42. data/deps/include/OGRE/RTShaderSystem/OgreShaderExPerPixelLighting.h +91 -59
  43. data/deps/include/OGRE/RTShaderSystem/OgreShaderExTextureAtlasSampler.h +14 -9
  44. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPColour.h +33 -24
  45. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPFog.h +44 -30
  46. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPLighting.h +70 -45
  47. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPRenderStateBuilder.h +11 -10
  48. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPTexturing.h +73 -64
  49. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPTransform.h +8 -8
  50. data/deps/include/OGRE/RTShaderSystem/OgreShaderFunction.h +42 -35
  51. data/deps/include/OGRE/RTShaderSystem/OgreShaderFunctionAtom.h +38 -32
  52. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLESProgramProcessor.h +9 -8
  53. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLESProgramWriter.h +45 -36
  54. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLProgramProcessor.h +9 -8
  55. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLProgramWriter.h +26 -20
  56. data/deps/include/OGRE/RTShaderSystem/OgreShaderGenerator.h +211 -160
  57. data/deps/include/OGRE/RTShaderSystem/OgreShaderHLSLProgramProcessor.h +5 -5
  58. data/deps/include/OGRE/RTShaderSystem/OgreShaderHLSLProgramWriter.h +17 -15
  59. data/deps/include/OGRE/RTShaderSystem/OgreShaderMaterialSerializerListener.h +5 -3
  60. data/deps/include/OGRE/RTShaderSystem/OgreShaderParameter.h +86 -73
  61. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgram.h +36 -30
  62. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramManager.h +38 -31
  63. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramProcessor.h +54 -43
  64. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramSet.h +18 -14
  65. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramWriter.h +10 -10
  66. data/deps/include/OGRE/RTShaderSystem/OgreShaderRenderState.h +28 -23
  67. data/deps/include/OGRE/RTShaderSystem/OgreShaderScriptTranslator.h +2 -1
  68. data/deps/include/OGRE/RTShaderSystem/OgreShaderSubRenderState.h +35 -32
  69. data/deps/include/OGRE/RenderSystems/GL/GL/wglew.h +2 -2
  70. data/deps/include/OGRE/RenderSystems/GL/GL/wglext.h +2 -2
  71. data/deps/include/OGRE/RenderSystems/GL/OgreGLRenderSystem.h +10 -1
  72. data/deps/include/OGRE/RenderSystems/GL/OgreGLTextureManager.h +2 -0
  73. data/deps/include/OGRE/Sample.h +5 -0
  74. data/deps/include/OGRE/SampleContext.h +13 -3
  75. data/deps/lib/OGRE/Plugin_BSPSceneManager.so +0 -0
  76. data/deps/lib/OGRE/Plugin_BSPSceneManager.so.1.8.1 +0 -0
  77. data/deps/lib/OGRE/Plugin_CgProgramManager.so +0 -0
  78. data/deps/lib/OGRE/Plugin_CgProgramManager.so.1.8.1 +0 -0
  79. data/deps/lib/OGRE/Plugin_OctreeSceneManager.so +0 -0
  80. data/deps/lib/OGRE/Plugin_OctreeSceneManager.so.1.8.1 +0 -0
  81. data/deps/lib/OGRE/Plugin_OctreeZone.so +0 -0
  82. data/deps/lib/OGRE/Plugin_OctreeZone.so.1.8.1 +0 -0
  83. data/deps/lib/OGRE/Plugin_PCZSceneManager.so +0 -0
  84. data/deps/lib/OGRE/Plugin_PCZSceneManager.so.1.8.1 +0 -0
  85. data/deps/lib/OGRE/Plugin_ParticleFX.so +0 -0
  86. data/deps/lib/OGRE/Plugin_ParticleFX.so.1.8.1 +0 -0
  87. data/deps/lib/OGRE/RenderSystem_GL.so +0 -0
  88. data/deps/lib/OGRE/RenderSystem_GL.so.1.8.1 +0 -0
  89. data/deps/lib/libOgreMain.so +0 -0
  90. data/deps/lib/libOgreMain.so.1.8.1 +0 -0
  91. data/deps/lib/libOgrePaging.so +0 -0
  92. data/deps/lib/libOgrePaging.so.1.8.1 +0 -0
  93. data/deps/lib/libOgreProcedural.so +0 -0
  94. data/deps/lib/libOgreRTShaderSystem.so +0 -0
  95. data/deps/lib/libOgreRTShaderSystem.so.1.8.1 +0 -0
  96. data/deps/lib/libOgreTerrain.so +0 -0
  97. data/deps/lib/libOgreTerrain.so.1.8.1 +0 -0
  98. data/deps/share/OGRE/media/materials/programs/DiffuseOneTexture.glsles +17 -0
  99. data/deps/share/OGRE/media/packs/profiler.zip +0 -0
  100. data/lib/ogre.so +0 -0
  101. data/lib/ogrebites.so +0 -0
  102. data/lib/procedural.so +0 -0
  103. data/lib/version.rb +1 -1
  104. data/sample/charactor/sinbad.rb +8 -4
  105. metadata +16 -4
@@ -71,38 +71,38 @@ public:
71
71
  /**
72
72
  @see SubRenderState::getType.
73
73
  */
74
- virtual const String& getType () const;
74
+ virtual const String& getType() const;
75
75
 
76
76
  /**
77
77
  @see SubRenderState::getType.
78
78
  */
79
- virtual int getExecutionOrder () const;
79
+ virtual int getExecutionOrder() const;
80
80
 
81
81
  /**
82
82
  @see SubRenderState::updateGpuProgramsParams.
83
83
  */
84
- virtual void updateGpuProgramsParams (Renderable* rend, Pass* pass, const AutoParamDataSource* source, const LightList* pLightList);
84
+ virtual void updateGpuProgramsParams(Renderable* rend, Pass* pass, const AutoParamDataSource* source, const LightList* pLightList);
85
85
 
86
86
  /**
87
87
  @see SubRenderState::copyFrom.
88
88
  */
89
- virtual void copyFrom (const SubRenderState& rhs);
89
+ virtual void copyFrom(const SubRenderState& rhs);
90
90
 
91
91
 
92
92
  /**
93
93
  @see SubRenderState::preAddToRenderState.
94
94
  */
95
- virtual bool preAddToRenderState (const RenderState* renderState, Pass* srcPass, Pass* dstPass);
95
+ virtual bool preAddToRenderState(const RenderState* renderState, Pass* srcPass, Pass* dstPass);
96
96
 
97
97
  /**
98
98
  Set the index of the input vertex shader texture coordinate set
99
99
  */
100
- void setTexCoordIndex (unsigned int index) { mVSTexCoordSetIndex = index;}
100
+ void setTexCoordIndex(unsigned int index) { mVSTexCoordSetIndex = index;}
101
101
 
102
102
  /**
103
103
  Return the index of the input vertex shader texture coordinate set.
104
104
  */
105
- unsigned int getTexCoordIndex () const { return mVSTexCoordSetIndex; }
105
+ unsigned int getTexCoordIndex() const { return mVSTexCoordSetIndex; }
106
106
 
107
107
  // Type of this render state.
108
108
  static String Type;
@@ -126,20 +126,20 @@ public:
126
126
  Set the normal map space.
127
127
  @param normalMapSpace The normal map space.
128
128
  */
129
- void setNormalMapSpace (NormalMapSpace normalMapSpace) { mNormalMapSpace = normalMapSpace; }
129
+ void setNormalMapSpace(NormalMapSpace normalMapSpace) { mNormalMapSpace = normalMapSpace; }
130
130
 
131
131
  /** Return the normal map space. */
132
- NormalMapSpace getNormalMapSpace () const { return mNormalMapSpace; }
132
+ NormalMapSpace getNormalMapSpace() const { return mNormalMapSpace; }
133
133
 
134
134
  /**
135
135
  Set the normal map texture name.
136
136
  */
137
- void setNormalMapTextureName (const String& textureName) { mNormalMapTextureName = textureName; }
137
+ void setNormalMapTextureName(const String& textureName) { mNormalMapTextureName = textureName; }
138
138
 
139
139
  /**
140
140
  Return the normal map texture name.
141
141
  */
142
- const String& getNormalMapTextureName () const { return mNormalMapTextureName; }
142
+ const String& getNormalMapTextureName() const { return mNormalMapTextureName; }
143
143
 
144
144
  /**
145
145
  Set the normal map filtering attributes.
@@ -147,7 +147,7 @@ public:
147
147
  @param magFilter The desired mag filter.
148
148
  @param mipFilter The desired mip filter.
149
149
  */
150
- void setNormalMapFiltering (const FilterOptions minFilter, const FilterOptions magFilter, const FilterOptions mipFilter)
150
+ void setNormalMapFiltering(const FilterOptions minFilter, const FilterOptions magFilter, const FilterOptions mipFilter)
151
151
  { mNormalMapMinFilter = minFilter; mNormalMapMagFilter = magFilter; mNormalMapMipFilter = mipFilter; }
152
152
 
153
153
  /**
@@ -156,27 +156,27 @@ public:
156
156
  @param magFilter The desired mag filter.
157
157
  @param mipFilter The desired mip filter.
158
158
  */
159
- void getNormalMapFiltering (FilterOptions& minFilter, FilterOptions& magFilter, FilterOptions& mipFilter) const
159
+ void getNormalMapFiltering(FilterOptions& minFilter, FilterOptions& magFilter, FilterOptions& mipFilter) const
160
160
  { minFilter = mNormalMapMinFilter; magFilter = mNormalMapMagFilter ; mipFilter = mNormalMapMipFilter; }
161
161
 
162
162
  /** Setup the normal map anisotropy value.
163
163
  @param anisotropy The anisotropy value.
164
164
  */
165
- void setNormalMapAnisotropy (unsigned int anisotropy) { mNormalMapAnisotropy = anisotropy; }
165
+ void setNormalMapAnisotropy(unsigned int anisotropy) { mNormalMapAnisotropy = anisotropy; }
166
166
 
167
167
 
168
168
  /** Return the normal map anisotropy value. */
169
- unsigned int getNormalMapAnisotropy () const { return mNormalMapAnisotropy; }
169
+ unsigned int getNormalMapAnisotropy() const { return mNormalMapAnisotropy; }
170
170
 
171
171
 
172
172
  /** Setup the normal map anisotropy value.
173
173
  @param anisotropy The anisotropy value.
174
174
  */
175
- void setNormalMapMipBias (Real mipBias) { mNormalMapMipBias = mipBias; }
175
+ void setNormalMapMipBias(Real mipBias) { mNormalMapMipBias = mipBias; }
176
176
 
177
177
 
178
178
  /** Return the normal map mip bias value. */
179
- Real getNormalMapMipBias () const { return mNormalMapMipBias; }
179
+ Real getNormalMapMipBias() const { return mNormalMapMipBias; }
180
180
 
181
181
 
182
182
 
@@ -186,23 +186,34 @@ protected:
186
186
  // Per light parameters.
187
187
  struct _OgreRTSSExport LightParams
188
188
  {
189
- Light::LightTypes mType; // Light type.
190
- UniformParameterPtr mPosition; // Light position.
191
- ParameterPtr mVSOutToLightDir; // Vertex shader output vertex position to light position direction (texture space).
192
- ParameterPtr mPSInToLightDir; // Pixel shader input vertex position to light position direction (texture space).
193
- UniformParameterPtr mDirection; // Light direction.
194
- ParameterPtr mVSOutDirection; // Vertex shader output light direction (texture space).
195
- ParameterPtr mPSInDirection; // Pixel shader input light direction (texture space).
196
- UniformParameterPtr mAttenuatParams; // Attenuation parameters.
197
- UniformParameterPtr mSpotParams; // Spot light parameters.
198
- UniformParameterPtr mDiffuseColour; // Diffuse colour.
199
- UniformParameterPtr mSpecularColour; // Specular colour.
189
+ // Light type.
190
+ Light::LightTypes mType;
191
+ // Light position.
192
+ UniformParameterPtr mPosition;
193
+ // Vertex shader output vertex position to light position direction (texture space).
194
+ ParameterPtr mVSOutToLightDir;
195
+ // Pixel shader input vertex position to light position direction (texture space).
196
+ ParameterPtr mPSInToLightDir;
197
+ // Light direction.
198
+ UniformParameterPtr mDirection;
199
+ // Vertex shader output light direction (texture space).
200
+ ParameterPtr mVSOutDirection;
201
+ // Pixel shader input light direction (texture space).
202
+ ParameterPtr mPSInDirection;
203
+ // Attenuation parameters.
204
+ UniformParameterPtr mAttenuatParams;
205
+ // Spot light parameters.
206
+ UniformParameterPtr mSpotParams;
207
+ // Diffuse colour.
208
+ UniformParameterPtr mDiffuseColour;
209
+ // Specular colour.
210
+ UniformParameterPtr mSpecularColour;
200
211
 
201
212
  };
202
213
 
203
- typedef vector<LightParams>::type LightParamsList;
204
- typedef LightParamsList::iterator LightParamsIterator;
205
- typedef LightParamsList::const_iterator LightParamsConstIterator;
214
+ typedef vector<LightParams>::type LightParamsList;
215
+ typedef LightParamsList::iterator LightParamsIterator;
216
+ typedef LightParamsList::const_iterator LightParamsConstIterator;
206
217
 
207
218
  // Protected methods
208
219
  protected:
@@ -212,137 +223,180 @@ protected:
212
223
  can be the vertex colour component. To establish such a link one should provide the matching flags to this
213
224
  sub render state.
214
225
  */
215
- void setTrackVertexColourType(TrackVertexColourType type) { mTrackVertexColourType = type; }
226
+ void setTrackVertexColourType(TrackVertexColourType type) { mTrackVertexColourType = type; }
216
227
 
217
228
  /**
218
229
  Return the current track per vertex type.
219
230
  */
220
- TrackVertexColourType getTrackVertexColourType() const { return mTrackVertexColourType; }
231
+ TrackVertexColourType getTrackVertexColourType() const { return mTrackVertexColourType; }
221
232
 
222
233
 
223
234
  /**
224
235
  Set the light count per light type that this sub render state will generate.
225
236
  @see ShaderGenerator::setLightCount.
226
237
  */
227
- void setLightCount (const int lightCount[3]);
238
+ void setLightCount(const int lightCount[3]);
228
239
 
229
240
  /**
230
241
  Get the light count per light type that this sub render state will generate.
231
242
  @see ShaderGenerator::getLightCount.
232
243
  */
233
- void getLightCount (int lightCount[3]) const;
244
+ void getLightCount(int lightCount[3]) const;
234
245
  /**
235
246
  Set the specular component state. If set to true this sub render state will compute a specular
236
247
  lighting component in addition to the diffuse component.
237
248
  @param enable Pass true to enable specular component computation.
238
249
  */
239
- void setSpecularEnable (bool enable) { mSpecularEnable = enable; }
250
+ void setSpecularEnable(bool enable) { mSpecularEnable = enable; }
240
251
 
241
252
  /**
242
253
  Get the specular component state.
243
254
  */
244
- bool getSpecularEnable () const { return mSpecularEnable; }
255
+ bool getSpecularEnable() const { return mSpecularEnable; }
245
256
 
246
257
 
247
258
  /**
248
259
  @see SubRenderState::resolveParameters.
249
260
  */
250
- virtual bool resolveParameters (ProgramSet* programSet);
261
+ virtual bool resolveParameters(ProgramSet* programSet);
251
262
 
252
263
  /** Resolve global lighting parameters */
253
- bool resolveGlobalParameters (ProgramSet* programSet);
264
+ bool resolveGlobalParameters(ProgramSet* programSet);
254
265
 
255
266
  /** Resolve per light parameters */
256
- bool resolvePerLightParameters (ProgramSet* programSet);
267
+ bool resolvePerLightParameters(ProgramSet* programSet);
257
268
 
258
269
  /**
259
270
  @see SubRenderState::resolveDependencies.
260
271
  */
261
- virtual bool resolveDependencies (ProgramSet* programSet);
272
+ virtual bool resolveDependencies(ProgramSet* programSet);
262
273
 
263
274
  /**
264
275
  @see SubRenderState::addFunctionInvocations.
265
276
  */
266
- virtual bool addFunctionInvocations (ProgramSet* programSet);
277
+ virtual bool addFunctionInvocations(ProgramSet* programSet);
267
278
 
268
279
 
269
280
  /**
270
281
  Internal method that adds related vertex shader functions invocations.
271
282
  */
272
- bool addVSInvocation (Function* vsMain, const int groupOrder, int& internalCounter);
283
+ bool addVSInvocation(Function* vsMain, const int groupOrder, int& internalCounter);
273
284
 
274
285
  /**
275
286
  Internal method that adds per light illumination component functions invocations.
276
287
  */
277
- bool addVSIlluminationInvocation (LightParams* curLightParams, Function* vsMain, const int groupOrder, int& internalCounter);
288
+ bool addVSIlluminationInvocation(LightParams* curLightParams, Function* vsMain, const int groupOrder, int& internalCounter);
278
289
 
279
290
  /**
280
291
  Internal method that perform normal fetch invocation.
281
292
  */
282
- bool addPSNormalFetchInvocation (Function* psMain, const int groupOrder, int& internalCounter);
293
+ bool addPSNormalFetchInvocation(Function* psMain, const int groupOrder, int& internalCounter);
283
294
 
284
295
 
285
296
  /**
286
297
  Internal method that adds global illumination component functions invocations.
287
298
  */
288
- bool addPSGlobalIlluminationInvocation (Function* psMain, const int groupOrder, int& internalCounter);
299
+ bool addPSGlobalIlluminationInvocation(Function* psMain, const int groupOrder, int& internalCounter);
289
300
 
290
301
  /**
291
302
  Internal method that adds per light illumination component functions invocations.
292
303
  */
293
- bool addPSIlluminationInvocation (LightParams* curLightParams, Function* psMain, const int groupOrder, int& internalCounter);
304
+ bool addPSIlluminationInvocation(LightParams* curLightParams, Function* psMain, const int groupOrder, int& internalCounter);
294
305
 
295
306
  /**
296
307
  Internal method that adds the final colour assignments.
297
308
  */
298
- bool addPSFinalAssignmentInvocation (Function* psMain, const int groupOrder, int& internalCounter);
309
+ bool addPSFinalAssignmentInvocation(Function* psMain, const int groupOrder, int& internalCounter);
299
310
 
300
311
 
301
312
  // Attributes.
302
313
  protected:
303
- String mNormalMapTextureName; // The normal map texture name.
304
- TrackVertexColourType mTrackVertexColourType; // Track per vertex colour type.
305
- bool mSpecularEnable; // Specular component enabled/disabled.
306
- LightParamsList mLightParamsList; // Light list.
307
- unsigned short mNormalMapSamplerIndex; // Normal map texture sampler index.
308
- unsigned int mVSTexCoordSetIndex; // Vertex shader input texture coordinate set index.
309
- FilterOptions mNormalMapMinFilter; // The normal map min filter.
310
- FilterOptions mNormalMapMagFilter; // The normal map mag filter.
311
- FilterOptions mNormalMapMipFilter; // The normal map mip filter.
312
- unsigned int mNormalMapAnisotropy; // The normal map max anisotropy value.
313
- Real mNormalMapMipBias; // The normal map mip map bias.
314
- NormalMapSpace mNormalMapSpace; // The normal map space.
315
- UniformParameterPtr mWorldMatrix; // World matrix parameter.
316
- UniformParameterPtr mWorldInvRotMatrix; // World matrix inverse rotation matrix parameter.
317
- UniformParameterPtr mCamPosWorldSpace; // Camera position in world space parameter.
318
- ParameterPtr mVSInPosition; // Vertex shader input position parameter.
319
- ParameterPtr mVSWorldPosition; // Vertex shader world position parameter.
320
- ParameterPtr mVSOutView; // Vertex shader output view vector (position in camera space) parameter.
321
- ParameterPtr mPSInView; // Pixel shader input view position (position in camera space) parameter.
322
- ParameterPtr mVSInNormal; // Vertex shader input normal.
323
- ParameterPtr mVSInTangent; // Vertex shader input tangent.
324
- ParameterPtr mVSTBNMatrix; // Vertex shader local TNB matrix.
325
- ParameterPtr mVSLocalDir; // Vertex shader local light direction.
326
- UniformParameterPtr mNormalMapSampler; // Normal map texture sampler parameter.
327
- ParameterPtr mPSNormal; // Pixel shader normal parameter.
328
- ParameterPtr mVSInTexcoord; // Vertex shader input texture coordinates.
329
- ParameterPtr mVSOutTexcoord; // Vertex shader output texture coordinates.
330
- ParameterPtr mPSInTexcoord; // Pixel shader input texture coordinates.
331
- ParameterPtr mPSTempDiffuseColour; // Pixel shader temporary diffuse calculation parameter.
332
- ParameterPtr mPSTempSpecularColour; // Pixel shader temporary specular calculation parameter.
333
- ParameterPtr mPSDiffuse; // Pixel shader input/local diffuse parameter.
334
- ParameterPtr mPSSpecular; // Pixel shader input/local specular parameter.
335
- ParameterPtr mPSOutDiffuse; // Pixel shader output diffuse parameter.
336
- ParameterPtr mPSOutSpecular; // Pixel shader output specular parameter.
337
- UniformParameterPtr mDerivedSceneColour; // Derived scene colour parameter.
338
- UniformParameterPtr mLightAmbientColour; // Ambient light colour parameter.
339
- UniformParameterPtr mDerivedAmbientLightColour; // Derived ambient light colour parameter.
340
- UniformParameterPtr mSurfaceAmbientColour; // Surface ambient colour parameter.
341
- UniformParameterPtr mSurfaceDiffuseColour; // Surface diffuse colour parameter.
342
- UniformParameterPtr mSurfaceSpecularColour; // Surface specular colour parameter.
343
- UniformParameterPtr mSurfaceEmissiveColour; // Surface emissive colour parameter.
344
- UniformParameterPtr mSurfaceShininess; // Surface shininess parameter.
345
- static Light msBlankLight; // Shared blank light.
314
+ // The normal map texture name.
315
+ String mNormalMapTextureName;
316
+ // Track per vertex colour type.
317
+ TrackVertexColourType mTrackVertexColourType;
318
+ // Specular component enabled/disabled.
319
+ bool mSpecularEnable;
320
+ // Light list.
321
+ LightParamsList mLightParamsList;
322
+ // Normal map texture sampler index.
323
+ unsigned short mNormalMapSamplerIndex;
324
+ // Vertex shader input texture coordinate set index.
325
+ unsigned int mVSTexCoordSetIndex;
326
+ // The normal map min filter.
327
+ FilterOptions mNormalMapMinFilter;
328
+ // The normal map mag filter.
329
+ FilterOptions mNormalMapMagFilter;
330
+ // The normal map mip filter.
331
+ FilterOptions mNormalMapMipFilter;
332
+ // The normal map max anisotropy value.
333
+ unsigned int mNormalMapAnisotropy;
334
+ // The normal map mip map bias.
335
+ Real mNormalMapMipBias;
336
+ // The normal map space.
337
+ NormalMapSpace mNormalMapSpace;
338
+ // World matrix parameter.
339
+ UniformParameterPtr mWorldMatrix;
340
+ // World matrix inverse rotation matrix parameter.
341
+ UniformParameterPtr mWorldInvRotMatrix;
342
+ // Camera position in world space parameter.
343
+ UniformParameterPtr mCamPosWorldSpace;
344
+ // Vertex shader input position parameter.
345
+ ParameterPtr mVSInPosition;
346
+ // Vertex shader world position parameter.
347
+ ParameterPtr mVSWorldPosition;
348
+ // Vertex shader output view vector (position in camera space) parameter.
349
+ ParameterPtr mVSOutView;
350
+ // Pixel shader input view position (position in camera space) parameter.
351
+ ParameterPtr mPSInView;
352
+ // Vertex shader input normal.
353
+ ParameterPtr mVSInNormal;
354
+ // Vertex shader input tangent.
355
+ ParameterPtr mVSInTangent;
356
+ // Vertex shader local TNB matrix.
357
+ ParameterPtr mVSTBNMatrix;
358
+ // Vertex shader local light direction.
359
+ ParameterPtr mVSLocalDir;
360
+ // Normal map texture sampler parameter.
361
+ UniformParameterPtr mNormalMapSampler;
362
+ // Pixel shader normal parameter.
363
+ ParameterPtr mPSNormal;
364
+ // Vertex shader input texture coordinates.
365
+ ParameterPtr mVSInTexcoord;
366
+ // Vertex shader output texture coordinates.
367
+ ParameterPtr mVSOutTexcoord;
368
+ // Pixel shader input texture coordinates.
369
+ ParameterPtr mPSInTexcoord;
370
+ // Pixel shader temporary diffuse calculation parameter.
371
+ ParameterPtr mPSTempDiffuseColour;
372
+ // Pixel shader temporary specular calculation parameter.
373
+ ParameterPtr mPSTempSpecularColour;
374
+ // Pixel shader input/local diffuse parameter.
375
+ ParameterPtr mPSDiffuse;
376
+ // Pixel shader input/local specular parameter.
377
+ ParameterPtr mPSSpecular;
378
+ // Pixel shader output diffuse parameter.
379
+ ParameterPtr mPSOutDiffuse;
380
+ // Pixel shader output specular parameter.
381
+ ParameterPtr mPSOutSpecular;
382
+ // Derived scene colour parameter.
383
+ UniformParameterPtr mDerivedSceneColour;
384
+ // Ambient light colour parameter.
385
+ UniformParameterPtr mLightAmbientColour;
386
+ // Derived ambient light colour parameter.
387
+ UniformParameterPtr mDerivedAmbientLightColour;
388
+ // Surface ambient colour parameter.
389
+ UniformParameterPtr mSurfaceAmbientColour;
390
+ // Surface diffuse colour parameter.
391
+ UniformParameterPtr mSurfaceDiffuseColour;
392
+ // Surface specular colour parameter.
393
+ UniformParameterPtr mSurfaceSpecularColour;
394
+ // Surface emissive colour parameter.
395
+ UniformParameterPtr mSurfaceEmissiveColour;
396
+ // Surface shininess parameter.
397
+ UniformParameterPtr mSurfaceShininess;
398
+ // Shared blank light.
399
+ static Light msBlankLight;
346
400
  };
347
401
 
348
402
 
@@ -357,17 +411,17 @@ public:
357
411
  /**
358
412
  @see SubRenderStateFactory::getType.
359
413
  */
360
- virtual const String& getType () const;
414
+ virtual const String& getType() const;
361
415
 
362
416
  /**
363
417
  @see SubRenderStateFactory::createInstance.
364
418
  */
365
- virtual SubRenderState* createInstance (ScriptCompiler* compiler, PropertyAbstractNode* prop, Pass* pass, SGScriptTranslator* translator);
419
+ virtual SubRenderState* createInstance(ScriptCompiler* compiler, PropertyAbstractNode* prop, Pass* pass, SGScriptTranslator* translator);
366
420
 
367
421
  /**
368
422
  @see SubRenderStateFactory::writeInstance.
369
423
  */
370
- virtual void writeInstance (MaterialSerializer* ser, SubRenderState* subRenderState, Pass* srcPass, Pass* dstPass);
424
+ virtual void writeInstance(MaterialSerializer* ser, SubRenderState* subRenderState, Pass* srcPass, Pass* dstPass);
371
425
 
372
426
 
373
427
  protected:
@@ -375,7 +429,7 @@ protected:
375
429
  /**
376
430
  @see SubRenderStateFactory::createInstanceImpl.
377
431
  */
378
- virtual SubRenderState* createInstanceImpl ();
432
+ virtual SubRenderState* createInstanceImpl();
379
433
 
380
434
 
381
435
  };