ruby-ogre 0.0.1-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 (1607) hide show
  1. data/INSTALL.md +24 -0
  2. data/LICENSE +23 -0
  3. data/README.md +39 -0
  4. data/Rakefile +271 -0
  5. data/bindings/ogre/interface/AnyVALUE.h +21 -0
  6. data/bindings/ogre/interface/GLX/OgreConfigDialogImp.i +8 -0
  7. data/bindings/ogre/interface/GLX/OgreErrorDialogImp.i +8 -0
  8. data/bindings/ogre/interface/GLX/OgreTimerImp.i +8 -0
  9. data/bindings/ogre/interface/Makefile +19 -0
  10. data/bindings/ogre/interface/Ogre.i +8 -0
  11. data/bindings/ogre/interface/OgreAlignedAllocator.i +10 -0
  12. data/bindings/ogre/interface/OgreAnimable.i +6 -0
  13. data/bindings/ogre/interface/OgreAnimation.i +8 -0
  14. data/bindings/ogre/interface/OgreAnimationBlender.i +8 -0
  15. data/bindings/ogre/interface/OgreAnimationState.i +31 -0
  16. data/bindings/ogre/interface/OgreAnimationTrack.i +6 -0
  17. data/bindings/ogre/interface/OgreAny.i +381 -0
  18. data/bindings/ogre/interface/OgreArchive.i +6 -0
  19. data/bindings/ogre/interface/OgreArchiveFactory.i +10 -0
  20. data/bindings/ogre/interface/OgreArchiveManager.i +8 -0
  21. data/bindings/ogre/interface/OgreAtomicWrappers.i +8 -0
  22. data/bindings/ogre/interface/OgreAutoParamDataSource.i +8 -0
  23. data/bindings/ogre/interface/OgreAxisAlignedBox.i +6 -0
  24. data/bindings/ogre/interface/OgreBillboard.i +8 -0
  25. data/bindings/ogre/interface/OgreBillboardChain.i +8 -0
  26. data/bindings/ogre/interface/OgreBillboardParticleRenderer.i +8 -0
  27. data/bindings/ogre/interface/OgreBillboardSet.i +8 -0
  28. data/bindings/ogre/interface/OgreBitwise.i +10 -0
  29. data/bindings/ogre/interface/OgreBlendMode.i +6 -0
  30. data/bindings/ogre/interface/OgreBone.i +8 -0
  31. data/bindings/ogre/interface/OgreBorderPanelOverlayElement.i +14 -0
  32. data/bindings/ogre/interface/OgreBuildSettings.i +8 -0
  33. data/bindings/ogre/interface/OgreCamera.i +6 -0
  34. data/bindings/ogre/interface/OgreCodec.i +8 -0
  35. data/bindings/ogre/interface/OgreColourValue.i +6 -0
  36. data/bindings/ogre/interface/OgreCommon.i +12 -0
  37. data/bindings/ogre/interface/OgreCompositionPass.i +8 -0
  38. data/bindings/ogre/interface/OgreCompositionTargetPass.i +8 -0
  39. data/bindings/ogre/interface/OgreCompositionTechnique.i +13 -0
  40. data/bindings/ogre/interface/OgreCompositor.i +8 -0
  41. data/bindings/ogre/interface/OgreCompositorChain.i +8 -0
  42. data/bindings/ogre/interface/OgreCompositorInstance.i +8 -0
  43. data/bindings/ogre/interface/OgreCompositorLogic.i +8 -0
  44. data/bindings/ogre/interface/OgreCompositorManager.i +8 -0
  45. data/bindings/ogre/interface/OgreConfig.i +8 -0
  46. data/bindings/ogre/interface/OgreConfigDialog.i +8 -0
  47. data/bindings/ogre/interface/OgreConfigFile.i +88 -0
  48. data/bindings/ogre/interface/OgreConfigOptionMap.i +6 -0
  49. data/bindings/ogre/interface/OgreController.i +8 -0
  50. data/bindings/ogre/interface/OgreControllerManager.i +8 -0
  51. data/bindings/ogre/interface/OgreConvexBody.i +8 -0
  52. data/bindings/ogre/interface/OgreCustomCompositionPass.i +8 -0
  53. data/bindings/ogre/interface/OgreDDSCodec.i +8 -0
  54. data/bindings/ogre/interface/OgreDataStream.i +6 -0
  55. data/bindings/ogre/interface/OgreDefaultHardwareBufferManager.i +8 -0
  56. data/bindings/ogre/interface/OgreDeflate.i +8 -0
  57. data/bindings/ogre/interface/OgreDepthBuffer.i +8 -0
  58. data/bindings/ogre/interface/OgreDistanceLodStrategy.i +8 -0
  59. data/bindings/ogre/interface/OgreDualQuaternion.i +8 -0
  60. data/bindings/ogre/interface/OgreDynLib.i +8 -0
  61. data/bindings/ogre/interface/OgreDynLibManager.i +8 -0
  62. data/bindings/ogre/interface/OgreEdgeListBuilder.i +8 -0
  63. data/bindings/ogre/interface/OgreEntity.i +6 -0
  64. data/bindings/ogre/interface/OgreErrorDialog.i +8 -0
  65. data/bindings/ogre/interface/OgreException.i +8 -0
  66. data/bindings/ogre/interface/OgreExternalTextureSource.i +8 -0
  67. data/bindings/ogre/interface/OgreExternalTextureSourceManager.i +8 -0
  68. data/bindings/ogre/interface/OgreFactoryObj.i +8 -0
  69. data/bindings/ogre/interface/OgreFileSystem.i +8 -0
  70. data/bindings/ogre/interface/OgreFont.i +8 -0
  71. data/bindings/ogre/interface/OgreFontManager.i +8 -0
  72. data/bindings/ogre/interface/OgreFrameListener.i +9 -0
  73. data/bindings/ogre/interface/OgreFreeImageCodec.i +8 -0
  74. data/bindings/ogre/interface/OgreFrustum.i +6 -0
  75. data/bindings/ogre/interface/OgreGpuProgram.i +6 -0
  76. data/bindings/ogre/interface/OgreGpuProgramManager.i +8 -0
  77. data/bindings/ogre/interface/OgreGpuProgramParams.i +13 -0
  78. data/bindings/ogre/interface/OgreGpuProgramUsage.i +8 -0
  79. data/bindings/ogre/interface/OgreHardwareBuffer.i +6 -0
  80. data/bindings/ogre/interface/OgreHardwareBufferManager.i +8 -0
  81. data/bindings/ogre/interface/OgreHardwareIndexBuffer.i +6 -0
  82. data/bindings/ogre/interface/OgreHardwareOcclusionQuery.i +8 -0
  83. data/bindings/ogre/interface/OgreHardwarePixelBuffer.i +6 -0
  84. data/bindings/ogre/interface/OgreHardwareVertexBuffer.i +6 -0
  85. data/bindings/ogre/interface/OgreHeaderPrefix.i +8 -0
  86. data/bindings/ogre/interface/OgreHeaderSuffix.i +8 -0
  87. data/bindings/ogre/interface/OgreHighLevelGpuProgram.i +8 -0
  88. data/bindings/ogre/interface/OgreHighLevelGpuProgramManager.i +8 -0
  89. data/bindings/ogre/interface/OgreImage.i +6 -0
  90. data/bindings/ogre/interface/OgreImageCodec.i +8 -0
  91. data/bindings/ogre/interface/OgreInstanceBatch.i +8 -0
  92. data/bindings/ogre/interface/OgreInstanceBatchHW.i +8 -0
  93. data/bindings/ogre/interface/OgreInstanceBatchHW_VTF.i +8 -0
  94. data/bindings/ogre/interface/OgreInstanceBatchShader.i +8 -0
  95. data/bindings/ogre/interface/OgreInstanceBatchVTF.i +8 -0
  96. data/bindings/ogre/interface/OgreInstanceManager.i +8 -0
  97. data/bindings/ogre/interface/OgreInstancedEntity.i +8 -0
  98. data/bindings/ogre/interface/OgreInstancedGeometry.i +9 -0
  99. data/bindings/ogre/interface/OgreIteratorRange.i +8 -0
  100. data/bindings/ogre/interface/OgreIteratorWrapper.i +6 -0
  101. data/bindings/ogre/interface/OgreIteratorWrappers.i +8 -0
  102. data/bindings/ogre/interface/OgreKeyFrame.i +13 -0
  103. data/bindings/ogre/interface/OgreLight.i +6 -0
  104. data/bindings/ogre/interface/OgreLodListener.i +6 -0
  105. data/bindings/ogre/interface/OgreLodStrategy.i +8 -0
  106. data/bindings/ogre/interface/OgreLodStrategyManager.i +10 -0
  107. data/bindings/ogre/interface/OgreLog.i +11 -0
  108. data/bindings/ogre/interface/OgreLogManager.i +8 -0
  109. data/bindings/ogre/interface/OgreManualObject.i +8 -0
  110. data/bindings/ogre/interface/OgreMaterial.i +17 -0
  111. data/bindings/ogre/interface/OgreMaterialManager.i +6 -0
  112. data/bindings/ogre/interface/OgreMaterialSerializer.i +8 -0
  113. data/bindings/ogre/interface/OgreMath.i +5 -0
  114. data/bindings/ogre/interface/OgreMatrix3.i +8 -0
  115. data/bindings/ogre/interface/OgreMatrix4.i +6 -0
  116. data/bindings/ogre/interface/OgreMemoryAllocatedObject.i +8 -0
  117. data/bindings/ogre/interface/OgreMemoryAllocatorConfig.i +7 -0
  118. data/bindings/ogre/interface/OgreMemoryNedAlloc.i +8 -0
  119. data/bindings/ogre/interface/OgreMemoryNedPooling.i +6 -0
  120. data/bindings/ogre/interface/OgreMemorySTLAllocator.i +5 -0
  121. data/bindings/ogre/interface/OgreMemoryStdAlloc.i +8 -0
  122. data/bindings/ogre/interface/OgreMemoryTracker.i +8 -0
  123. data/bindings/ogre/interface/OgreMesh.i +11 -0
  124. data/bindings/ogre/interface/OgreMeshFileFormat.i +8 -0
  125. data/bindings/ogre/interface/OgreMeshManager.i +6 -0
  126. data/bindings/ogre/interface/OgreMeshSerializer.i +8 -0
  127. data/bindings/ogre/interface/OgreMeshSerializerImpl.i +8 -0
  128. data/bindings/ogre/interface/OgreMovableObject.i +12 -0
  129. data/bindings/ogre/interface/OgreMovablePlane.i +8 -0
  130. data/bindings/ogre/interface/OgreNode.i +8 -0
  131. data/bindings/ogre/interface/OgreNumerics.i +8 -0
  132. data/bindings/ogre/interface/OgreOptimisedUtil.i +8 -0
  133. data/bindings/ogre/interface/OgreOverlay.i +6 -0
  134. data/bindings/ogre/interface/OgreOverlayContainer.i +37 -0
  135. data/bindings/ogre/interface/OgreOverlayElement.i +6 -0
  136. data/bindings/ogre/interface/OgreOverlayElementCommands.i +8 -0
  137. data/bindings/ogre/interface/OgreOverlayElementFactory.i +8 -0
  138. data/bindings/ogre/interface/OgreOverlayManager.i +20 -0
  139. data/bindings/ogre/interface/OgrePanelOverlayElement.i +14 -0
  140. data/bindings/ogre/interface/OgreParticle.i +8 -0
  141. data/bindings/ogre/interface/OgreParticleAffector.i +8 -0
  142. data/bindings/ogre/interface/OgreParticleAffectorFactory.i +8 -0
  143. data/bindings/ogre/interface/OgreParticleEmitter.i +8 -0
  144. data/bindings/ogre/interface/OgreParticleEmitterCommands.i +8 -0
  145. data/bindings/ogre/interface/OgreParticleEmitterFactory.i +8 -0
  146. data/bindings/ogre/interface/OgreParticleIterator.i +8 -0
  147. data/bindings/ogre/interface/OgreParticleScriptCompiler.i +8 -0
  148. data/bindings/ogre/interface/OgreParticleSystem.i +8 -0
  149. data/bindings/ogre/interface/OgreParticleSystemManager.i +8 -0
  150. data/bindings/ogre/interface/OgreParticleSystemRenderer.i +10 -0
  151. data/bindings/ogre/interface/OgrePass.i +6 -0
  152. data/bindings/ogre/interface/OgrePatchMesh.i +6 -0
  153. data/bindings/ogre/interface/OgrePatchSurface.i +6 -0
  154. data/bindings/ogre/interface/OgrePixelCountLodStrategy.i +8 -0
  155. data/bindings/ogre/interface/OgrePixelFormat.i +6 -0
  156. data/bindings/ogre/interface/OgrePlane.i +6 -0
  157. data/bindings/ogre/interface/OgrePlaneBoundedVolume.i +6 -0
  158. data/bindings/ogre/interface/OgrePlatform.i +6 -0
  159. data/bindings/ogre/interface/OgrePlatformInformation.i +8 -0
  160. data/bindings/ogre/interface/OgrePlugin.i +8 -0
  161. data/bindings/ogre/interface/OgrePolygon.i +8 -0
  162. data/bindings/ogre/interface/OgrePose.i +6 -0
  163. data/bindings/ogre/interface/OgrePredefinedControllers.i +8 -0
  164. data/bindings/ogre/interface/OgrePrefabFactory.i +8 -0
  165. data/bindings/ogre/interface/OgrePrerequisites.i +11 -0
  166. data/bindings/ogre/interface/OgreProfiler.i +8 -0
  167. data/bindings/ogre/interface/OgreProgressiveMesh.i +8 -0
  168. data/bindings/ogre/interface/OgreQuaternion.i +6 -0
  169. data/bindings/ogre/interface/OgreRadixSort.i +8 -0
  170. data/bindings/ogre/interface/OgreRay.i +8 -0
  171. data/bindings/ogre/interface/OgreRectangle.i +6 -0
  172. data/bindings/ogre/interface/OgreRectangle2D.i +6 -0
  173. data/bindings/ogre/interface/OgreRenderObjectListener.i +8 -0
  174. data/bindings/ogre/interface/OgreRenderOperation.i +8 -0
  175. data/bindings/ogre/interface/OgreRenderQueue.i +6 -0
  176. data/bindings/ogre/interface/OgreRenderQueueInvocation.i +8 -0
  177. data/bindings/ogre/interface/OgreRenderQueueListener.i +8 -0
  178. data/bindings/ogre/interface/OgreRenderQueueSortingGrouping.i +11 -0
  179. data/bindings/ogre/interface/OgreRenderSystem.i +23 -0
  180. data/bindings/ogre/interface/OgreRenderSystemCapabilities.i +6 -0
  181. data/bindings/ogre/interface/OgreRenderSystemCapabilitiesManager.i +8 -0
  182. data/bindings/ogre/interface/OgreRenderSystemCapabilitiesSerializer.i +8 -0
  183. data/bindings/ogre/interface/OgreRenderTarget.i +6 -0
  184. data/bindings/ogre/interface/OgreRenderTargetListener.i +8 -0
  185. data/bindings/ogre/interface/OgreRenderTexture.i +8 -0
  186. data/bindings/ogre/interface/OgreRenderToVertexBuffer.i +8 -0
  187. data/bindings/ogre/interface/OgreRenderWindow.i +6 -0
  188. data/bindings/ogre/interface/OgreRenderable.i +6 -0
  189. data/bindings/ogre/interface/OgreResource.i +9 -0
  190. data/bindings/ogre/interface/OgreResourceBackgroundQueue.i +8 -0
  191. data/bindings/ogre/interface/OgreResourceGroupManager.i +20 -0
  192. data/bindings/ogre/interface/OgreResourceManager.i +30 -0
  193. data/bindings/ogre/interface/OgreRibbonTrail.i +17 -0
  194. data/bindings/ogre/interface/OgreRoot.i +44 -0
  195. data/bindings/ogre/interface/OgreRotationalSpline.i +8 -0
  196. data/bindings/ogre/interface/OgreSceneManager.i +59 -0
  197. data/bindings/ogre/interface/OgreSceneManagerEnumerator.i +11 -0
  198. data/bindings/ogre/interface/OgreSceneNode.i +9 -0
  199. data/bindings/ogre/interface/OgreSceneQuery.i +6 -0
  200. data/bindings/ogre/interface/OgreScriptCompiler.i +11 -0
  201. data/bindings/ogre/interface/OgreScriptLexer.i +8 -0
  202. data/bindings/ogre/interface/OgreScriptLoader.i +8 -0
  203. data/bindings/ogre/interface/OgreScriptParser.i +8 -0
  204. data/bindings/ogre/interface/OgreScriptTranslator.i +8 -0
  205. data/bindings/ogre/interface/OgreSearchOps.i +8 -0
  206. data/bindings/ogre/interface/OgreSerializer.i +6 -0
  207. data/bindings/ogre/interface/OgreShadowCameraSetup.i +6 -0
  208. data/bindings/ogre/interface/OgreShadowCameraSetupFocused.i +8 -0
  209. data/bindings/ogre/interface/OgreShadowCameraSetupLiSPSM.i +8 -0
  210. data/bindings/ogre/interface/OgreShadowCameraSetupPSSM.i +8 -0
  211. data/bindings/ogre/interface/OgreShadowCameraSetupPlaneOptimal.i +8 -0
  212. data/bindings/ogre/interface/OgreShadowCaster.i +8 -0
  213. data/bindings/ogre/interface/OgreShadowTextureManager.i +6 -0
  214. data/bindings/ogre/interface/OgreShadowVolumeExtrudeProgram.i +8 -0
  215. data/bindings/ogre/interface/OgreSharedPtr.i +6 -0
  216. data/bindings/ogre/interface/OgreSimpleRenderable.i +6 -0
  217. data/bindings/ogre/interface/OgreSimpleSpline.i +8 -0
  218. data/bindings/ogre/interface/OgreSingleton.i +8 -0
  219. data/bindings/ogre/interface/OgreSkeleton.i +6 -0
  220. data/bindings/ogre/interface/OgreSkeletonFileFormat.i +8 -0
  221. data/bindings/ogre/interface/OgreSkeletonInstance.i +6 -0
  222. data/bindings/ogre/interface/OgreSkeletonManager.i +8 -0
  223. data/bindings/ogre/interface/OgreSkeletonSerializer.i +8 -0
  224. data/bindings/ogre/interface/OgreSmallVector.i +8 -0
  225. data/bindings/ogre/interface/OgreSphere.i +8 -0
  226. data/bindings/ogre/interface/OgreSpotShadowFadePng.i +8 -0
  227. data/bindings/ogre/interface/OgreStableHeaders.i +8 -0
  228. data/bindings/ogre/interface/OgreStaticFaceGroup.i +8 -0
  229. data/bindings/ogre/interface/OgreStaticGeometry.i +13 -0
  230. data/bindings/ogre/interface/OgreStaticPluginLoader.i +8 -0
  231. data/bindings/ogre/interface/OgreStdHeaders.i +8 -0
  232. data/bindings/ogre/interface/OgreStreamSerialiser.i +8 -0
  233. data/bindings/ogre/interface/OgreString.i +6 -0
  234. data/bindings/ogre/interface/OgreStringConverter.i +8 -0
  235. data/bindings/ogre/interface/OgreStringInterface.i +8 -0
  236. data/bindings/ogre/interface/OgreStringVector.i +22 -0
  237. data/bindings/ogre/interface/OgreSubEntity.i +8 -0
  238. data/bindings/ogre/interface/OgreSubMesh.i +8 -0
  239. data/bindings/ogre/interface/OgreTagPoint.i +8 -0
  240. data/bindings/ogre/interface/OgreTangentSpaceCalc.i +8 -0
  241. data/bindings/ogre/interface/OgreTechnique.i +18 -0
  242. data/bindings/ogre/interface/OgreTextAreaOverlayElement.i +8 -0
  243. data/bindings/ogre/interface/OgreTexture.i +6 -0
  244. data/bindings/ogre/interface/OgreTextureManager.i +6 -0
  245. data/bindings/ogre/interface/OgreTextureUnitState.i +6 -0
  246. data/bindings/ogre/interface/OgreTimer.i +8 -0
  247. data/bindings/ogre/interface/OgreUTFString.i +26 -0
  248. data/bindings/ogre/interface/OgreUnifiedHighLevelGpuProgram.i +10 -0
  249. data/bindings/ogre/interface/OgreUserObjectBindings.i +8 -0
  250. data/bindings/ogre/interface/OgreVector2.i +8 -0
  251. data/bindings/ogre/interface/OgreVector3.i +9 -0
  252. data/bindings/ogre/interface/OgreVector4.i +8 -0
  253. data/bindings/ogre/interface/OgreVertexBoneAssignment.i +6 -0
  254. data/bindings/ogre/interface/OgreVertexIndexData.i +8 -0
  255. data/bindings/ogre/interface/OgreViewport.i +6 -0
  256. data/bindings/ogre/interface/OgreWindowEventUtilities.i +6 -0
  257. data/bindings/ogre/interface/OgreWireBoundingBox.i +8 -0
  258. data/bindings/ogre/interface/OgreWorkQueue.i +8 -0
  259. data/bindings/ogre/interface/OgreZip.i +12 -0
  260. data/bindings/ogre/interface/Paging/OgreGrid2DPageStrategy.i +8 -0
  261. data/bindings/ogre/interface/Paging/OgreGrid3DPageStrategy.i +8 -0
  262. data/bindings/ogre/interface/Paging/OgrePage.i +8 -0
  263. data/bindings/ogre/interface/Paging/OgrePageConnection.i +8 -0
  264. data/bindings/ogre/interface/Paging/OgrePageContent.i +8 -0
  265. data/bindings/ogre/interface/Paging/OgrePageContentCollection.i +8 -0
  266. data/bindings/ogre/interface/Paging/OgrePageContentCollectionFactory.i +8 -0
  267. data/bindings/ogre/interface/Paging/OgrePageContentFactory.i +8 -0
  268. data/bindings/ogre/interface/Paging/OgrePageFileFormats.i +8 -0
  269. data/bindings/ogre/interface/Paging/OgrePageManager.i +8 -0
  270. data/bindings/ogre/interface/Paging/OgrePageStrategy.i +8 -0
  271. data/bindings/ogre/interface/Paging/OgrePagedWorld.i +8 -0
  272. data/bindings/ogre/interface/Paging/OgrePagedWorldSection.i +8 -0
  273. data/bindings/ogre/interface/Paging/OgrePaging.i +8 -0
  274. data/bindings/ogre/interface/Paging/OgrePagingPrerequisites.i +8 -0
  275. data/bindings/ogre/interface/Paging/OgreSimplePageContentCollection.i +8 -0
  276. data/bindings/ogre/interface/RTShaderSystem/OgreRTShaderSystem.i +8 -0
  277. data/bindings/ogre/interface/RTShaderSystem/OgreShaderCGProgramProcessor.i +8 -0
  278. data/bindings/ogre/interface/RTShaderSystem/OgreShaderCGProgramWriter.i +8 -0
  279. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExDualQuaternionSkinning.i +8 -0
  280. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExHardwareSkinning.i +10 -0
  281. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExHardwareSkinningTechnique.i +8 -0
  282. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExIntegratedPSSM3.i +8 -0
  283. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExLayeredBlending.i +11 -0
  284. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExLinearSkinning.i +8 -0
  285. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExNormalMapLighting.i +8 -0
  286. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExPerPixelLighting.i +8 -0
  287. data/bindings/ogre/interface/RTShaderSystem/OgreShaderExTextureAtlasSampler.i +10 -0
  288. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPColour.i +8 -0
  289. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPFog.i +8 -0
  290. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPLighting.i +8 -0
  291. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPRenderState.i +8 -0
  292. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPRenderStateBuilder.i +11 -0
  293. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPTexturing.i +8 -0
  294. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFFPTransform.i +8 -0
  295. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFunction.i +8 -0
  296. data/bindings/ogre/interface/RTShaderSystem/OgreShaderFunctionAtom.i +8 -0
  297. data/bindings/ogre/interface/RTShaderSystem/OgreShaderGLSLESProgramProcessor.i +8 -0
  298. data/bindings/ogre/interface/RTShaderSystem/OgreShaderGLSLESProgramWriter.i +11 -0
  299. data/bindings/ogre/interface/RTShaderSystem/OgreShaderGLSLProgramProcessor.i +8 -0
  300. data/bindings/ogre/interface/RTShaderSystem/OgreShaderGLSLProgramWriter.i +8 -0
  301. data/bindings/ogre/interface/RTShaderSystem/OgreShaderGenerator.i +8 -0
  302. data/bindings/ogre/interface/RTShaderSystem/OgreShaderHLSLProgramProcessor.i +8 -0
  303. data/bindings/ogre/interface/RTShaderSystem/OgreShaderHLSLProgramWriter.i +8 -0
  304. data/bindings/ogre/interface/RTShaderSystem/OgreShaderMaterialSerializerListener.i +8 -0
  305. data/bindings/ogre/interface/RTShaderSystem/OgreShaderParameter.i +8 -0
  306. data/bindings/ogre/interface/RTShaderSystem/OgreShaderPrerequisites.i +8 -0
  307. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgram.i +8 -0
  308. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgramManager.i +8 -0
  309. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgramProcessor.i +8 -0
  310. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgramSet.i +8 -0
  311. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgramWriter.i +8 -0
  312. data/bindings/ogre/interface/RTShaderSystem/OgreShaderProgramWriterManager.i +8 -0
  313. data/bindings/ogre/interface/RTShaderSystem/OgreShaderRenderState.i +8 -0
  314. data/bindings/ogre/interface/RTShaderSystem/OgreShaderScriptTranslator.i +8 -0
  315. data/bindings/ogre/interface/RTShaderSystem/OgreShaderSubRenderState.i +8 -0
  316. data/bindings/ogre/interface/Terrain/OgreTerrain.i +14 -0
  317. data/bindings/ogre/interface/Terrain/OgreTerrainGroup.i +79 -0
  318. data/bindings/ogre/interface/Terrain/OgreTerrainLayerBlendMap.i +8 -0
  319. data/bindings/ogre/interface/Terrain/OgreTerrainMaterialGenerator.i +8 -0
  320. data/bindings/ogre/interface/Terrain/OgreTerrainMaterialGeneratorA.i +8 -0
  321. data/bindings/ogre/interface/Terrain/OgreTerrainPagedWorldSection.i +8 -0
  322. data/bindings/ogre/interface/Terrain/OgreTerrainPaging.i +8 -0
  323. data/bindings/ogre/interface/Terrain/OgreTerrainPrerequisites.i +8 -0
  324. data/bindings/ogre/interface/Terrain/OgreTerrainQuadTreeNode.i +8 -0
  325. data/bindings/ogre/interface/Threading/OgreDefaultWorkQueue.i +8 -0
  326. data/bindings/ogre/interface/Threading/OgreDefaultWorkQueueStandard.i +8 -0
  327. data/bindings/ogre/interface/Threading/OgreThreadDefines.i +8 -0
  328. data/bindings/ogre/interface/Threading/OgreThreadDefinesNone.i +8 -0
  329. data/bindings/ogre/interface/Threading/OgreThreadHeaders.i +8 -0
  330. data/bindings/ogre/interface/changeFileName +6 -0
  331. data/bindings/ogre/interface/ogre.i +4 -0
  332. data/bindings/ogre/interface/ogre_all.i +353 -0
  333. data/bindings/ogre/interface/ogre_wrap.cpp +411602 -0
  334. data/bindings/ogre/interface/ogre_wrap.h +30 -0
  335. data/bindings/ogre/interface/ogre_wrap.o +0 -0
  336. data/bindings/ogrebites/interface/Makefile +19 -0
  337. data/bindings/ogrebites/interface/SdkCameraMan.i +6 -0
  338. data/bindings/ogrebites/interface/SdkTrays.i +60 -0
  339. data/bindings/ogrebites/interface/ogrebites.i +26 -0
  340. data/bindings/ogrebites/interface/ogrebites_wrap.cpp +19257 -0
  341. data/bindings/ogrebites/interface/ogrebites_wrap.h +34 -0
  342. data/bindings/ogrebites/interface/ogrebites_wrap.o +0 -0
  343. data/bindings/ois/interface/Makefile +19 -0
  344. data/bindings/ois/interface/OIS_Effect.i +8 -0
  345. data/bindings/ois/interface/OIS_Event.i +8 -0
  346. data/bindings/ois/interface/OIS_Exception.i +8 -0
  347. data/bindings/ois/interface/OIS_FactoryCreator.i +8 -0
  348. data/bindings/ois/interface/OIS_ForceFeedback.i +8 -0
  349. data/bindings/ois/interface/OIS_InputManager.i +20 -0
  350. data/bindings/ois/interface/OIS_Interface.i +8 -0
  351. data/bindings/ois/interface/OIS_JoyStick.i +8 -0
  352. data/bindings/ois/interface/OIS_Keyboard.i +15 -0
  353. data/bindings/ois/interface/OIS_Mouse.i +10 -0
  354. data/bindings/ois/interface/OIS_Object.i +22 -0
  355. data/bindings/ois/interface/OIS_Prereqs.i +20 -0
  356. data/bindings/ois/interface/ois.i +3 -0
  357. data/bindings/ois/interface/ois_all.i +23 -0
  358. data/bindings/ois/interface/ois_wrap.cpp +19311 -0
  359. data/bindings/ois/interface/ois_wrap.h +40 -0
  360. data/bindings/ois/interface/ois_wrap.o +0 -0
  361. data/bindings/procedural/interface/Makefile +19 -0
  362. data/bindings/procedural/interface/ProceduralBoxGenerator.i +12 -0
  363. data/bindings/procedural/interface/ProceduralCapsuleGenerator.i +12 -0
  364. data/bindings/procedural/interface/ProceduralConeGenerator.i +12 -0
  365. data/bindings/procedural/interface/ProceduralCylinderGenerator.i +12 -0
  366. data/bindings/procedural/interface/ProceduralExtruder.i +8 -0
  367. data/bindings/procedural/interface/ProceduralGeometryHelpers.i +15 -0
  368. data/bindings/procedural/interface/ProceduralHeader.i +8 -0
  369. data/bindings/procedural/interface/ProceduralIcoSphereGenerator.i +12 -0
  370. data/bindings/procedural/interface/ProceduralLathe.i +8 -0
  371. data/bindings/procedural/interface/ProceduralMeshGenerator.i +9 -0
  372. data/bindings/procedural/interface/ProceduralMultiShape.i +8 -0
  373. data/bindings/procedural/interface/ProceduralPath.i +8 -0
  374. data/bindings/procedural/interface/ProceduralPathGenerators.i +10 -0
  375. data/bindings/procedural/interface/ProceduralPlaneGenerator.i +12 -0
  376. data/bindings/procedural/interface/ProceduralPlatform.i +8 -0
  377. data/bindings/procedural/interface/ProceduralRoot.i +23 -0
  378. data/bindings/procedural/interface/ProceduralRoundedBoxGenerator.i +12 -0
  379. data/bindings/procedural/interface/ProceduralShape.i +8 -0
  380. data/bindings/procedural/interface/ProceduralShapeGenerators.i +10 -0
  381. data/bindings/procedural/interface/ProceduralSphereGenerator.i +11 -0
  382. data/bindings/procedural/interface/ProceduralSplines.i +8 -0
  383. data/bindings/procedural/interface/ProceduralStableHeaders.i +8 -0
  384. data/bindings/procedural/interface/ProceduralTorusGenerator.i +12 -0
  385. data/bindings/procedural/interface/ProceduralTorusKnotGenerator.i +12 -0
  386. data/bindings/procedural/interface/ProceduralTrack.i +8 -0
  387. data/bindings/procedural/interface/ProceduralTriangleBuffer.i +13 -0
  388. data/bindings/procedural/interface/ProceduralTriangulator.i +8 -0
  389. data/bindings/procedural/interface/ProceduralTubeGenerator.i +12 -0
  390. data/bindings/procedural/interface/ProceduralUtils.i +8 -0
  391. data/bindings/procedural/interface/procedural.i +41 -0
  392. data/bindings/procedural/interface/procedural_wrap.cpp +32082 -0
  393. data/bindings/procedural/interface/procedural_wrap.h +19 -0
  394. data/bindings/procedural/interface/procedural_wrap.o +0 -0
  395. data/deps/include/OGRE/ExampleApplication.h +431 -0
  396. data/deps/include/OGRE/ExampleFrameListener.h +516 -0
  397. data/deps/include/OGRE/ExampleLoadingBar.h +192 -0
  398. data/deps/include/OGRE/FileSystemLayer.h +75 -0
  399. data/deps/include/OGRE/GLX/OgreConfigDialogImp.h +75 -0
  400. data/deps/include/OGRE/GLX/OgreErrorDialogImp.h +52 -0
  401. data/deps/include/OGRE/GLX/OgreTimerImp.h +79 -0
  402. data/deps/include/OGRE/Ogre.h +133 -0
  403. data/deps/include/OGRE/OgreAlignedAllocator.h +107 -0
  404. data/deps/include/OGRE/OgreAnimable.h +335 -0
  405. data/deps/include/OGRE/OgreAnimation.h +544 -0
  406. data/deps/include/OGRE/OgreAnimationState.h +295 -0
  407. data/deps/include/OGRE/OgreAnimationTrack.h +580 -0
  408. data/deps/include/OGRE/OgreAny.h +418 -0
  409. data/deps/include/OGRE/OgreArchive.h +240 -0
  410. data/deps/include/OGRE/OgreArchiveFactory.h +70 -0
  411. data/deps/include/OGRE/OgreArchiveManager.h +139 -0
  412. data/deps/include/OGRE/OgreAtomicWrappers.h +441 -0
  413. data/deps/include/OGRE/OgreAutoParamDataSource.h +265 -0
  414. data/deps/include/OGRE/OgreAxisAlignedBox.h +841 -0
  415. data/deps/include/OGRE/OgreBillboard.h +225 -0
  416. data/deps/include/OGRE/OgreBillboardChain.h +383 -0
  417. data/deps/include/OGRE/OgreBillboardParticleRenderer.h +261 -0
  418. data/deps/include/OGRE/OgreBillboardSet.h +878 -0
  419. data/deps/include/OGRE/OgreBitwise.h +331 -0
  420. data/deps/include/OGRE/OgreBlendMode.h +266 -0
  421. data/deps/include/OGRE/OgreBone.h +154 -0
  422. data/deps/include/OGRE/OgreBorderPanelOverlayElement.h +352 -0
  423. data/deps/include/OGRE/OgreBuildSettings.h +62 -0
  424. data/deps/include/OGRE/OgreCamera.h +680 -0
  425. data/deps/include/OGRE/OgreCodec.h +178 -0
  426. data/deps/include/OGRE/OgreColourValue.h +334 -0
  427. data/deps/include/OGRE/OgreCommon.h +870 -0
  428. data/deps/include/OGRE/OgreCompositionPass.h +356 -0
  429. data/deps/include/OGRE/OgreCompositionTargetPass.h +174 -0
  430. data/deps/include/OGRE/OgreCompositionTechnique.h +188 -0
  431. data/deps/include/OGRE/OgreCompositor.h +235 -0
  432. data/deps/include/OGRE/OgreCompositorChain.h +241 -0
  433. data/deps/include/OGRE/OgreCompositorInstance.h +373 -0
  434. data/deps/include/OGRE/OgreCompositorLogic.h +68 -0
  435. data/deps/include/OGRE/OgreCompositorManager.h +291 -0
  436. data/deps/include/OGRE/OgreConfig.h +189 -0
  437. data/deps/include/OGRE/OgreConfigDialog.h +57 -0
  438. data/deps/include/OGRE/OgreConfigFile.h +110 -0
  439. data/deps/include/OGRE/OgreConfigOptionMap.h +63 -0
  440. data/deps/include/OGRE/OgreController.h +233 -0
  441. data/deps/include/OGRE/OgreControllerManager.h +294 -0
  442. data/deps/include/OGRE/OgreConvexBody.h +260 -0
  443. data/deps/include/OGRE/OgreCustomCompositionPass.h +65 -0
  444. data/deps/include/OGRE/OgreDDSCodec.h +98 -0
  445. data/deps/include/OGRE/OgreDataStream.h +664 -0
  446. data/deps/include/OGRE/OgreDefaultHardwareBufferManager.h +140 -0
  447. data/deps/include/OGRE/OgreDeflate.h +133 -0
  448. data/deps/include/OGRE/OgreDepthBuffer.h +155 -0
  449. data/deps/include/OGRE/OgreDistanceLodStrategy.h +137 -0
  450. data/deps/include/OGRE/OgreDualQuaternion.h +184 -0
  451. data/deps/include/OGRE/OgreDynLib.h +130 -0
  452. data/deps/include/OGRE/OgreDynLibManager.h +117 -0
  453. data/deps/include/OGRE/OgreEdgeListBuilder.h +269 -0
  454. data/deps/include/OGRE/OgreEntity.h +866 -0
  455. data/deps/include/OGRE/OgreErrorDialog.h +57 -0
  456. data/deps/include/OGRE/OgreException.h +351 -0
  457. data/deps/include/OGRE/OgreExternalTextureSource.h +191 -0
  458. data/deps/include/OGRE/OgreExternalTextureSourceManager.h +124 -0
  459. data/deps/include/OGRE/OgreFactoryObj.h +72 -0
  460. data/deps/include/OGRE/OgreFileSystem.h +144 -0
  461. data/deps/include/OGRE/OgreFont.h +478 -0
  462. data/deps/include/OGRE/OgreFontManager.h +102 -0
  463. data/deps/include/OGRE/OgreFrameListener.h +140 -0
  464. data/deps/include/OGRE/OgreFreeImageCodec.h +87 -0
  465. data/deps/include/OGRE/OgreFrustum.h +673 -0
  466. data/deps/include/OGRE/OgreGpuProgram.h +487 -0
  467. data/deps/include/OGRE/OgreGpuProgramManager.h +262 -0
  468. data/deps/include/OGRE/OgreGpuProgramParams.h +1840 -0
  469. data/deps/include/OGRE/OgreGpuProgramUsage.h +149 -0
  470. data/deps/include/OGRE/OgreHardwareBuffer.h +356 -0
  471. data/deps/include/OGRE/OgreHardwareBufferManager.h +539 -0
  472. data/deps/include/OGRE/OgreHardwareIndexBuffer.h +89 -0
  473. data/deps/include/OGRE/OgreHardwareOcclusionQuery.h +132 -0
  474. data/deps/include/OGRE/OgreHardwarePixelBuffer.h +208 -0
  475. data/deps/include/OGRE/OgreHardwareVertexBuffer.h +581 -0
  476. data/deps/include/OGRE/OgreHeaderPrefix.h +82 -0
  477. data/deps/include/OGRE/OgreHeaderSuffix.h +44 -0
  478. data/deps/include/OGRE/OgreHighLevelGpuProgram.h +194 -0
  479. data/deps/include/OGRE/OgreHighLevelGpuProgramManager.h +158 -0
  480. data/deps/include/OGRE/OgreImage.h +510 -0
  481. data/deps/include/OGRE/OgreImageCodec.h +89 -0
  482. data/deps/include/OGRE/OgreInstanceBatch.h +344 -0
  483. data/deps/include/OGRE/OgreInstanceBatchHW.h +110 -0
  484. data/deps/include/OGRE/OgreInstanceBatchHW_VTF.h +113 -0
  485. data/deps/include/OGRE/OgreInstanceBatchShader.h +99 -0
  486. data/deps/include/OGRE/OgreInstanceBatchVTF.h +226 -0
  487. data/deps/include/OGRE/OgreInstanceManager.h +280 -0
  488. data/deps/include/OGRE/OgreInstancedEntity.h +277 -0
  489. data/deps/include/OGRE/OgreInstancedGeometry.h +890 -0
  490. data/deps/include/OGRE/OgreIteratorRange.h +321 -0
  491. data/deps/include/OGRE/OgreIteratorWrapper.h +383 -0
  492. data/deps/include/OGRE/OgreIteratorWrappers.h +35 -0
  493. data/deps/include/OGRE/OgreKeyFrame.h +257 -0
  494. data/deps/include/OGRE/OgreLight.h +597 -0
  495. data/deps/include/OGRE/OgreLodListener.h +207 -0
  496. data/deps/include/OGRE/OgreLodStrategy.h +132 -0
  497. data/deps/include/OGRE/OgreLodStrategyManager.h +133 -0
  498. data/deps/include/OGRE/OgreLog.h +263 -0
  499. data/deps/include/OGRE/OgreLogManager.h +175 -0
  500. data/deps/include/OGRE/OgreManualObject.h +572 -0
  501. data/deps/include/OGRE/OgreMaterial.h +741 -0
  502. data/deps/include/OGRE/OgreMaterialManager.h +304 -0
  503. data/deps/include/OGRE/OgreMaterialSerializer.h +447 -0
  504. data/deps/include/OGRE/OgreMath.h +743 -0
  505. data/deps/include/OGRE/OgreMatrix3.h +286 -0
  506. data/deps/include/OGRE/OgreMatrix4.h +660 -0
  507. data/deps/include/OGRE/OgreMemoryAllocatedObject.h +129 -0
  508. data/deps/include/OGRE/OgreMemoryAllocatorConfig.h +493 -0
  509. data/deps/include/OGRE/OgreMemoryNedAlloc.h +140 -0
  510. data/deps/include/OGRE/OgreMemoryNedPooling.h +143 -0
  511. data/deps/include/OGRE/OgreMemorySTLAllocator.h +225 -0
  512. data/deps/include/OGRE/OgreMemoryStdAlloc.h +155 -0
  513. data/deps/include/OGRE/OgreMemoryTracker.h +197 -0
  514. data/deps/include/OGRE/OgreMesh.h +922 -0
  515. data/deps/include/OGRE/OgreMeshFileFormat.h +295 -0
  516. data/deps/include/OGRE/OgreMeshManager.h +497 -0
  517. data/deps/include/OGRE/OgreMeshSerializer.h +206 -0
  518. data/deps/include/OGRE/OgreMeshSerializerImpl.h +274 -0
  519. data/deps/include/OGRE/OgreMovableObject.h +641 -0
  520. data/deps/include/OGRE/OgreMovablePlane.h +97 -0
  521. data/deps/include/OGRE/OgreNode.h +774 -0
  522. data/deps/include/OGRE/OgreNumerics.h +66 -0
  523. data/deps/include/OGRE/OgreOptimisedUtil.h +232 -0
  524. data/deps/include/OGRE/OgreOverlay.h +280 -0
  525. data/deps/include/OGRE/OgreOverlayContainer.h +152 -0
  526. data/deps/include/OGRE/OgreOverlayElement.h +501 -0
  527. data/deps/include/OGRE/OgreOverlayElementCommands.h +122 -0
  528. data/deps/include/OGRE/OgreOverlayElementFactory.h +116 -0
  529. data/deps/include/OGRE/OgreOverlayManager.h +256 -0
  530. data/deps/include/OGRE/OgrePanelOverlayElement.h +161 -0
  531. data/deps/include/OGRE/OgreParticle.h +154 -0
  532. data/deps/include/OGRE/OgreParticleAffector.h +127 -0
  533. data/deps/include/OGRE/OgreParticleAffectorFactory.h +81 -0
  534. data/deps/include/OGRE/OgreParticleEmitter.h +524 -0
  535. data/deps/include/OGRE/OgreParticleEmitterCommands.h +215 -0
  536. data/deps/include/OGRE/OgreParticleEmitterFactory.h +84 -0
  537. data/deps/include/OGRE/OgreParticleIterator.h +68 -0
  538. data/deps/include/OGRE/OgreParticleScriptCompiler.h +92 -0
  539. data/deps/include/OGRE/OgreParticleSystem.h +911 -0
  540. data/deps/include/OGRE/OgreParticleSystemManager.h +406 -0
  541. data/deps/include/OGRE/OgreParticleSystemRenderer.h +139 -0
  542. data/deps/include/OGRE/OgrePass.h +1775 -0
  543. data/deps/include/OGRE/OgrePatchMesh.h +164 -0
  544. data/deps/include/OGRE/OgrePatchSurface.h +240 -0
  545. data/deps/include/OGRE/OgrePixelCountLodStrategy.h +113 -0
  546. data/deps/include/OGRE/OgrePixelFormat.h +513 -0
  547. data/deps/include/OGRE/OgrePlane.h +166 -0
  548. data/deps/include/OGRE/OgrePlaneBoundedVolume.h +135 -0
  549. data/deps/include/OGRE/OgrePlatform.h +311 -0
  550. data/deps/include/OGRE/OgrePlatformInformation.h +202 -0
  551. data/deps/include/OGRE/OgrePlugin.h +139 -0
  552. data/deps/include/OGRE/OgrePolygon.h +145 -0
  553. data/deps/include/OGRE/OgrePose.h +141 -0
  554. data/deps/include/OGRE/OgrePredefinedControllers.h +292 -0
  555. data/deps/include/OGRE/OgrePrefabFactory.h +73 -0
  556. data/deps/include/OGRE/OgrePrerequisites.h +563 -0
  557. data/deps/include/OGRE/OgreProfiler.h +506 -0
  558. data/deps/include/OGRE/OgreProgressiveMesh.h +416 -0
  559. data/deps/include/OGRE/OgreQuaternion.h +330 -0
  560. data/deps/include/OGRE/OgreRadixSort.h +330 -0
  561. data/deps/include/OGRE/OgreRay.h +122 -0
  562. data/deps/include/OGRE/OgreRectangle.h +77 -0
  563. data/deps/include/OGRE/OgreRectangle2D.h +101 -0
  564. data/deps/include/OGRE/OgreRenderObjectListener.h +64 -0
  565. data/deps/include/OGRE/OgreRenderOperation.h +100 -0
  566. data/deps/include/OGRE/OgreRenderQueue.h +516 -0
  567. data/deps/include/OGRE/OgreRenderQueueInvocation.h +225 -0
  568. data/deps/include/OGRE/OgreRenderQueueListener.h +106 -0
  569. data/deps/include/OGRE/OgreRenderQueueSortingGrouping.h +733 -0
  570. data/deps/include/OGRE/OgreRenderSystem.h +1572 -0
  571. data/deps/include/OGRE/OgreRenderSystemCapabilities.h +727 -0
  572. data/deps/include/OGRE/OgreRenderSystemCapabilitiesManager.h +129 -0
  573. data/deps/include/OGRE/OgreRenderSystemCapabilitiesSerializer.h +248 -0
  574. data/deps/include/OGRE/OgreRenderTarget.h +534 -0
  575. data/deps/include/OGRE/OgreRenderTargetListener.h +146 -0
  576. data/deps/include/OGRE/OgreRenderTexture.h +140 -0
  577. data/deps/include/OGRE/OgreRenderToVertexBuffer.h +151 -0
  578. data/deps/include/OGRE/OgreRenderWindow.h +225 -0
  579. data/deps/include/OGRE/OgreRenderable.h +428 -0
  580. data/deps/include/OGRE/OgreResource.h +536 -0
  581. data/deps/include/OGRE/OgreResourceBackgroundQueue.h +359 -0
  582. data/deps/include/OGRE/OgreResourceGroupManager.h +1092 -0
  583. data/deps/include/OGRE/OgreResourceManager.h +538 -0
  584. data/deps/include/OGRE/OgreRibbonTrail.h +245 -0
  585. data/deps/include/OGRE/OgreRoot.h +1075 -0
  586. data/deps/include/OGRE/OgreRotationalSpline.h +136 -0
  587. data/deps/include/OGRE/OgreSceneManager.h +3670 -0
  588. data/deps/include/OGRE/OgreSceneManagerEnumerator.h +233 -0
  589. data/deps/include/OGRE/OgreSceneNode.h +472 -0
  590. data/deps/include/OGRE/OgreSceneQuery.h +564 -0
  591. data/deps/include/OGRE/OgreScriptCompiler.h +851 -0
  592. data/deps/include/OGRE/OgreScriptLexer.h +96 -0
  593. data/deps/include/OGRE/OgreScriptLoader.h +96 -0
  594. data/deps/include/OGRE/OgreScriptParser.h +63 -0
  595. data/deps/include/OGRE/OgreScriptTranslator.h +286 -0
  596. data/deps/include/OGRE/OgreSearchOps.h +74 -0
  597. data/deps/include/OGRE/OgreSerializer.h +120 -0
  598. data/deps/include/OGRE/OgreShadowCameraSetup.h +107 -0
  599. data/deps/include/OGRE/OgreShadowCameraSetupFocused.h +289 -0
  600. data/deps/include/OGRE/OgreShadowCameraSetupLiSPSM.h +254 -0
  601. data/deps/include/OGRE/OgreShadowCameraSetupPSSM.h +126 -0
  602. data/deps/include/OGRE/OgreShadowCameraSetupPlaneOptimal.h +88 -0
  603. data/deps/include/OGRE/OgreShadowCaster.h +225 -0
  604. data/deps/include/OGRE/OgreShadowTextureManager.h +156 -0
  605. data/deps/include/OGRE/OgreShadowVolumeExtrudeProgram.h +286 -0
  606. data/deps/include/OGRE/OgreSharedPtr.h +278 -0
  607. data/deps/include/OGRE/OgreSimpleRenderable.h +111 -0
  608. data/deps/include/OGRE/OgreSimpleSpline.h +137 -0
  609. data/deps/include/OGRE/OgreSingleton.h +104 -0
  610. data/deps/include/OGRE/OgreSkeleton.h +539 -0
  611. data/deps/include/OGRE/OgreSkeletonFileFormat.h +117 -0
  612. data/deps/include/OGRE/OgreSkeletonInstance.h +163 -0
  613. data/deps/include/OGRE/OgreSkeletonManager.h +105 -0
  614. data/deps/include/OGRE/OgreSkeletonSerializer.h +151 -0
  615. data/deps/include/OGRE/OgreSmallVector.h +814 -0
  616. data/deps/include/OGRE/OgreSphere.h +145 -0
  617. data/deps/include/OGRE/OgreSpotShadowFadePng.h +647 -0
  618. data/deps/include/OGRE/OgreStableHeaders.h +82 -0
  619. data/deps/include/OGRE/OgreStaticFaceGroup.h +141 -0
  620. data/deps/include/OGRE/OgreStaticGeometry.h +781 -0
  621. data/deps/include/OGRE/OgreStaticPluginLoader.h +205 -0
  622. data/deps/include/OGRE/OgreStdHeaders.h +128 -0
  623. data/deps/include/OGRE/OgreStreamSerialiser.h +386 -0
  624. data/deps/include/OGRE/OgreString.h +223 -0
  625. data/deps/include/OGRE/OgreStringConverter.h +270 -0
  626. data/deps/include/OGRE/OgreStringInterface.h +335 -0
  627. data/deps/include/OGRE/OgreStringVector.h +53 -0
  628. data/deps/include/OGRE/OgreSubEntity.h +288 -0
  629. data/deps/include/OGRE/OgreSubMesh.h +294 -0
  630. data/deps/include/OGRE/OgreTagPoint.h +123 -0
  631. data/deps/include/OGRE/OgreTangentSpaceCalc.h +269 -0
  632. data/deps/include/OGRE/OgreTechnique.h +714 -0
  633. data/deps/include/OGRE/OgreTextAreaOverlayElement.h +258 -0
  634. data/deps/include/OGRE/OgreTexture.h +496 -0
  635. data/deps/include/OGRE/OgreTextureManager.h +508 -0
  636. data/deps/include/OGRE/OgreTextureUnitState.h +1265 -0
  637. data/deps/include/OGRE/OgreTimer.h +49 -0
  638. data/deps/include/OGRE/OgreUTFString.h +1115 -0
  639. data/deps/include/OGRE/OgreUnifiedHighLevelGpuProgram.h +177 -0
  640. data/deps/include/OGRE/OgreUserObjectBindings.h +140 -0
  641. data/deps/include/OGRE/OgreVector2.h +609 -0
  642. data/deps/include/OGRE/OgreVector3.h +818 -0
  643. data/deps/include/OGRE/OgreVector4.h +414 -0
  644. data/deps/include/OGRE/OgreVertexBoneAssignment.h +63 -0
  645. data/deps/include/OGRE/OgreVertexIndexData.h +323 -0
  646. data/deps/include/OGRE/OgreViewport.h +433 -0
  647. data/deps/include/OGRE/OgreWindowEventUtilities.h +186 -0
  648. data/deps/include/OGRE/OgreWireBoundingBox.h +87 -0
  649. data/deps/include/OGRE/OgreWorkQueue.h +556 -0
  650. data/deps/include/OGRE/OgreZip.h +196 -0
  651. data/deps/include/OGRE/Paging/OgreGrid2DPageStrategy.h +250 -0
  652. data/deps/include/OGRE/Paging/OgreGrid3DPageStrategy.h +222 -0
  653. data/deps/include/OGRE/Paging/OgrePage.h +205 -0
  654. data/deps/include/OGRE/Paging/OgrePageConnection.h +50 -0
  655. data/deps/include/OGRE/Paging/OgrePageContent.h +90 -0
  656. data/deps/include/OGRE/Paging/OgrePageContentCollection.h +103 -0
  657. data/deps/include/OGRE/Paging/OgrePageContentCollectionFactory.h +62 -0
  658. data/deps/include/OGRE/Paging/OgrePageContentFactory.h +67 -0
  659. data/deps/include/OGRE/Paging/OgrePageFileFormats.h +223 -0
  660. data/deps/include/OGRE/Paging/OgrePageManager.h +481 -0
  661. data/deps/include/OGRE/Paging/OgrePageStrategy.h +138 -0
  662. data/deps/include/OGRE/Paging/OgrePagedWorld.h +252 -0
  663. data/deps/include/OGRE/Paging/OgrePagedWorldSection.h +316 -0
  664. data/deps/include/OGRE/Paging/OgrePaging.h +45 -0
  665. data/deps/include/OGRE/Paging/OgrePagingPrerequisites.h +84 -0
  666. data/deps/include/OGRE/Paging/OgreSimplePageContentCollection.h +137 -0
  667. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspLevel.h +278 -0
  668. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspNode.h +212 -0
  669. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspPrerequisites.h +65 -0
  670. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspResourceManager.h +110 -0
  671. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspSceneManager.h +280 -0
  672. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspSceneManagerPlugin.h +67 -0
  673. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreBspSceneNode.h +79 -0
  674. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreQuake3Level.h +167 -0
  675. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreQuake3Shader.h +119 -0
  676. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreQuake3ShaderManager.h +125 -0
  677. data/deps/include/OGRE/Plugins/BSPSceneManager/OgreQuake3Types.h +250 -0
  678. data/deps/include/OGRE/Plugins/CgProgramManager/OgreCgFxScriptLoader.h +1544 -0
  679. data/deps/include/OGRE/Plugins/CgProgramManager/OgreCgPlugin.h +65 -0
  680. data/deps/include/OGRE/Plugins/CgProgramManager/OgreCgPrerequisites.h +62 -0
  681. data/deps/include/OGRE/Plugins/CgProgramManager/OgreCgProgram.h +149 -0
  682. data/deps/include/OGRE/Plugins/CgProgramManager/OgreCgProgramFactory.h +55 -0
  683. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctree.h +164 -0
  684. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreeCamera.h +89 -0
  685. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreeNode.h +148 -0
  686. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreePlugin.h +64 -0
  687. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreePrerequisites.h +59 -0
  688. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreeSceneManager.h +253 -0
  689. data/deps/include/OGRE/Plugins/OctreeSceneManager/OgreOctreeSceneQuery.h +102 -0
  690. data/deps/include/OGRE/Plugins/OctreeZone/OgreOctreeZone.h +264 -0
  691. data/deps/include/OGRE/Plugins/OctreeZone/OgreOctreeZoneOctree.h +203 -0
  692. data/deps/include/OGRE/Plugins/OctreeZone/OgreOctreeZonePlugin.h +72 -0
  693. data/deps/include/OGRE/Plugins/OctreeZone/OgreOctreeZonePrerequisites.h +67 -0
  694. data/deps/include/OGRE/Plugins/PCZSceneManager/OgreAntiPortal.h +75 -0
  695. data/deps/include/OGRE/Plugins/PCZSceneManager/OgreCapsule.h +68 -0
  696. data/deps/include/OGRE/Plugins/PCZSceneManager/OgreDefaultZone.h +154 -0
  697. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCPlane.h +94 -0
  698. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZCamera.h +113 -0
  699. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZFrustum.h +136 -0
  700. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZLight.h +137 -0
  701. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZPlugin.h +77 -0
  702. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZPrerequisites.h +63 -0
  703. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZSceneManager.h +410 -0
  704. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZSceneNode.h +135 -0
  705. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZSceneQuery.h +134 -0
  706. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZone.h +316 -0
  707. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePCZoneFactory.h +126 -0
  708. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePortal.h +106 -0
  709. data/deps/include/OGRE/Plugins/PCZSceneManager/OgrePortalBase.h +303 -0
  710. data/deps/include/OGRE/Plugins/PCZSceneManager/OgreSegment.h +81 -0
  711. data/deps/include/OGRE/Plugins/ParticleFX/OgreAreaEmitter.h +139 -0
  712. data/deps/include/OGRE/Plugins/ParticleFX/OgreBoxEmitter.h +60 -0
  713. data/deps/include/OGRE/Plugins/ParticleFX/OgreBoxEmitterFactory.h +66 -0
  714. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourFaderAffector.h +167 -0
  715. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourFaderAffector2.h +226 -0
  716. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourFaderAffectorFactory.h +56 -0
  717. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourFaderAffectorFactory2.h +56 -0
  718. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourImageAffector.h +80 -0
  719. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourImageAffectorFactory.h +56 -0
  720. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourInterpolatorAffector.h +97 -0
  721. data/deps/include/OGRE/Plugins/ParticleFX/OgreColourInterpolatorAffectorFactory.h +56 -0
  722. data/deps/include/OGRE/Plugins/ParticleFX/OgreCylinderEmitter.h +68 -0
  723. data/deps/include/OGRE/Plugins/ParticleFX/OgreCylinderEmitterFactory.h +67 -0
  724. data/deps/include/OGRE/Plugins/ParticleFX/OgreDeflectorPlaneAffector.h +114 -0
  725. data/deps/include/OGRE/Plugins/ParticleFX/OgreDeflectorPlaneAffectorFactory.h +56 -0
  726. data/deps/include/OGRE/Plugins/ParticleFX/OgreDirectionRandomiserAffector.h +109 -0
  727. data/deps/include/OGRE/Plugins/ParticleFX/OgreDirectionRandomiserAffectorFactory.h +54 -0
  728. data/deps/include/OGRE/Plugins/ParticleFX/OgreEllipsoidEmitter.h +64 -0
  729. data/deps/include/OGRE/Plugins/ParticleFX/OgreEllipsoidEmitterFactory.h +67 -0
  730. data/deps/include/OGRE/Plugins/ParticleFX/OgreHollowEllipsoidEmitter.h +126 -0
  731. data/deps/include/OGRE/Plugins/ParticleFX/OgreHollowEllipsoidEmitterFactory.h +67 -0
  732. data/deps/include/OGRE/Plugins/ParticleFX/OgreLinearForceAffector.h +120 -0
  733. data/deps/include/OGRE/Plugins/ParticleFX/OgreLinearForceAffectorFactory.h +56 -0
  734. data/deps/include/OGRE/Plugins/ParticleFX/OgreParticleFXPlugin.h +66 -0
  735. data/deps/include/OGRE/Plugins/ParticleFX/OgreParticleFXPrerequisites.h +68 -0
  736. data/deps/include/OGRE/Plugins/ParticleFX/OgrePointEmitter.h +62 -0
  737. data/deps/include/OGRE/Plugins/ParticleFX/OgrePointEmitterFactory.h +66 -0
  738. data/deps/include/OGRE/Plugins/ParticleFX/OgreRingEmitter.h +111 -0
  739. data/deps/include/OGRE/Plugins/ParticleFX/OgreRingEmitterFactory.h +67 -0
  740. data/deps/include/OGRE/Plugins/ParticleFX/OgreRotationAffector.h +131 -0
  741. data/deps/include/OGRE/Plugins/ParticleFX/OgreRotationAffectorFactory.h +56 -0
  742. data/deps/include/OGRE/Plugins/ParticleFX/OgreScaleAffector.h +84 -0
  743. data/deps/include/OGRE/Plugins/ParticleFX/OgreScaleAffectorFactory.h +56 -0
  744. data/deps/include/OGRE/RTShaderSystem/OgreRTShaderSystem.h +76 -0
  745. data/deps/include/OGRE/RTShaderSystem/OgreShaderCGProgramProcessor.h +85 -0
  746. data/deps/include/OGRE/RTShaderSystem/OgreShaderCGProgramWriter.h +145 -0
  747. data/deps/include/OGRE/RTShaderSystem/OgreShaderExDualQuaternionSkinning.h +127 -0
  748. data/deps/include/OGRE/RTShaderSystem/OgreShaderExHardwareSkinning.h +357 -0
  749. data/deps/include/OGRE/RTShaderSystem/OgreShaderExHardwareSkinningTechnique.h +156 -0
  750. data/deps/include/OGRE/RTShaderSystem/OgreShaderExIntegratedPSSM3.h +213 -0
  751. data/deps/include/OGRE/RTShaderSystem/OgreShaderExLayeredBlending.h +257 -0
  752. data/deps/include/OGRE/RTShaderSystem/OgreShaderExLinearSkinning.h +97 -0
  753. data/deps/include/OGRE/RTShaderSystem/OgreShaderExNormalMapLighting.h +391 -0
  754. data/deps/include/OGRE/RTShaderSystem/OgreShaderExPerPixelLighting.h +276 -0
  755. data/deps/include/OGRE/RTShaderSystem/OgreShaderExTextureAtlasSampler.h +367 -0
  756. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPColour.h +180 -0
  757. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPFog.h +200 -0
  758. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPLighting.h +241 -0
  759. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPRenderState.h +134 -0
  760. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPRenderStateBuilder.h +146 -0
  761. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPTexturing.h +272 -0
  762. data/deps/include/OGRE/RTShaderSystem/OgreShaderFFPTransform.h +121 -0
  763. data/deps/include/OGRE/RTShaderSystem/OgreShaderFunction.h +227 -0
  764. data/deps/include/OGRE/RTShaderSystem/OgreShaderFunctionAtom.h +250 -0
  765. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLESProgramProcessor.h +92 -0
  766. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLESProgramWriter.h +193 -0
  767. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLProgramProcessor.h +97 -0
  768. data/deps/include/OGRE/RTShaderSystem/OgreShaderGLSLProgramWriter.h +146 -0
  769. data/deps/include/OGRE/RTShaderSystem/OgreShaderGenerator.h +936 -0
  770. data/deps/include/OGRE/RTShaderSystem/OgreShaderHLSLProgramProcessor.h +84 -0
  771. data/deps/include/OGRE/RTShaderSystem/OgreShaderHLSLProgramWriter.h +145 -0
  772. data/deps/include/OGRE/RTShaderSystem/OgreShaderMaterialSerializerListener.h +109 -0
  773. data/deps/include/OGRE/RTShaderSystem/OgreShaderParameter.h +652 -0
  774. data/deps/include/OGRE/RTShaderSystem/OgreShaderPrerequisites.h +120 -0
  775. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgram.h +218 -0
  776. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramManager.h +236 -0
  777. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramProcessor.h +266 -0
  778. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramSet.h +98 -0
  779. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramWriter.h +110 -0
  780. data/deps/include/OGRE/RTShaderSystem/OgreShaderProgramWriterManager.h +130 -0
  781. data/deps/include/OGRE/RTShaderSystem/OgreShaderRenderState.h +219 -0
  782. data/deps/include/OGRE/RTShaderSystem/OgreShaderScriptTranslator.h +144 -0
  783. data/deps/include/OGRE/RTShaderSystem/OgreShaderSubRenderState.h +321 -0
  784. data/deps/include/OGRE/RenderSystems/GL/GL/gl.h +1918 -0
  785. data/deps/include/OGRE/RenderSystems/GL/GL/glew.h +16131 -0
  786. data/deps/include/OGRE/RenderSystems/GL/GL/glext.h +6030 -0
  787. data/deps/include/OGRE/RenderSystems/GL/GL/glxew.h +1587 -0
  788. data/deps/include/OGRE/RenderSystems/GL/GL/glxext.h +681 -0
  789. data/deps/include/OGRE/RenderSystems/GL/GL/glxtokens.h +231 -0
  790. data/deps/include/OGRE/RenderSystems/GL/GL/wglew.h +1363 -0
  791. data/deps/include/OGRE/RenderSystems/GL/GL/wglext.h +608 -0
  792. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLUtil.h +43 -0
  793. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLXContext.h +62 -0
  794. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLXGLSupport.h +201 -0
  795. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLXRenderTexture.h +52 -0
  796. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLXUtils.h +102 -0
  797. data/deps/include/OGRE/RenderSystems/GL/GLX/OgreGLXWindow.h +126 -0
  798. data/deps/include/OGRE/RenderSystems/GL/OgreGLATIFSInit.h +41 -0
  799. data/deps/include/OGRE/RenderSystems/GL/OgreGLContext.h +75 -0
  800. data/deps/include/OGRE/RenderSystems/GL/OgreGLDefaultHardwareBufferManager.h +135 -0
  801. data/deps/include/OGRE/RenderSystems/GL/OgreGLDepthBuffer.h +71 -0
  802. data/deps/include/OGRE/RenderSystems/GL/OgreGLFBOMultiRenderTarget.h +59 -0
  803. data/deps/include/OGRE/RenderSystems/GL/OgreGLFBORenderTexture.h +200 -0
  804. data/deps/include/OGRE/RenderSystems/GL/OgreGLFrameBufferObject.h +105 -0
  805. data/deps/include/OGRE/RenderSystems/GL/OgreGLGpuNvparseProgram.h +69 -0
  806. data/deps/include/OGRE/RenderSystems/GL/OgreGLGpuProgram.h +120 -0
  807. data/deps/include/OGRE/RenderSystems/GL/OgreGLGpuProgramManager.h +68 -0
  808. data/deps/include/OGRE/RenderSystems/GL/OgreGLHardwareBufferManager.h +141 -0
  809. data/deps/include/OGRE/RenderSystems/GL/OgreGLHardwareIndexBuffer.h +70 -0
  810. data/deps/include/OGRE/RenderSystems/GL/OgreGLHardwareOcclusionQuery.h +108 -0
  811. data/deps/include/OGRE/RenderSystems/GL/OgreGLHardwarePixelBuffer.h +138 -0
  812. data/deps/include/OGRE/RenderSystems/GL/OgreGLHardwareVertexBuffer.h +69 -0
  813. data/deps/include/OGRE/RenderSystems/GL/OgreGLPBRenderTexture.h +106 -0
  814. data/deps/include/OGRE/RenderSystems/GL/OgreGLPBuffer.h +62 -0
  815. data/deps/include/OGRE/RenderSystems/GL/OgreGLPixelFormat.h +100 -0
  816. data/deps/include/OGRE/RenderSystems/GL/OgreGLPlugin.h +63 -0
  817. data/deps/include/OGRE/RenderSystems/GL/OgreGLPrerequisites.h +105 -0
  818. data/deps/include/OGRE/RenderSystems/GL/OgreGLRenderSystem.h +521 -0
  819. data/deps/include/OGRE/RenderSystems/GL/OgreGLRenderTexture.h +141 -0
  820. data/deps/include/OGRE/RenderSystems/GL/OgreGLRenderToVertexBuffer.h +72 -0
  821. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLExtSupport.h +66 -0
  822. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLGpuProgram.h +104 -0
  823. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLLinkProgram.h +149 -0
  824. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLLinkProgramManager.h +144 -0
  825. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLPreprocessor.h +524 -0
  826. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLProgram.h +200 -0
  827. data/deps/include/OGRE/RenderSystems/GL/OgreGLSLProgramFactory.h +60 -0
  828. data/deps/include/OGRE/RenderSystems/GL/OgreGLSupport.h +137 -0
  829. data/deps/include/OGRE/RenderSystems/GL/OgreGLTexture.h +191 -0
  830. data/deps/include/OGRE/RenderSystems/GL/OgreGLTextureManager.h +67 -0
  831. data/deps/include/OGRE/Sample.h +325 -0
  832. data/deps/include/OGRE/SampleContext.h +864 -0
  833. data/deps/include/OGRE/SamplePlugin.h +99 -0
  834. data/deps/include/OGRE/SdkCameraMan.h +367 -0
  835. data/deps/include/OGRE/SdkSample.h +552 -0
  836. data/deps/include/OGRE/SdkTrays.h +3168 -0
  837. data/deps/include/OGRE/Terrain/OgreTerrain.h +2076 -0
  838. data/deps/include/OGRE/Terrain/OgreTerrainGroup.h +545 -0
  839. data/deps/include/OGRE/Terrain/OgreTerrainLayerBlendMap.h +199 -0
  840. data/deps/include/OGRE/Terrain/OgreTerrainMaterialGenerator.h +404 -0
  841. data/deps/include/OGRE/Terrain/OgreTerrainMaterialGeneratorA.h +279 -0
  842. data/deps/include/OGRE/Terrain/OgreTerrainPagedWorldSection.h +165 -0
  843. data/deps/include/OGRE/Terrain/OgreTerrainPaging.h +135 -0
  844. data/deps/include/OGRE/Terrain/OgreTerrainPrerequisites.h +68 -0
  845. data/deps/include/OGRE/Terrain/OgreTerrainQuadTreeNode.h +413 -0
  846. data/deps/include/OGRE/Threading/OgreDefaultWorkQueue.h +42 -0
  847. data/deps/include/OGRE/Threading/OgreDefaultWorkQueueStandard.h +82 -0
  848. data/deps/include/OGRE/Threading/OgreThreadDefines.h +41 -0
  849. data/deps/include/OGRE/Threading/OgreThreadDefinesNone.h +59 -0
  850. data/deps/include/OGRE/Threading/OgreThreadHeaders.h +39 -0
  851. data/deps/include/OGRE/asm_math.h +376 -0
  852. data/deps/include/OIS/OIS.h +41 -0
  853. data/deps/include/OIS/OISConfig.h +75 -0
  854. data/deps/include/OIS/OISEffect.h +278 -0
  855. data/deps/include/OIS/OISEvents.h +43 -0
  856. data/deps/include/OIS/OISException.h +78 -0
  857. data/deps/include/OIS/OISFactoryCreator.h +81 -0
  858. data/deps/include/OIS/OISForceFeedback.h +120 -0
  859. data/deps/include/OIS/OISInputManager.h +205 -0
  860. data/deps/include/OIS/OISInterface.h +47 -0
  861. data/deps/include/OIS/OISJoyStick.h +228 -0
  862. data/deps/include/OIS/OISKeyboard.h +312 -0
  863. data/deps/include/OIS/OISMouse.h +138 -0
  864. data/deps/include/OIS/OISMultiTouch.h +169 -0
  865. data/deps/include/OIS/OISObject.h +95 -0
  866. data/deps/include/OIS/OISPrereqs.h +226 -0
  867. data/deps/include/OgreProcedural/Procedural.h +54 -0
  868. data/deps/include/OgreProcedural/ProceduralBoxGenerator.h +110 -0
  869. data/deps/include/OgreProcedural/ProceduralCapsuleGenerator.h +103 -0
  870. data/deps/include/OgreProcedural/ProceduralConeGenerator.h +90 -0
  871. data/deps/include/OgreProcedural/ProceduralCylinderGenerator.h +99 -0
  872. data/deps/include/OgreProcedural/ProceduralExtruder.h +131 -0
  873. data/deps/include/OgreProcedural/ProceduralGeometryHelpers.h +171 -0
  874. data/deps/include/OgreProcedural/ProceduralIcoSphereGenerator.h +76 -0
  875. data/deps/include/OgreProcedural/ProceduralLathe.h +129 -0
  876. data/deps/include/OgreProcedural/ProceduralMeshGenerator.h +286 -0
  877. data/deps/include/OgreProcedural/ProceduralMultiShape.h +126 -0
  878. data/deps/include/OgreProcedural/ProceduralPath.h +322 -0
  879. data/deps/include/OgreProcedural/ProceduralPathGenerators.h +281 -0
  880. data/deps/include/OgreProcedural/ProceduralPlaneGenerator.h +93 -0
  881. data/deps/include/OgreProcedural/ProceduralPlatform.h +54 -0
  882. data/deps/include/OgreProcedural/ProceduralRoot.h +65 -0
  883. data/deps/include/OgreProcedural/ProceduralRoundedBoxGenerator.h +118 -0
  884. data/deps/include/OgreProcedural/ProceduralShape.h +532 -0
  885. data/deps/include/OgreProcedural/ProceduralShapeGenerators.h +362 -0
  886. data/deps/include/OgreProcedural/ProceduralSphereGenerator.h +80 -0
  887. data/deps/include/OgreProcedural/ProceduralSplines.h +168 -0
  888. data/deps/include/OgreProcedural/ProceduralStableHeaders.h +28 -0
  889. data/deps/include/OgreProcedural/ProceduralTorusGenerator.h +88 -0
  890. data/deps/include/OgreProcedural/ProceduralTorusKnotGenerator.h +106 -0
  891. data/deps/include/OgreProcedural/ProceduralTrack.h +122 -0
  892. data/deps/include/OgreProcedural/ProceduralTriangleBuffer.h +328 -0
  893. data/deps/include/OgreProcedural/ProceduralTriangulator.h +173 -0
  894. data/deps/include/OgreProcedural/ProceduralTubeGenerator.h +96 -0
  895. data/deps/include/OgreProcedural/ProceduralUtils.h +185 -0
  896. data/deps/lib/OGRE/Plugin_BSPSceneManager.so +0 -0
  897. data/deps/lib/OGRE/Plugin_BSPSceneManager.so.1.8.0 +0 -0
  898. data/deps/lib/OGRE/Plugin_CgProgramManager.so +0 -0
  899. data/deps/lib/OGRE/Plugin_CgProgramManager.so.1.8.0 +0 -0
  900. data/deps/lib/OGRE/Plugin_OctreeSceneManager.so +0 -0
  901. data/deps/lib/OGRE/Plugin_OctreeSceneManager.so.1.8.0 +0 -0
  902. data/deps/lib/OGRE/Plugin_OctreeZone.so +0 -0
  903. data/deps/lib/OGRE/Plugin_OctreeZone.so.1.8.0 +0 -0
  904. data/deps/lib/OGRE/Plugin_PCZSceneManager.so +0 -0
  905. data/deps/lib/OGRE/Plugin_PCZSceneManager.so.1.8.0 +0 -0
  906. data/deps/lib/OGRE/Plugin_ParticleFX.so +0 -0
  907. data/deps/lib/OGRE/Plugin_ParticleFX.so.1.8.0 +0 -0
  908. data/deps/lib/OGRE/RenderSystem_GL.so +0 -0
  909. data/deps/lib/OGRE/RenderSystem_GL.so.1.8.0 +0 -0
  910. data/deps/lib/libOIS-1.3.0.so +0 -0
  911. data/deps/lib/libOIS.so +0 -0
  912. data/deps/lib/libOgreMain.so +0 -0
  913. data/deps/lib/libOgreMain.so.1.8.0 +0 -0
  914. data/deps/lib/libOgrePaging.so +0 -0
  915. data/deps/lib/libOgrePaging.so.1.8.0 +0 -0
  916. data/deps/lib/libOgreProcedural.so +0 -0
  917. data/deps/lib/libOgreRTShaderSystem.so +0 -0
  918. data/deps/lib/libOgreRTShaderSystem.so.1.8.0 +0 -0
  919. data/deps/lib/libOgreTerrain.so +0 -0
  920. data/deps/lib/libOgreTerrain.so.1.8.0 +0 -0
  921. data/deps/share/OGRE/media/DeferredShadingMedia/COPYING +18 -0
  922. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/Ambient_ps.cg +68 -0
  923. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/LightMaterial_ps.cg +187 -0
  924. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/LightMaterial_vs.cg +53 -0
  925. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/ShowColour_ps.cg +41 -0
  926. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/ShowDS_ps.cg +40 -0
  927. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/ShowNormal_ps.cg +39 -0
  928. data/deps/share/OGRE/media/DeferredShadingMedia/DeferredShading/post/vs.cg +54 -0
  929. data/deps/share/OGRE/media/DeferredShadingMedia/ShadowCaster.cg +25 -0
  930. data/deps/share/OGRE/media/DeferredShadingMedia/ShadowCaster.material +15 -0
  931. data/deps/share/OGRE/media/DeferredShadingMedia/ShadowCaster.program +24 -0
  932. data/deps/share/OGRE/media/DeferredShadingMedia/deferred.compositor +147 -0
  933. data/deps/share/OGRE/media/DeferredShadingMedia/deferred_post.material +148 -0
  934. data/deps/share/OGRE/media/DeferredShadingMedia/deferred_post.program +85 -0
  935. data/deps/share/OGRE/media/DeferredShadingMedia/deferred_post_minilight.material +71 -0
  936. data/deps/share/OGRE/media/DeferredShadingMedia/deferreddemo.material +73 -0
  937. data/deps/share/OGRE/media/DeferredShadingMedia/ssao.cg +178 -0
  938. data/deps/share/OGRE/media/DeferredShadingMedia/ssao.compositor +93 -0
  939. data/deps/share/OGRE/media/DeferredShadingMedia/ssao.material +148 -0
  940. data/deps/share/OGRE/media/PCZAppMedia/Carpet_Diamond_Olive.jpg +0 -0
  941. data/deps/share/OGRE/media/PCZAppMedia/Metal_Brass_Ceiling.jpg +0 -0
  942. data/deps/share/OGRE/media/PCZAppMedia/Metal_Embossed.jpg +0 -0
  943. data/deps/share/OGRE/media/PCZAppMedia/Metal_Rusted.jpg +0 -0
  944. data/deps/share/OGRE/media/PCZAppMedia/Metal_Rusted1.jpg +0 -0
  945. data/deps/share/OGRE/media/PCZAppMedia/Metal_Steel_Textured.jpg +0 -0
  946. data/deps/share/OGRE/media/PCZAppMedia/Metal_Steel_Textured_White.jpg +0 -0
  947. data/deps/share/OGRE/media/PCZAppMedia/ROOM.material +149 -0
  948. data/deps/share/OGRE/media/PCZAppMedia/ROOM_NX.mesh +0 -0
  949. data/deps/share/OGRE/media/PCZAppMedia/ROOM_NY.mesh +0 -0
  950. data/deps/share/OGRE/media/PCZAppMedia/ROOM_NZ.mesh +0 -0
  951. data/deps/share/OGRE/media/PCZAppMedia/ROOM_PX.mesh +0 -0
  952. data/deps/share/OGRE/media/PCZAppMedia/ROOM_PY.mesh +0 -0
  953. data/deps/share/OGRE/media/PCZAppMedia/ROOM_PZ.mesh +0 -0
  954. data/deps/share/OGRE/media/PCZAppMedia/Roofing_Tile_Spanish.jpg +0 -0
  955. data/deps/share/OGRE/media/PCZAppMedia/Translucent_Glass_Tinted.jpg +0 -0
  956. data/deps/share/OGRE/media/PCZAppMedia/Translucent_Glass_Tinted1.jpg +0 -0
  957. data/deps/share/OGRE/media/PCZAppMedia/Wood_Floor.jpg +0 -0
  958. data/deps/share/OGRE/media/PCZAppMedia/building_exterior.mesh +0 -0
  959. data/deps/share/OGRE/media/PCZAppMedia/room_nxnynz.mesh +0 -0
  960. data/deps/share/OGRE/media/PCZAppMedia/room_nxpx.mesh +0 -0
  961. data/deps/share/OGRE/media/PCZAppMedia/room_nxpxnypynzpz.mesh +0 -0
  962. data/deps/share/OGRE/media/PCZAppMedia/room_nxpxnz.mesh +0 -0
  963. data/deps/share/OGRE/media/PCZAppMedia/room_nxpxnzpz.mesh +0 -0
  964. data/deps/share/OGRE/media/PCZAppMedia/room_nxpxpz.mesh +0 -0
  965. data/deps/share/OGRE/media/PCZAppMedia/room_nxpynz.mesh +0 -0
  966. data/deps/share/OGRE/media/PCZAppMedia/room_nxpz.mesh +0 -0
  967. data/deps/share/OGRE/media/PCZAppMedia/room_nypy.mesh +0 -0
  968. data/deps/share/OGRE/media/PCZAppMedia/room_nypy_4y.mesh +0 -0
  969. data/deps/share/OGRE/media/PCZAppMedia/room_nzpz.mesh +0 -0
  970. data/deps/share/OGRE/media/PCZAppMedia/room_pxnynz.mesh +0 -0
  971. data/deps/share/OGRE/media/PCZAppMedia/room_pxpynz.mesh +0 -0
  972. data/deps/share/OGRE/media/PCZAppMedia/room_pxpz.mesh +0 -0
  973. data/deps/share/OGRE/media/PCZAppMedia/terrain2.cfg +71 -0
  974. data/deps/share/OGRE/media/PCZAppMedia/terrain2.png +0 -0
  975. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Common.cg +248 -0
  976. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Common.glsl +248 -0
  977. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Common.glsles +231 -0
  978. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Common.hlsl +219 -0
  979. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Fog.cg +138 -0
  980. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Fog.glsl +139 -0
  981. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Fog.glsles +141 -0
  982. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Fog.hlsl +138 -0
  983. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Lighting.cg +225 -0
  984. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Lighting.glsl +226 -0
  985. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Lighting.glsles +227 -0
  986. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Lighting.hlsl +225 -0
  987. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Texturing.cg +319 -0
  988. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Texturing.glsl +334 -0
  989. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Texturing.glsles +355 -0
  990. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Texturing.hlsl +319 -0
  991. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Transform.cg +78 -0
  992. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Transform.glsl +71 -0
  993. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Transform.glsles +65 -0
  994. data/deps/share/OGRE/media/RTShaderLib/FFPLib_Transform.hlsl +71 -0
  995. data/deps/share/OGRE/media/RTShaderLib/SGXLib_DualQuaternion.cg +130 -0
  996. data/deps/share/OGRE/media/RTShaderLib/SGXLib_DualQuaternion.glsl +132 -0
  997. data/deps/share/OGRE/media/RTShaderLib/SGXLib_IntegratedPSSM.cg +81 -0
  998. data/deps/share/OGRE/media/RTShaderLib/SGXLib_IntegratedPSSM.glsl +107 -0
  999. data/deps/share/OGRE/media/RTShaderLib/SGXLib_IntegratedPSSM.glsles +112 -0
  1000. data/deps/share/OGRE/media/RTShaderLib/SGXLib_IntegratedPSSM.hlsl +81 -0
  1001. data/deps/share/OGRE/media/RTShaderLib/SGXLib_LayeredBlending.cg +728 -0
  1002. data/deps/share/OGRE/media/RTShaderLib/SGXLib_LayeredBlending.glsl +825 -0
  1003. data/deps/share/OGRE/media/RTShaderLib/SGXLib_LayeredBlending.glsles +889 -0
  1004. data/deps/share/OGRE/media/RTShaderLib/SGXLib_LayeredBlending.hlsl +730 -0
  1005. data/deps/share/OGRE/media/RTShaderLib/SGXLib_NormalMapLighting.cg +257 -0
  1006. data/deps/share/OGRE/media/RTShaderLib/SGXLib_NormalMapLighting.glsl +269 -0
  1007. data/deps/share/OGRE/media/RTShaderLib/SGXLib_NormalMapLighting.glsles +264 -0
  1008. data/deps/share/OGRE/media/RTShaderLib/SGXLib_NormalMapLighting.hlsl +257 -0
  1009. data/deps/share/OGRE/media/RTShaderLib/SGXLib_PerPixelLighting.cg +226 -0
  1010. data/deps/share/OGRE/media/RTShaderLib/SGXLib_PerPixelLighting.glsl +228 -0
  1011. data/deps/share/OGRE/media/RTShaderLib/SGXLib_PerPixelLighting.glsles +223 -0
  1012. data/deps/share/OGRE/media/RTShaderLib/SGXLib_PerPixelLighting.hlsl +226 -0
  1013. data/deps/share/OGRE/media/RTShaderLib/SGXLib_TextureAtlas.cg +122 -0
  1014. data/deps/share/OGRE/media/RTShaderLib/SGXLib_TextureAtlas.glsl +124 -0
  1015. data/deps/share/OGRE/media/RTShaderLib/SGXLib_TextureAtlas.glsles +122 -0
  1016. data/deps/share/OGRE/media/RTShaderLib/SGXLib_TextureAtlas.hlsl +122 -0
  1017. data/deps/share/OGRE/media/RTShaderLib/SampleLib_InstancedViewports.cg +76 -0
  1018. data/deps/share/OGRE/media/RTShaderLib/SampleLib_InstancedViewports.glsl +93 -0
  1019. data/deps/share/OGRE/media/RTShaderLib/SampleLib_InstancedViewports.hlsl +76 -0
  1020. data/deps/share/OGRE/media/RTShaderLib/SampleLib_ReflectionMap.cg +62 -0
  1021. data/deps/share/OGRE/media/RTShaderLib/SampleLib_ReflectionMap.glsl +65 -0
  1022. data/deps/share/OGRE/media/RTShaderLib/SampleLib_ReflectionMap.glsles +67 -0
  1023. data/deps/share/OGRE/media/RTShaderLib/SampleLib_ReflectionMap.hlsl +62 -0
  1024. data/deps/share/OGRE/media/RTShaderLib/cache/dummy.txt +1 -0
  1025. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_Shadow.cg +292 -0
  1026. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_Shadow.material +384 -0
  1027. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowFourWeights.glsl +29 -0
  1028. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowOneWeight.glsl +28 -0
  1029. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowPassThrough_ps.glsl +9 -0
  1030. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowPassThrough_vs.glsl +15 -0
  1031. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowThreeWeights.glsl +29 -0
  1032. data/deps/share/OGRE/media/RTShaderLib/materials/DualQuaternionSkinning_ShadowTwoWeights.glsl +29 -0
  1033. data/deps/share/OGRE/media/RTShaderLib/materials/HardwareSkinningShadow.cg +111 -0
  1034. data/deps/share/OGRE/media/RTShaderLib/materials/HardwareSkinningShadow.material +265 -0
  1035. data/deps/share/OGRE/media/RTShaderLib/materials/HardwareSkinningShadow_Fragment.glsl +6 -0
  1036. data/deps/share/OGRE/media/RTShaderLib/materials/HardwareSkinningShadow_TwoWeights.glsl +18 -0
  1037. data/deps/share/OGRE/media/RTShaderLib/materials/RTShaderSystem.material +221 -0
  1038. data/deps/share/OGRE/media/fonts/bluebold.ttf +0 -0
  1039. data/deps/share/OGRE/media/fonts/bluecond.ttf +0 -0
  1040. data/deps/share/OGRE/media/fonts/bluehigh.ttf +0 -0
  1041. data/deps/share/OGRE/media/fonts/bluehighway-10.font +2 -0
  1042. data/deps/share/OGRE/media/fonts/bluehighway-12.font +2 -0
  1043. data/deps/share/OGRE/media/fonts/bluehighway-8.font +2 -0
  1044. data/deps/share/OGRE/media/fonts/read_me.html +2 -0
  1045. data/deps/share/OGRE/media/fonts/sample.fontdef +11 -0
  1046. data/deps/share/OGRE/media/fonts/solo5.ttf +0 -0
  1047. data/deps/share/OGRE/media/materials/programs/ASCIIFP.cg +32 -0
  1048. data/deps/share/OGRE/media/materials/programs/ASCIIFP.glsles +31 -0
  1049. data/deps/share/OGRE/media/materials/programs/AmbientOneTexture.glsl +13 -0
  1050. data/deps/share/OGRE/media/materials/programs/AmbientOneTexture.glsles +20 -0
  1051. data/deps/share/OGRE/media/materials/programs/AmbientOneTextureWithUV.glsles +23 -0
  1052. data/deps/share/OGRE/media/materials/programs/Bloom2_ps20.glsl +27 -0
  1053. data/deps/share/OGRE/media/materials/programs/Bloom2_ps20.glsles +30 -0
  1054. data/deps/share/OGRE/media/materials/programs/Bloom2_ps20.hlsl +58 -0
  1055. data/deps/share/OGRE/media/materials/programs/Bloom_ps20.hlsl +52 -0
  1056. data/deps/share/OGRE/media/materials/programs/Bloom_vs11.hlsl +21 -0
  1057. data/deps/share/OGRE/media/materials/programs/Blur0_ps20.hlsl +31 -0
  1058. data/deps/share/OGRE/media/materials/programs/Blur0_vs.glsl +15 -0
  1059. data/deps/share/OGRE/media/materials/programs/Blur0_vs.glsles +22 -0
  1060. data/deps/share/OGRE/media/materials/programs/Blur0_vs11.hlsl +22 -0
  1061. data/deps/share/OGRE/media/materials/programs/Blur1_ps20.hlsl +28 -0
  1062. data/deps/share/OGRE/media/materials/programs/Blur1_vs.glsl +15 -0
  1063. data/deps/share/OGRE/media/materials/programs/Blur1_vs.glsles +22 -0
  1064. data/deps/share/OGRE/media/materials/programs/Blur1_vs11.hlsl +19 -0
  1065. data/deps/share/OGRE/media/materials/programs/BlurH_ps20.glsl +56 -0
  1066. data/deps/share/OGRE/media/materials/programs/BlurH_ps20.glsles +58 -0
  1067. data/deps/share/OGRE/media/materials/programs/BlurH_ps20.hlsl +51 -0
  1068. data/deps/share/OGRE/media/materials/programs/BlurV_ps20.glsl +60 -0
  1069. data/deps/share/OGRE/media/materials/programs/BlurV_ps20.glsles +63 -0
  1070. data/deps/share/OGRE/media/materials/programs/BlurV_ps20.hlsl +51 -0
  1071. data/deps/share/OGRE/media/materials/programs/Blur_ps.glsl +14 -0
  1072. data/deps/share/OGRE/media/materials/programs/Blur_ps.glsles +18 -0
  1073. data/deps/share/OGRE/media/materials/programs/Blur_vs.glsl +14 -0
  1074. data/deps/share/OGRE/media/materials/programs/Blur_vs.glsles +24 -0
  1075. data/deps/share/OGRE/media/materials/programs/Blur_vs11.hlsl +19 -0
  1076. data/deps/share/OGRE/media/materials/programs/BrightBloom2_ps20.glsl +29 -0
  1077. data/deps/share/OGRE/media/materials/programs/BrightBloom2_ps20.glsles +32 -0
  1078. data/deps/share/OGRE/media/materials/programs/BrightBloom2_ps20.hlsl +20 -0
  1079. data/deps/share/OGRE/media/materials/programs/ColdCasterFp.glsles +11 -0
  1080. data/deps/share/OGRE/media/materials/programs/ColdCasterVp.glsles +18 -0
  1081. data/deps/share/OGRE/media/materials/programs/Combine_fp.cg +15 -0
  1082. data/deps/share/OGRE/media/materials/programs/Combine_fp.glsles +17 -0
  1083. data/deps/share/OGRE/media/materials/programs/Common.cg +81 -0
  1084. data/deps/share/OGRE/media/materials/programs/DOF_ps.cg +47 -0
  1085. data/deps/share/OGRE/media/materials/programs/DOF_ps.glsles +94 -0
  1086. data/deps/share/OGRE/media/materials/programs/DepthShadowmap.hlsl +309 -0
  1087. data/deps/share/OGRE/media/materials/programs/DepthShadowmapCasterFp.glsl +16 -0
  1088. data/deps/share/OGRE/media/materials/programs/DepthShadowmapCasterFp.glsles +19 -0
  1089. data/deps/share/OGRE/media/materials/programs/DepthShadowmapCasterVp.glsl +24 -0
  1090. data/deps/share/OGRE/media/materials/programs/DepthShadowmapCasterVp.glsles +27 -0
  1091. data/deps/share/OGRE/media/materials/programs/DepthShadowmapNormalMapReceiverFp.glsl +84 -0
  1092. data/deps/share/OGRE/media/materials/programs/DepthShadowmapNormalMapReceiverFp.glsles +86 -0
  1093. data/deps/share/OGRE/media/materials/programs/DepthShadowmapNormalMapReceiverVp.glsl +42 -0
  1094. data/deps/share/OGRE/media/materials/programs/DepthShadowmapNormalMapReceiverVp.glsles +51 -0
  1095. data/deps/share/OGRE/media/materials/programs/DepthShadowmapReceiverFp.glsl +66 -0
  1096. data/deps/share/OGRE/media/materials/programs/DepthShadowmapReceiverFp.glsles +67 -0
  1097. data/deps/share/OGRE/media/materials/programs/DepthShadowmapReceiverVp.glsl +32 -0
  1098. data/deps/share/OGRE/media/materials/programs/DepthShadowmapReceiverVp.glsles +42 -0
  1099. data/deps/share/OGRE/media/materials/programs/DitherFP.cg +18 -0
  1100. data/deps/share/OGRE/media/materials/programs/DitherFP.glsles +25 -0
  1101. data/deps/share/OGRE/media/materials/programs/DualQuaternion.cg +159 -0
  1102. data/deps/share/OGRE/media/materials/programs/DualQuaternion.glsl +42 -0
  1103. data/deps/share/OGRE/media/materials/programs/DualQuaternion_Common.cg +85 -0
  1104. data/deps/share/OGRE/media/materials/programs/DualQuaternion_Common.glsl +70 -0
  1105. data/deps/share/OGRE/media/materials/programs/DualQuaternion_ShadowCaster.glsl +29 -0
  1106. data/deps/share/OGRE/media/materials/programs/DualQuaternion_TwoPhase.glsl +77 -0
  1107. data/deps/share/OGRE/media/materials/programs/DualQuaternion_TwoPhaseShadowCaster.glsl +41 -0
  1108. data/deps/share/OGRE/media/materials/programs/EmbossedFp.glsles +18 -0
  1109. data/deps/share/OGRE/media/materials/programs/Example_Basic.cg +400 -0
  1110. data/deps/share/OGRE/media/materials/programs/Example_Basic.hlsl +273 -0
  1111. data/deps/share/OGRE/media/materials/programs/Example_BasicFp.glsles +620 -0
  1112. data/deps/share/OGRE/media/materials/programs/Example_BasicVp.glsles +620 -0
  1113. data/deps/share/OGRE/media/materials/programs/Example_BumpMapping.cg +235 -0
  1114. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingFp.glsles +29 -0
  1115. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingShadowRcvFp.glsles +34 -0
  1116. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingShadowRcvVp.glsles +55 -0
  1117. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingSpecularFp.glsles +41 -0
  1118. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingSpecularVp.glsles +50 -0
  1119. data/deps/share/OGRE/media/materials/programs/Example_BumpMappingVp.glsles +50 -0
  1120. data/deps/share/OGRE/media/materials/programs/Example_CelShading.cg +64 -0
  1121. data/deps/share/OGRE/media/materials/programs/Example_CelShadingFp.glsles +25 -0
  1122. data/deps/share/OGRE/media/materials/programs/Example_CelShadingVp.glsles +50 -0
  1123. data/deps/share/OGRE/media/materials/programs/Example_Fresnel.cg +116 -0
  1124. data/deps/share/OGRE/media/materials/programs/Example_FresnelFp.glsles +40 -0
  1125. data/deps/share/OGRE/media/materials/programs/Example_FresnelPS.asm +72 -0
  1126. data/deps/share/OGRE/media/materials/programs/Example_FresnelVp.glsles +39 -0
  1127. data/deps/share/OGRE/media/materials/programs/Example_Projection.cg +28 -0
  1128. data/deps/share/OGRE/media/materials/programs/Example_ProjectionFp.glsles +56 -0
  1129. data/deps/share/OGRE/media/materials/programs/Example_ProjectionVp.glsles +26 -0
  1130. data/deps/share/OGRE/media/materials/programs/Example_TextureArrayPS.asm +10 -0
  1131. data/deps/share/OGRE/media/materials/programs/Example_TextureArrayPS.glsl +17 -0
  1132. data/deps/share/OGRE/media/materials/programs/Example_TextureArrayPS.hlsl4 +33 -0
  1133. data/deps/share/OGRE/media/materials/programs/Example_TextureArrayVS.cg +14 -0
  1134. data/deps/share/OGRE/media/materials/programs/Example_TextureArrayVS.glsl +11 -0
  1135. data/deps/share/OGRE/media/materials/programs/GlassFP.cg +9 -0
  1136. data/deps/share/OGRE/media/materials/programs/GlassFP.glsles +15 -0
  1137. data/deps/share/OGRE/media/materials/programs/Grass.cg +283 -0
  1138. data/deps/share/OGRE/media/materials/programs/GrassAmbientFp.glsles +22 -0
  1139. data/deps/share/OGRE/media/materials/programs/GrassAmbientVp.glsles +41 -0
  1140. data/deps/share/OGRE/media/materials/programs/GrassCasterFp.glsles +33 -0
  1141. data/deps/share/OGRE/media/materials/programs/GrassCasterVp.glsles +32 -0
  1142. data/deps/share/OGRE/media/materials/programs/GrassFp.glsles +25 -0
  1143. data/deps/share/OGRE/media/materials/programs/GrassReceiverFp.glsles +47 -0
  1144. data/deps/share/OGRE/media/materials/programs/GrassReceiverVp.glsles +57 -0
  1145. data/deps/share/OGRE/media/materials/programs/GrassTexVp.glsles +26 -0
  1146. data/deps/share/OGRE/media/materials/programs/GrassVp.glsles +38 -0
  1147. data/deps/share/OGRE/media/materials/programs/GrayScale.cg +20 -0
  1148. data/deps/share/OGRE/media/materials/programs/GrayScale.glsles +13 -0
  1149. data/deps/share/OGRE/media/materials/programs/HWBasicInstancing.cg +69 -0
  1150. data/deps/share/OGRE/media/materials/programs/HWBasicInstancing.vert +69 -0
  1151. data/deps/share/OGRE/media/materials/programs/HW_VTFInstancing.cg +124 -0
  1152. data/deps/share/OGRE/media/materials/programs/HW_VTFInstancing.vert +131 -0
  1153. data/deps/share/OGRE/media/materials/programs/HalftoneFP.cg +19 -0
  1154. data/deps/share/OGRE/media/materials/programs/HalftoneFP.glsles +24 -0
  1155. data/deps/share/OGRE/media/materials/programs/HeatBlurFp.glsles +63 -0
  1156. data/deps/share/OGRE/media/materials/programs/HeatBlurVp.glsles +16 -0
  1157. data/deps/share/OGRE/media/materials/programs/HeatCasterFp.glsles +11 -0
  1158. data/deps/share/OGRE/media/materials/programs/HeatCasterVp.glsles +18 -0
  1159. data/deps/share/OGRE/media/materials/programs/HeatVision.cg +230 -0
  1160. data/deps/share/OGRE/media/materials/programs/Instancing.frag +66 -0
  1161. data/deps/share/OGRE/media/materials/programs/Instancing.program +84 -0
  1162. data/deps/share/OGRE/media/materials/programs/InstancingMisc.cg +63 -0
  1163. data/deps/share/OGRE/media/materials/programs/InstancingMisc.vert +62 -0
  1164. data/deps/share/OGRE/media/materials/programs/InstancingVertexInterpolators.cg +34 -0
  1165. data/deps/share/OGRE/media/materials/programs/Instancing_ps.cg +57 -0
  1166. data/deps/share/OGRE/media/materials/programs/InvertFP.cg +6 -0
  1167. data/deps/share/OGRE/media/materials/programs/InvertFP.glsles +13 -0
  1168. data/deps/share/OGRE/media/materials/programs/LaplaceFP.cg +37 -0
  1169. data/deps/share/OGRE/media/materials/programs/LaplaceFP.glsles +40 -0
  1170. data/deps/share/OGRE/media/materials/programs/LightToHeatFp.glsles +39 -0
  1171. data/deps/share/OGRE/media/materials/programs/LightToHeatVp.glsles +17 -0
  1172. data/deps/share/OGRE/media/materials/programs/NightVisionFP.cg +27 -0
  1173. data/deps/share/OGRE/media/materials/programs/NightVisionFP.glsles +26 -0
  1174. data/deps/share/OGRE/media/materials/programs/Ocean2GLSL.frag +71 -0
  1175. data/deps/share/OGRE/media/materials/programs/Ocean2GLSL.vert +91 -0
  1176. data/deps/share/OGRE/media/materials/programs/Ocean2GLSLES.frag +76 -0
  1177. data/deps/share/OGRE/media/materials/programs/Ocean2GLSLES.vert +101 -0
  1178. data/deps/share/OGRE/media/materials/programs/Ocean2HLSL_Cg.frag +85 -0
  1179. data/deps/share/OGRE/media/materials/programs/Ocean2HLSL_Cg.vert +108 -0
  1180. data/deps/share/OGRE/media/materials/programs/OffsetMapping.cg +84 -0
  1181. data/deps/share/OGRE/media/materials/programs/OffsetMapping.hlsl +135 -0
  1182. data/deps/share/OGRE/media/materials/programs/OffsetMappingFp.glsl +69 -0
  1183. data/deps/share/OGRE/media/materials/programs/OffsetMappingFp.glsles +43 -0
  1184. data/deps/share/OGRE/media/materials/programs/OffsetMappingShadowsFp.glsles +70 -0
  1185. data/deps/share/OGRE/media/materials/programs/OffsetMappingShadowsVp.glsles +63 -0
  1186. data/deps/share/OGRE/media/materials/programs/OffsetMappingVp.glsl +54 -0
  1187. data/deps/share/OGRE/media/materials/programs/OffsetMappingVp.glsles +50 -0
  1188. data/deps/share/OGRE/media/materials/programs/OffsetMapping_specular.asm +44 -0
  1189. data/deps/share/OGRE/media/materials/programs/OffsetMapping_specular.glsles +49 -0
  1190. data/deps/share/OGRE/media/materials/programs/OldMovieFP.cg +55 -0
  1191. data/deps/share/OGRE/media/materials/programs/OldMovieFP.glsles +58 -0
  1192. data/deps/share/OGRE/media/materials/programs/OldTV.cg +42 -0
  1193. data/deps/share/OGRE/media/materials/programs/ParticleGS.cg +324 -0
  1194. data/deps/share/OGRE/media/materials/programs/ParticleGS.hlsl +316 -0
  1195. data/deps/share/OGRE/media/materials/programs/PassthroughFP.cg +14 -0
  1196. data/deps/share/OGRE/media/materials/programs/PassthroughFP.glsl +9 -0
  1197. data/deps/share/OGRE/media/materials/programs/PassthroughFP.glsles +14 -0
  1198. data/deps/share/OGRE/media/materials/programs/PassthroughVP.glsl +5 -0
  1199. data/deps/share/OGRE/media/materials/programs/PassthroughVP.glsles +13 -0
  1200. data/deps/share/OGRE/media/materials/programs/PosterizeFP.cg +17 -0
  1201. data/deps/share/OGRE/media/materials/programs/PosterizeFP.glsles +22 -0
  1202. data/deps/share/OGRE/media/materials/programs/Radial_Blur_FP.cg +58 -0
  1203. data/deps/share/OGRE/media/materials/programs/Radial_Blur_FP.glsles +62 -0
  1204. data/deps/share/OGRE/media/materials/programs/Radial_Blur_FP.hlsl +58 -0
  1205. data/deps/share/OGRE/media/materials/programs/ShaderInstancing.cg +101 -0
  1206. data/deps/share/OGRE/media/materials/programs/ShaderInstancing.vert +117 -0
  1207. data/deps/share/OGRE/media/materials/programs/SharpenEdgesFP.cg +23 -0
  1208. data/deps/share/OGRE/media/materials/programs/SharpenEdgesFP.glsles +31 -0
  1209. data/deps/share/OGRE/media/materials/programs/ShowNormals.glsles +16 -0
  1210. data/deps/share/OGRE/media/materials/programs/ShowTangents.glsles +16 -0
  1211. data/deps/share/OGRE/media/materials/programs/ShowUV.glsles +12 -0
  1212. data/deps/share/OGRE/media/materials/programs/ShowUVdir3D.glsles +14 -0
  1213. data/deps/share/OGRE/media/materials/programs/StdQuad_Tex2_vp.glsles +23 -0
  1214. data/deps/share/OGRE/media/materials/programs/StdQuad_Tex2a_vp.glsles +23 -0
  1215. data/deps/share/OGRE/media/materials/programs/StdQuad_Tex3_vp.glsles +25 -0
  1216. data/deps/share/OGRE/media/materials/programs/StdQuad_Tex4_vp.glsles +27 -0
  1217. data/deps/share/OGRE/media/materials/programs/StdQuad_vp.cg +113 -0
  1218. data/deps/share/OGRE/media/materials/programs/StdQuad_vp.glsl +11 -0
  1219. data/deps/share/OGRE/media/materials/programs/StdQuad_vp.glsles +17 -0
  1220. data/deps/share/OGRE/media/materials/programs/StdQuad_vp.hlsl +20 -0
  1221. data/deps/share/OGRE/media/materials/programs/Swizzle.gp +39 -0
  1222. data/deps/share/OGRE/media/materials/programs/SwizzleGP.cg +14 -0
  1223. data/deps/share/OGRE/media/materials/programs/SwizzleGP.glsl +40 -0
  1224. data/deps/share/OGRE/media/materials/programs/SwizzleGP.glsles +80 -0
  1225. data/deps/share/OGRE/media/materials/programs/TilingFP.cg +33 -0
  1226. data/deps/share/OGRE/media/materials/programs/TilingFP.glsles +36 -0
  1227. data/deps/share/OGRE/media/materials/programs/VTFInstancing.cg +107 -0
  1228. data/deps/share/OGRE/media/materials/programs/VTFInstancing.vert +113 -0
  1229. data/deps/share/OGRE/media/materials/programs/crowdVp.glsl +62 -0
  1230. data/deps/share/OGRE/media/materials/programs/crowdVp.glsles +68 -0
  1231. data/deps/share/OGRE/media/materials/programs/depthshadowobject.cg +185 -0
  1232. data/deps/share/OGRE/media/materials/programs/depthshadowobjectFp.glsles +183 -0
  1233. data/deps/share/OGRE/media/materials/programs/depthshadowobjectVp.glsles +183 -0
  1234. data/deps/share/OGRE/media/materials/programs/hdr.cg +25 -0
  1235. data/deps/share/OGRE/media/materials/programs/hdr.hlsl +165 -0
  1236. data/deps/share/OGRE/media/materials/programs/hdrFp.glsles +15 -0
  1237. data/deps/share/OGRE/media/materials/programs/hdr_bloom.glsl +22 -0
  1238. data/deps/share/OGRE/media/materials/programs/hdr_bloom.glsles +25 -0
  1239. data/deps/share/OGRE/media/materials/programs/hdr_downscale2x2luminence.glsl +24 -0
  1240. data/deps/share/OGRE/media/materials/programs/hdr_downscale2x2luminence.glsles +26 -0
  1241. data/deps/share/OGRE/media/materials/programs/hdr_downscale3x3.glsl +26 -0
  1242. data/deps/share/OGRE/media/materials/programs/hdr_downscale3x3.glsles +30 -0
  1243. data/deps/share/OGRE/media/materials/programs/hdr_downscale3x3brightpass.glsl +37 -0
  1244. data/deps/share/OGRE/media/materials/programs/hdr_downscale3x3brightpass.glsles +64 -0
  1245. data/deps/share/OGRE/media/materials/programs/hdr_finalToneMapping.glsl +28 -0
  1246. data/deps/share/OGRE/media/materials/programs/hdr_finalToneMapping.glsles +54 -0
  1247. data/deps/share/OGRE/media/materials/programs/hdr_tonemap_util.glsl +29 -0
  1248. data/deps/share/OGRE/media/materials/programs/hdrutils.hlsl +65 -0
  1249. data/deps/share/OGRE/media/materials/programs/instancing.cg +125 -0
  1250. data/deps/share/OGRE/media/materials/programs/instancingVp.glsl +39 -0
  1251. data/deps/share/OGRE/media/materials/programs/instancingVp.glsles +51 -0
  1252. data/deps/share/OGRE/media/materials/programs/isosurf.cg +155 -0
  1253. data/deps/share/OGRE/media/materials/programs/isosurf.hlsl +145 -0
  1254. data/deps/share/OGRE/media/materials/programs/mrttestfp.hlsl +48 -0
  1255. data/deps/share/OGRE/media/materials/programs/mrttestfp_quad.glsl +17 -0
  1256. data/deps/share/OGRE/media/materials/programs/mrttestfp_quad.glsles +20 -0
  1257. data/deps/share/OGRE/media/materials/programs/mrttestfp_scene.glsl +20 -0
  1258. data/deps/share/OGRE/media/materials/programs/mrttestfp_scene.glsles +21 -0
  1259. data/deps/share/OGRE/media/materials/programs/oceanGLSL.frag +45 -0
  1260. data/deps/share/OGRE/media/materials/programs/oceanGLSL.vert +32 -0
  1261. data/deps/share/OGRE/media/materials/programs/oceanHLSL_Cg.frag +45 -0
  1262. data/deps/share/OGRE/media/materials/programs/oceanHLSL_Cg.vert +41 -0
  1263. data/deps/share/OGRE/media/materials/programs/particlesgs.fx +367 -0
  1264. data/deps/share/OGRE/media/materials/programs/pssm.cg +164 -0
  1265. data/deps/share/OGRE/media/materials/programs/pssm.hlsl +167 -0
  1266. data/deps/share/OGRE/media/materials/programs/pssmCasterFp.glsles +13 -0
  1267. data/deps/share/OGRE/media/materials/programs/pssmCasterVp.glsles +21 -0
  1268. data/deps/share/OGRE/media/materials/programs/pssmFp.glsles +0 -0
  1269. data/deps/share/OGRE/media/materials/programs/pssmReceiverFp.glsles +92 -0
  1270. data/deps/share/OGRE/media/materials/programs/pssmReceiverVp.glsles +63 -0
  1271. data/deps/share/OGRE/media/materials/programs/pssmVp.glsles +0 -0
  1272. data/deps/share/OGRE/media/materials/programs/shadows.cg +144 -0
  1273. data/deps/share/OGRE/media/materials/programs/shadows.glsl +146 -0
  1274. data/deps/share/OGRE/media/materials/programs/skinningTwoWeightsShadowCasterVp.glsl +42 -0
  1275. data/deps/share/OGRE/media/materials/programs/skinningTwoWeightsShadowCasterVp.glsles +46 -0
  1276. data/deps/share/OGRE/media/materials/programs/skinningTwoWeightsVp.glsl +61 -0
  1277. data/deps/share/OGRE/media/materials/programs/skinningTwoWeightsVp.glsles +63 -0
  1278. data/deps/share/OGRE/media/materials/programs/varianceshadowcasterfp.cg +65 -0
  1279. data/deps/share/OGRE/media/materials/programs/varianceshadowcasterfp.glsles +132 -0
  1280. data/deps/share/OGRE/media/materials/programs/varianceshadowcastervp.cg +44 -0
  1281. data/deps/share/OGRE/media/materials/programs/varianceshadowcastervp.glsles +88 -0
  1282. data/deps/share/OGRE/media/materials/programs/varianceshadowreceiverfp.cg +107 -0
  1283. data/deps/share/OGRE/media/materials/programs/varianceshadowreceiverfp.glsles +214 -0
  1284. data/deps/share/OGRE/media/materials/programs/varianceshadowreceivervp.cg +47 -0
  1285. data/deps/share/OGRE/media/materials/programs/varianceshadowreceivervp.glsles +94 -0
  1286. data/deps/share/OGRE/media/materials/scripts/ASCII.material +55 -0
  1287. data/deps/share/OGRE/media/materials/scripts/ASMSwizzle.material +19 -0
  1288. data/deps/share/OGRE/media/materials/scripts/BlackAndWhite.material +45 -0
  1289. data/deps/share/OGRE/media/materials/scripts/Bloom.material +217 -0
  1290. data/deps/share/OGRE/media/materials/scripts/Bloom2.material +360 -0
  1291. data/deps/share/OGRE/media/materials/scripts/CGSwizzle.material +20 -0
  1292. data/deps/share/OGRE/media/materials/scripts/CompositorDemo.material +18 -0
  1293. data/deps/share/OGRE/media/materials/scripts/DOF.material +94 -0
  1294. data/deps/share/OGRE/media/materials/scripts/DepthShadowmap.material +747 -0
  1295. data/deps/share/OGRE/media/materials/scripts/Dither.material +57 -0
  1296. data/deps/share/OGRE/media/materials/scripts/DualQuaternion.material +112 -0
  1297. data/deps/share/OGRE/media/materials/scripts/DualQuaternion.program +154 -0
  1298. data/deps/share/OGRE/media/materials/scripts/Embossed.material +44 -0
  1299. data/deps/share/OGRE/media/materials/scripts/Example-Water.material +183 -0
  1300. data/deps/share/OGRE/media/materials/scripts/Examples-Advanced.material +842 -0
  1301. data/deps/share/OGRE/media/materials/scripts/Examples-DynTex.material +38 -0
  1302. data/deps/share/OGRE/media/materials/scripts/Examples-Water.material +183 -0
  1303. data/deps/share/OGRE/media/materials/scripts/Examples.compositor +788 -0
  1304. data/deps/share/OGRE/media/materials/scripts/Examples.material +2035 -0
  1305. data/deps/share/OGRE/media/materials/scripts/Examples.program +340 -0
  1306. data/deps/share/OGRE/media/materials/scripts/GLSLSwizzle.material +37 -0
  1307. data/deps/share/OGRE/media/materials/scripts/Glass.material +56 -0
  1308. data/deps/share/OGRE/media/materials/scripts/HWInstancing.material +131 -0
  1309. data/deps/share/OGRE/media/materials/scripts/HW_VTFInstancing.material +445 -0
  1310. data/deps/share/OGRE/media/materials/scripts/HW_VTF_LUTInstancing.material +438 -0
  1311. data/deps/share/OGRE/media/materials/scripts/Halftone.material +56 -0
  1312. data/deps/share/OGRE/media/materials/scripts/HeatVision.material +317 -0
  1313. data/deps/share/OGRE/media/materials/scripts/Hurt.material +18 -0
  1314. data/deps/share/OGRE/media/materials/scripts/InstancingMisc.material +81 -0
  1315. data/deps/share/OGRE/media/materials/scripts/Invert.material +47 -0
  1316. data/deps/share/OGRE/media/materials/scripts/IsoSurf.material +127 -0
  1317. data/deps/share/OGRE/media/materials/scripts/Laplace.material +49 -0
  1318. data/deps/share/OGRE/media/materials/scripts/MRTtest.material +133 -0
  1319. data/deps/share/OGRE/media/materials/scripts/MotionBlur.material +101 -0
  1320. data/deps/share/OGRE/media/materials/scripts/NightVision.material +49 -0
  1321. data/deps/share/OGRE/media/materials/scripts/Ocean.controls +90 -0
  1322. data/deps/share/OGRE/media/materials/scripts/Ocean.material +618 -0
  1323. data/deps/share/OGRE/media/materials/scripts/OffsetMapping.material +447 -0
  1324. data/deps/share/OGRE/media/materials/scripts/Ogre.material +66 -0
  1325. data/deps/share/OGRE/media/materials/scripts/OldMovie.material +85 -0
  1326. data/deps/share/OGRE/media/materials/scripts/OldTV.material +59 -0
  1327. data/deps/share/OGRE/media/materials/scripts/ParticleGS.material +200 -0
  1328. data/deps/share/OGRE/media/materials/scripts/Penguin.material +13 -0
  1329. data/deps/share/OGRE/media/materials/scripts/Posterize.material +46 -0
  1330. data/deps/share/OGRE/media/materials/scripts/RZR-002.material +15 -0
  1331. data/deps/share/OGRE/media/materials/scripts/RadialBlur.material +49 -0
  1332. data/deps/share/OGRE/media/materials/scripts/SSAO/CreaseShading.cg +65 -0
  1333. data/deps/share/OGRE/media/materials/scripts/SSAO/CreaseShading.material +57 -0
  1334. data/deps/share/OGRE/media/materials/scripts/SSAO/Crytek.cg +88 -0
  1335. data/deps/share/OGRE/media/materials/scripts/SSAO/Crytek.material +57 -0
  1336. data/deps/share/OGRE/media/materials/scripts/SSAO/GBuffer.cg +40 -0
  1337. data/deps/share/OGRE/media/materials/scripts/SSAO/GBuffer.material +61 -0
  1338. data/deps/share/OGRE/media/materials/scripts/SSAO/HemisphereMC.cg +86 -0
  1339. data/deps/share/OGRE/media/materials/scripts/SSAO/HemisphereMC.material +60 -0
  1340. data/deps/share/OGRE/media/materials/scripts/SSAO/HorizonBased.cg +95 -0
  1341. data/deps/share/OGRE/media/materials/scripts/SSAO/HorizonBased.material +58 -0
  1342. data/deps/share/OGRE/media/materials/scripts/SSAO/SSAO.compositor +224 -0
  1343. data/deps/share/OGRE/media/materials/scripts/SSAO/SSAOPost.cg +153 -0
  1344. data/deps/share/OGRE/media/materials/scripts/SSAO/SSAOPost.compositor +77 -0
  1345. data/deps/share/OGRE/media/materials/scripts/SSAO/SSAOPost.material +239 -0
  1346. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowDepth.cg +13 -0
  1347. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowDepth.material +47 -0
  1348. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowNormals.cg +11 -0
  1349. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowNormals.material +40 -0
  1350. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowViewPos.cg +11 -0
  1351. data/deps/share/OGRE/media/materials/scripts/SSAO/ShowViewPos.material +40 -0
  1352. data/deps/share/OGRE/media/materials/scripts/SSAO/UnsharpMask.cg +79 -0
  1353. data/deps/share/OGRE/media/materials/scripts/SSAO/UnsharpMask.material +141 -0
  1354. data/deps/share/OGRE/media/materials/scripts/SSAO/Volumetric.cg +82 -0
  1355. data/deps/share/OGRE/media/materials/scripts/SSAO/Volumetric.material +59 -0
  1356. data/deps/share/OGRE/media/materials/scripts/ShaderInstancing.material +380 -0
  1357. data/deps/share/OGRE/media/materials/scripts/ShaderSystem.material +20 -0
  1358. data/deps/share/OGRE/media/materials/scripts/SharpenEdges.material +66 -0
  1359. data/deps/share/OGRE/media/materials/scripts/StdQuad_vp.program +162 -0
  1360. data/deps/share/OGRE/media/materials/scripts/TextureAtlasSampleOrg.tai +36 -0
  1361. data/deps/share/OGRE/media/materials/scripts/TextureAtlasSampleWrap.tai +36 -0
  1362. data/deps/share/OGRE/media/materials/scripts/Tiling.material +50 -0
  1363. data/deps/share/OGRE/media/materials/scripts/VTFInstancing.material +438 -0
  1364. data/deps/share/OGRE/media/materials/scripts/VarianceShadowmap.material +103 -0
  1365. data/deps/share/OGRE/media/materials/scripts/facial.material +98 -0
  1366. data/deps/share/OGRE/media/materials/scripts/hdr.material +332 -0
  1367. data/deps/share/OGRE/media/materials/scripts/instancing.material +185 -0
  1368. data/deps/share/OGRE/media/materials/scripts/pssm.material +226 -0
  1369. data/deps/share/OGRE/media/materials/scripts/shadows.material +130 -0
  1370. data/deps/share/OGRE/media/materials/scripts/sibenik.material +305 -0
  1371. data/deps/share/OGRE/media/materials/scripts/smoke.material +19 -0
  1372. data/deps/share/OGRE/media/materials/textures/10points.png +0 -0
  1373. data/deps/share/OGRE/media/materials/textures/1D_Noise.png +0 -0
  1374. data/deps/share/OGRE/media/materials/textures/1D_Noise2.png +0 -0
  1375. data/deps/share/OGRE/media/materials/textures/1d_SPIRAL.png +0 -0
  1376. data/deps/share/OGRE/media/materials/textures/1d_debug.png +0 -0
  1377. data/deps/share/OGRE/media/materials/textures/8x8PagesSplotches2.png +0 -0
  1378. data/deps/share/OGRE/media/materials/textures/ASCII.dds +0 -0
  1379. data/deps/share/OGRE/media/materials/textures/BeachStones.jpg +0 -0
  1380. data/deps/share/OGRE/media/materials/textures/BumpyMetal.jpg +0 -0
  1381. data/deps/share/OGRE/media/materials/textures/Chrome.jpg +0 -0
  1382. data/deps/share/OGRE/media/materials/textures/Dirt.jpg +0 -0
  1383. data/deps/share/OGRE/media/materials/textures/Dr_Bunsen_Head.jpg +0 -0
  1384. data/deps/share/OGRE/media/materials/textures/GLX_icon.png +0 -0
  1385. data/deps/share/OGRE/media/materials/textures/GreenSkin.jpg +0 -0
  1386. data/deps/share/OGRE/media/materials/textures/HeatLookup.tga +0 -0
  1387. data/deps/share/OGRE/media/materials/textures/HeatNoise.tga +0 -0
  1388. data/deps/share/OGRE/media/materials/textures/KAMEN-stup.jpg +0 -0
  1389. data/deps/share/OGRE/media/materials/textures/KAMEN320x240-bump.jpg +0 -0
  1390. data/deps/share/OGRE/media/materials/textures/KAMEN320x240.jpg +0 -0
  1391. data/deps/share/OGRE/media/materials/textures/LowRes.png +0 -0
  1392. data/deps/share/OGRE/media/materials/textures/MRAMOR-bump.jpg +0 -0
  1393. data/deps/share/OGRE/media/materials/textures/MRAMOR6X6.jpg +0 -0
  1394. data/deps/share/OGRE/media/materials/textures/MtlPlat2.jpg +0 -0
  1395. data/deps/share/OGRE/media/materials/textures/NMBalls.png +0 -0
  1396. data/deps/share/OGRE/media/materials/textures/NMBumpsOut.png +0 -0
  1397. data/deps/share/OGRE/media/materials/textures/NMHollyBumps.png +0 -0
  1398. data/deps/share/OGRE/media/materials/textures/NMStripes.png +0 -0
  1399. data/deps/share/OGRE/media/materials/textures/NPRMetallic.tga +0 -0
  1400. data/deps/share/OGRE/media/materials/textures/NoiseVolume.dds +0 -0
  1401. data/deps/share/OGRE/media/materials/textures/Panels_Diffuse.png +0 -0
  1402. data/deps/share/OGRE/media/materials/textures/Panels_Normal_Obj.png +0 -0
  1403. data/deps/share/OGRE/media/materials/textures/Panels_Normal_Tangent.png +0 -0
  1404. data/deps/share/OGRE/media/materials/textures/Panels_reflection.png +0 -0
  1405. data/deps/share/OGRE/media/materials/textures/Panels_refmask.png +0 -0
  1406. data/deps/share/OGRE/media/materials/textures/RZR-002.png +0 -0
  1407. data/deps/share/OGRE/media/materials/textures/Random3D.dds +0 -0
  1408. data/deps/share/OGRE/media/materials/textures/RustedMetal.jpg +0 -0
  1409. data/deps/share/OGRE/media/materials/textures/RustyBarrel.png +0 -0
  1410. data/deps/share/OGRE/media/materials/textures/RustySteel.jpg +0 -0
  1411. data/deps/share/OGRE/media/materials/textures/SSAO/4InterleavedKMeansDisk8x4.png +0 -0
  1412. data/deps/share/OGRE/media/materials/textures/SSAO/gray256.png +0 -0
  1413. data/deps/share/OGRE/media/materials/textures/SSAO/importance4InterleavedSphereHemisphere8x4.png +0 -0
  1414. data/deps/share/OGRE/media/materials/textures/SSAO/rand1x32.png +0 -0
  1415. data/deps/share/OGRE/media/materials/textures/SSAO/randCosSinJitter4x4.png +0 -0
  1416. data/deps/share/OGRE/media/materials/textures/SSAO/regularSphereJittered4.png +0 -0
  1417. data/deps/share/OGRE/media/materials/textures/Sepia1D.tga +0 -0
  1418. data/deps/share/OGRE/media/materials/textures/SmallLeaf_BP.png +0 -0
  1419. data/deps/share/OGRE/media/materials/textures/TextureAtlasSampleOrg0.png +0 -0
  1420. data/deps/share/OGRE/media/materials/textures/TextureAtlasSampleWrap0.png +0 -0
  1421. data/deps/share/OGRE/media/materials/textures/Water01.jpg +0 -0
  1422. data/deps/share/OGRE/media/materials/textures/Water02.jpg +0 -0
  1423. data/deps/share/OGRE/media/materials/textures/WaterNormal1.tga +0 -0
  1424. data/deps/share/OGRE/media/materials/textures/WaterNormal2.tga +0 -0
  1425. data/deps/share/OGRE/media/materials/textures/WoodPallet.png +0 -0
  1426. data/deps/share/OGRE/media/materials/textures/atheneNormalMap.png +0 -0
  1427. data/deps/share/OGRE/media/materials/textures/aureola.png +0 -0
  1428. data/deps/share/OGRE/media/materials/textures/basic_droplet.png +0 -0
  1429. data/deps/share/OGRE/media/materials/textures/blue_jaiqua.jpg +0 -0
  1430. data/deps/share/OGRE/media/materials/textures/cel_shading_diffuse.png +0 -0
  1431. data/deps/share/OGRE/media/materials/textures/cel_shading_edge.png +0 -0
  1432. data/deps/share/OGRE/media/materials/textures/cel_shading_specular.png +0 -0
  1433. data/deps/share/OGRE/media/materials/textures/checker.png +0 -0
  1434. data/deps/share/OGRE/media/materials/textures/circuit.dds +0 -0
  1435. data/deps/share/OGRE/media/materials/textures/clouds.jpg +0 -0
  1436. data/deps/share/OGRE/media/materials/textures/cursor.png +0 -0
  1437. data/deps/share/OGRE/media/materials/textures/dark_grid.png +0 -0
  1438. data/deps/share/OGRE/media/materials/textures/dirt01.jpg +0 -0
  1439. data/deps/share/OGRE/media/materials/textures/dkyellow.png +0 -0
  1440. data/deps/share/OGRE/media/materials/textures/droplet.png +0 -0
  1441. data/deps/share/OGRE/media/materials/textures/egyptrockyfull.jpg +0 -0
  1442. data/deps/share/OGRE/media/materials/textures/flare.png +0 -0
  1443. data/deps/share/OGRE/media/materials/textures/flare_alpha.dds +0 -0
  1444. data/deps/share/OGRE/media/materials/textures/flaretrail.png +0 -0
  1445. data/deps/share/OGRE/media/materials/textures/frost.png +0 -0
  1446. data/deps/share/OGRE/media/materials/textures/fw12b.jpg +0 -0
  1447. data/deps/share/OGRE/media/materials/textures/gras_02.png +0 -0
  1448. data/deps/share/OGRE/media/materials/textures/grassWalpha.tga +0 -0
  1449. data/deps/share/OGRE/media/materials/textures/grass_1024.jpg +0 -0
  1450. data/deps/share/OGRE/media/materials/textures/img1.png +0 -0
  1451. data/deps/share/OGRE/media/materials/textures/img2.png +0 -0
  1452. data/deps/share/OGRE/media/materials/textures/leaf.png +0 -0
  1453. data/deps/share/OGRE/media/materials/textures/nm_bk.png +0 -0
  1454. data/deps/share/OGRE/media/materials/textures/nm_dn.png +0 -0
  1455. data/deps/share/OGRE/media/materials/textures/nm_fr.png +0 -0
  1456. data/deps/share/OGRE/media/materials/textures/nm_lf.png +0 -0
  1457. data/deps/share/OGRE/media/materials/textures/nm_rt.png +0 -0
  1458. data/deps/share/OGRE/media/materials/textures/nm_up.png +0 -0
  1459. data/deps/share/OGRE/media/materials/textures/normalNoiseColor.png +0 -0
  1460. data/deps/share/OGRE/media/materials/textures/nskingr.jpg +0 -0
  1461. data/deps/share/OGRE/media/materials/textures/nvidia/TextureUsageAgreement.txt +26 -0
  1462. data/deps/share/OGRE/media/materials/textures/nvidia/dirt_grayrocky_diffusespecular.dds +0 -0
  1463. data/deps/share/OGRE/media/materials/textures/nvidia/dirt_grayrocky_normalheight.dds +0 -0
  1464. data/deps/share/OGRE/media/materials/textures/nvidia/grass_green-01_diffusespecular.dds +0 -0
  1465. data/deps/share/OGRE/media/materials/textures/nvidia/grass_green-01_normalheight.dds +0 -0
  1466. data/deps/share/OGRE/media/materials/textures/nvidia/growth_weirdfungus-03_diffusespecular.dds +0 -0
  1467. data/deps/share/OGRE/media/materials/textures/nvidia/growth_weirdfungus-03_normalheight.dds +0 -0
  1468. data/deps/share/OGRE/media/materials/textures/ogreborder.png +0 -0
  1469. data/deps/share/OGRE/media/materials/textures/ogreborderUp.png +0 -0
  1470. data/deps/share/OGRE/media/materials/textures/ogrebordercenter.png +0 -0
  1471. data/deps/share/OGRE/media/materials/textures/ogregui.tga +0 -0
  1472. data/deps/share/OGRE/media/materials/textures/ogrelogo-small.jpg +0 -0
  1473. data/deps/share/OGRE/media/materials/textures/ogrelogo.png +0 -0
  1474. data/deps/share/OGRE/media/materials/textures/particle.dds +0 -0
  1475. data/deps/share/OGRE/media/materials/textures/penguin.jpg +0 -0
  1476. data/deps/share/OGRE/media/materials/textures/perlinvolume.dds +0 -0
  1477. data/deps/share/OGRE/media/materials/textures/r2skin.jpg +0 -0
  1478. data/deps/share/OGRE/media/materials/textures/radial.png +0 -0
  1479. data/deps/share/OGRE/media/materials/textures/random.png +0 -0
  1480. data/deps/share/OGRE/media/materials/textures/ribbonband.png +0 -0
  1481. data/deps/share/OGRE/media/materials/textures/rockwall.tga +0 -0
  1482. data/deps/share/OGRE/media/materials/textures/rockwall_NH.tga +0 -0
  1483. data/deps/share/OGRE/media/materials/textures/scr-back.png +0 -0
  1484. data/deps/share/OGRE/media/materials/textures/scr-down-p.png +0 -0
  1485. data/deps/share/OGRE/media/materials/textures/scr-down.png +0 -0
  1486. data/deps/share/OGRE/media/materials/textures/scr-thumb.png +0 -0
  1487. data/deps/share/OGRE/media/materials/textures/scr-up-p.png +0 -0
  1488. data/deps/share/OGRE/media/materials/textures/scr-up.png +0 -0
  1489. data/deps/share/OGRE/media/materials/textures/smoke.png +0 -0
  1490. data/deps/share/OGRE/media/materials/textures/smokecolors.png +0 -0
  1491. data/deps/share/OGRE/media/materials/textures/snow_1024.jpg +0 -0
  1492. data/deps/share/OGRE/media/materials/textures/spacesky.jpg +0 -0
  1493. data/deps/share/OGRE/media/materials/textures/spheremap.png +0 -0
  1494. data/deps/share/OGRE/media/materials/textures/spine_strips.dds +0 -0
  1495. data/deps/share/OGRE/media/materials/textures/spotlight_image.png +0 -0
  1496. data/deps/share/OGRE/media/materials/textures/steelhead.png +0 -0
  1497. data/deps/share/OGRE/media/materials/textures/strugotine.jpg +0 -0
  1498. data/deps/share/OGRE/media/materials/textures/terr_dirt-grass.jpg +0 -0
  1499. data/deps/share/OGRE/media/materials/textures/terr_rock-dirt.jpg +0 -0
  1500. data/deps/share/OGRE/media/materials/textures/terr_rock6.jpg +0 -0
  1501. data/deps/share/OGRE/media/materials/textures/terrain.png +0 -0
  1502. data/deps/share/OGRE/media/materials/textures/terrain_detail.jpg +0 -0
  1503. data/deps/share/OGRE/media/materials/textures/terrain_texture.jpg +0 -0
  1504. data/deps/share/OGRE/media/materials/textures/texmap2.jpg +0 -0
  1505. data/deps/share/OGRE/media/materials/textures/tusk.jpg +0 -0
  1506. data/deps/share/OGRE/media/materials/textures/waveNM.png +0 -0
  1507. data/deps/share/OGRE/media/materials/textures/waves2.dds +0 -0
  1508. data/deps/share/OGRE/media/materials/textures/white.bmp +0 -0
  1509. data/deps/share/OGRE/media/models/Barrel.mesh +0 -0
  1510. data/deps/share/OGRE/media/models/RZR-002.mesh +0 -0
  1511. data/deps/share/OGRE/media/models/ShaderSystem.mesh +0 -0
  1512. data/deps/share/OGRE/media/models/WoodPallet.mesh +0 -0
  1513. data/deps/share/OGRE/media/models/athene.mesh +0 -0
  1514. data/deps/share/OGRE/media/models/column.mesh +0 -0
  1515. data/deps/share/OGRE/media/models/cornell.mesh +0 -0
  1516. data/deps/share/OGRE/media/models/cube.mesh +0 -0
  1517. data/deps/share/OGRE/media/models/facial.mesh +0 -0
  1518. data/deps/share/OGRE/media/models/fish.mesh +0 -0
  1519. data/deps/share/OGRE/media/models/fish.skeleton +0 -0
  1520. data/deps/share/OGRE/media/models/geosphere4500.mesh +0 -0
  1521. data/deps/share/OGRE/media/models/geosphere8000.mesh +0 -0
  1522. data/deps/share/OGRE/media/models/jaiqua.mesh +0 -0
  1523. data/deps/share/OGRE/media/models/jaiqua.skeleton +0 -0
  1524. data/deps/share/OGRE/media/models/knot.mesh +0 -0
  1525. data/deps/share/OGRE/media/models/ninja.mesh +0 -0
  1526. data/deps/share/OGRE/media/models/ninja.skeleton +0 -0
  1527. data/deps/share/OGRE/media/models/ogrehead.mesh +0 -0
  1528. data/deps/share/OGRE/media/models/penguin.mesh +0 -0
  1529. data/deps/share/OGRE/media/models/penguin.skeleton +0 -0
  1530. data/deps/share/OGRE/media/models/razor.mesh +0 -0
  1531. data/deps/share/OGRE/media/models/robot.mesh +0 -0
  1532. data/deps/share/OGRE/media/models/robot.skeleton +0 -0
  1533. data/deps/share/OGRE/media/models/sibenik.mesh +0 -0
  1534. data/deps/share/OGRE/media/models/sphere.mesh +0 -0
  1535. data/deps/share/OGRE/media/models/spine.mesh +0 -0
  1536. data/deps/share/OGRE/media/models/spine.mesh.skeleton +0 -0
  1537. data/deps/share/OGRE/media/models/tudorhouse.mesh +0 -0
  1538. data/deps/share/OGRE/media/packs/SdkTrays.zip +0 -0
  1539. data/deps/share/OGRE/media/packs/Sinbad.zip +0 -0
  1540. data/deps/share/OGRE/media/packs/chiropteraDM.pk3 +0 -0
  1541. data/deps/share/OGRE/media/packs/chiropteraDM.txt +99 -0
  1542. data/deps/share/OGRE/media/packs/cubemap.zip +0 -0
  1543. data/deps/share/OGRE/media/packs/cubemapsJS.zip +0 -0
  1544. data/deps/share/OGRE/media/packs/dragon.zip +0 -0
  1545. data/deps/share/OGRE/media/packs/fresneldemo.zip +0 -0
  1546. data/deps/share/OGRE/media/packs/ogredance.zip +0 -0
  1547. data/deps/share/OGRE/media/packs/ogretestmap.zip +0 -0
  1548. data/deps/share/OGRE/media/packs/skybox.zip +0 -0
  1549. data/deps/share/OGRE/media/particle/Examples-Water.particle +35 -0
  1550. data/deps/share/OGRE/media/particle/Examples.particle +381 -0
  1551. data/deps/share/OGRE/media/particle/emitted_emitter.particle +56 -0
  1552. data/deps/share/OGRE/media/particle/smoke.particle +44 -0
  1553. data/deps/share/OGRE/media/terrain.cfg +71 -0
  1554. data/deps/share/OGRE/media/thumbnails/thumb_bezier.png +0 -0
  1555. data/deps/share/OGRE/media/thumbnails/thumb_bsp.png +0 -0
  1556. data/deps/share/OGRE/media/thumbnails/thumb_bump.png +0 -0
  1557. data/deps/share/OGRE/media/thumbnails/thumb_camtrack.png +0 -0
  1558. data/deps/share/OGRE/media/thumbnails/thumb_cel.png +0 -0
  1559. data/deps/share/OGRE/media/thumbnails/thumb_char.png +0 -0
  1560. data/deps/share/OGRE/media/thumbnails/thumb_comp.png +0 -0
  1561. data/deps/share/OGRE/media/thumbnails/thumb_cubemap.png +0 -0
  1562. data/deps/share/OGRE/media/thumbnails/thumb_deferred.png +0 -0
  1563. data/deps/share/OGRE/media/thumbnails/thumb_dualquaternionskinning.png +0 -0
  1564. data/deps/share/OGRE/media/thumbnails/thumb_dyntex.png +0 -0
  1565. data/deps/share/OGRE/media/thumbnails/thumb_error.png +0 -0
  1566. data/deps/share/OGRE/media/thumbnails/thumb_facial.png +0 -0
  1567. data/deps/share/OGRE/media/thumbnails/thumb_fresnel.png +0 -0
  1568. data/deps/share/OGRE/media/thumbnails/thumb_grass.png +0 -0
  1569. data/deps/share/OGRE/media/thumbnails/thumb_instancing.png +0 -0
  1570. data/deps/share/OGRE/media/thumbnails/thumb_isosurf.png +0 -0
  1571. data/deps/share/OGRE/media/thumbnails/thumb_lighting.png +0 -0
  1572. data/deps/share/OGRE/media/thumbnails/thumb_newinstancing.png +0 -0
  1573. data/deps/share/OGRE/media/thumbnails/thumb_ocean.png +0 -0
  1574. data/deps/share/OGRE/media/thumbnails/thumb_particlegs.png +0 -0
  1575. data/deps/share/OGRE/media/thumbnails/thumb_particles.png +0 -0
  1576. data/deps/share/OGRE/media/thumbnails/thumb_playpen.png +0 -0
  1577. data/deps/share/OGRE/media/thumbnails/thumb_shadersystem.png +0 -0
  1578. data/deps/share/OGRE/media/thumbnails/thumb_shadows.png +0 -0
  1579. data/deps/share/OGRE/media/thumbnails/thumb_skelanim.png +0 -0
  1580. data/deps/share/OGRE/media/thumbnails/thumb_skybox.png +0 -0
  1581. data/deps/share/OGRE/media/thumbnails/thumb_skydome.png +0 -0
  1582. data/deps/share/OGRE/media/thumbnails/thumb_skyplane.png +0 -0
  1583. data/deps/share/OGRE/media/thumbnails/thumb_smoke.png +0 -0
  1584. data/deps/share/OGRE/media/thumbnails/thumb_spheremap.png +0 -0
  1585. data/deps/share/OGRE/media/thumbnails/thumb_ssao.png +0 -0
  1586. data/deps/share/OGRE/media/thumbnails/thumb_terrain.png +0 -0
  1587. data/deps/share/OGRE/media/thumbnails/thumb_texarray.png +0 -0
  1588. data/deps/share/OGRE/media/thumbnails/thumb_texfx.png +0 -0
  1589. data/deps/share/OGRE/media/thumbnails/thumb_trans.png +0 -0
  1590. data/deps/share/OGRE/media/thumbnails/thumb_visual_tests.png +0 -0
  1591. data/deps/share/OGRE/media/thumbnails/thumb_voltex.png +0 -0
  1592. data/deps/share/OGRE/media/thumbnails/thumb_water.png +0 -0
  1593. data/lib/OIS.so +0 -0
  1594. data/lib/Ogre.so +0 -0
  1595. data/lib/OgreBites.so +0 -0
  1596. data/lib/OgreConfig.rb +37 -0
  1597. data/lib/Procedural.so +0 -0
  1598. data/lib/Version.rb +5 -0
  1599. data/sample/Charactor/CameraMover.rb +184 -0
  1600. data/sample/Charactor/Sinbad.rb +246 -0
  1601. data/sample/Charactor/SinbadCharacter.rb +379 -0
  1602. data/sample/Charactor/UiListener.rb +65 -0
  1603. data/sample/Charactor/plugins.cfg +17 -0
  1604. data/sample/Charactor/resources.cfg +22 -0
  1605. data/sample/Charactor/sinbad +5 -0
  1606. data/sample/Charactor/sinbad.win +5 -0
  1607. metadata +1651 -0
@@ -0,0 +1,1775 @@
1
+ /*
2
+ -----------------------------------------------------------------------------
3
+ This source file is part of OGRE
4
+ (Object-oriented Graphics Rendering Engine)
5
+ For the latest info, see http://www.ogre3d.org
6
+
7
+ Copyright (c) 2000-2012 Torus Knot Software Ltd
8
+
9
+ Permission is hereby granted, free of charge, to any person obtaining a copy
10
+ of this software and associated documentation files (the "Software"), to deal
11
+ in the Software without restriction, including without limitation the rights
12
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
+ copies of the Software, and to permit persons to whom the Software is
14
+ furnished to do so, subject to the following conditions:
15
+
16
+ The above copyright notice and this permission notice shall be included in
17
+ all copies or substantial portions of the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
+ THE SOFTWARE.
26
+ -----------------------------------------------------------------------------
27
+ */
28
+ #ifndef __Pass_H__
29
+ #define __Pass_H__
30
+
31
+ #include "OgrePrerequisites.h"
32
+ #include "OgreGpuProgram.h"
33
+ #include "OgreColourValue.h"
34
+ #include "OgreBlendMode.h"
35
+ #include "OgreCommon.h"
36
+ #include "OgreLight.h"
37
+ #include "OgreTextureUnitState.h"
38
+ #include "OgreUserObjectBindings.h"
39
+
40
+ namespace Ogre {
41
+
42
+ /** \addtogroup Core
43
+ * @{
44
+ */
45
+ /** \addtogroup Materials
46
+ * @{
47
+ */
48
+ /// Categorisation of passes for the purpose of additive lighting
49
+ enum IlluminationStage
50
+ {
51
+ /// Part of the rendering which occurs without any kind of direct lighting
52
+ IS_AMBIENT,
53
+ /// Part of the rendering which occurs per light
54
+ IS_PER_LIGHT,
55
+ /// Post-lighting rendering
56
+ IS_DECAL,
57
+ /// Not determined
58
+ IS_UNKNOWN
59
+ };
60
+
61
+ /** Class defining a single pass of a Technique (of a Material), i.e.
62
+ a single rendering call.
63
+ @remarks
64
+ Rendering can be repeated with many passes for more complex effects.
65
+ Each pass is either a fixed-function pass (meaning it does not use
66
+ a vertex or fragment program) or a programmable pass (meaning it does
67
+ use either a vertex and fragment program, or both).
68
+ @par
69
+ Programmable passes are complex to define, because they require custom
70
+ programs and you have to set all constant inputs to the programs (like
71
+ the position of lights, any base material colours you wish to use etc), but
72
+ they do give you much total flexibility over the algorithms used to render your
73
+ pass, and you can create some effects which are impossible with a fixed-function pass.
74
+ On the other hand, you can define a fixed-function pass in very little time, and
75
+ you can use a range of fixed-function effects like environment mapping very
76
+ easily, plus your pass will be more likely to be compatible with older hardware.
77
+ There are pros and cons to both, just remember that if you use a programmable
78
+ pass to create some great effects, allow more time for definition and testing.
79
+ */
80
+ class _OgreExport Pass : public PassAlloc
81
+ {
82
+ public:
83
+ /** Definition of a functor for calculating the hashcode of a Pass.
84
+ @remarks
85
+ The hashcode of a Pass is used to sort Passes for rendering, in order
86
+ to reduce the number of render state changes. Each Pass represents a
87
+ single unique set of states, but by ordering them, state changes can
88
+ be minimised between passes. An implementation of this functor should
89
+ order passes so that the elements that you want to keep constant are
90
+ sorted next to each other.
91
+ @see Pass::setHashFunc
92
+ */
93
+ struct HashFunc
94
+ {
95
+ virtual uint32 operator()(const Pass* p) const = 0;
96
+ /// Need virtual destructor in case subclasses use it
97
+ virtual ~HashFunc() {}
98
+ };
99
+ protected:
100
+ Technique* mParent;
101
+ unsigned short mIndex; // pass index
102
+ String mName; // optional name for the pass
103
+ uint32 mHash; // pass hash
104
+ bool mHashDirtyQueued; // needs to be dirtied when next loaded
105
+ //-------------------------------------------------------------------------
106
+ // Colour properties, only applicable in fixed-function passes
107
+ ColourValue mAmbient;
108
+ ColourValue mDiffuse;
109
+ ColourValue mSpecular;
110
+ ColourValue mEmissive;
111
+ Real mShininess;
112
+ TrackVertexColourType mTracking;
113
+ //-------------------------------------------------------------------------
114
+
115
+ //-------------------------------------------------------------------------
116
+ // Blending factors
117
+ SceneBlendFactor mSourceBlendFactor;
118
+ SceneBlendFactor mDestBlendFactor;
119
+ SceneBlendFactor mSourceBlendFactorAlpha;
120
+ SceneBlendFactor mDestBlendFactorAlpha;
121
+
122
+ // Used to determine if separate alpha blending should be used for color and alpha channels
123
+ bool mSeparateBlend;
124
+
125
+ //-------------------------------------------------------------------------
126
+ // Blending operations
127
+ SceneBlendOperation mBlendOperation;
128
+ SceneBlendOperation mAlphaBlendOperation;
129
+
130
+ // Determines if we should use separate blending operations for color and alpha channels
131
+ bool mSeparateBlendOperation;
132
+
133
+ //-------------------------------------------------------------------------
134
+
135
+ //-------------------------------------------------------------------------
136
+ // Depth buffer settings
137
+ bool mDepthCheck;
138
+ bool mDepthWrite;
139
+ CompareFunction mDepthFunc;
140
+ float mDepthBiasConstant;
141
+ float mDepthBiasSlopeScale;
142
+ float mDepthBiasPerIteration;
143
+
144
+ // Colour buffer settings
145
+ bool mColourWrite;
146
+
147
+ // Alpha reject settings
148
+ CompareFunction mAlphaRejectFunc;
149
+ unsigned char mAlphaRejectVal;
150
+ bool mAlphaToCoverageEnabled;
151
+
152
+ // Transparent depth sorting
153
+ bool mTransparentSorting;
154
+ // Transparent depth sorting forced
155
+ bool mTransparentSortingForced;
156
+ //-------------------------------------------------------------------------
157
+
158
+ //-------------------------------------------------------------------------
159
+ // Culling mode
160
+ CullingMode mCullMode;
161
+ ManualCullingMode mManualCullMode;
162
+ //-------------------------------------------------------------------------
163
+
164
+ /// Lighting enabled?
165
+ bool mLightingEnabled;
166
+ /// Max simultaneous lights
167
+ unsigned short mMaxSimultaneousLights;
168
+ /// Starting light index
169
+ unsigned short mStartLight;
170
+ /// Run this pass once per light?
171
+ bool mIteratePerLight;
172
+ /// Iterate per how many lights?
173
+ unsigned short mLightsPerIteration;
174
+ // Should it only be run for a certain light type?
175
+ bool mRunOnlyForOneLightType;
176
+ Light::LightTypes mOnlyLightType;
177
+ // With a specific light mask?
178
+ uint32 mLightMask;
179
+
180
+ /// Shading options
181
+ ShadeOptions mShadeOptions;
182
+ /// Polygon mode
183
+ PolygonMode mPolygonMode;
184
+ /// Normalisation
185
+ bool mNormaliseNormals;
186
+ bool mPolygonModeOverrideable;
187
+ //-------------------------------------------------------------------------
188
+ // Fog
189
+ bool mFogOverride;
190
+ FogMode mFogMode;
191
+ ColourValue mFogColour;
192
+ Real mFogStart;
193
+ Real mFogEnd;
194
+ Real mFogDensity;
195
+ //-------------------------------------------------------------------------
196
+
197
+ /// Storage of texture unit states
198
+ typedef vector<TextureUnitState*>::type TextureUnitStates;
199
+ TextureUnitStates mTextureUnitStates;
200
+
201
+ // Vertex program details
202
+ GpuProgramUsage *mVertexProgramUsage;
203
+ // Vertex program details
204
+ GpuProgramUsage *mShadowCasterVertexProgramUsage;
205
+ // Fragment program details
206
+ GpuProgramUsage *mShadowCasterFragmentProgramUsage;
207
+ // Vertex program details
208
+ GpuProgramUsage *mShadowReceiverVertexProgramUsage;
209
+ // Fragment program details
210
+ GpuProgramUsage *mFragmentProgramUsage;
211
+ // Fragment program details
212
+ GpuProgramUsage *mShadowReceiverFragmentProgramUsage;
213
+ // Geometry program details
214
+ GpuProgramUsage *mGeometryProgramUsage;
215
+ // Is this pass queued for deletion?
216
+ bool mQueuedForDeletion;
217
+ // number of pass iterations to perform
218
+ size_t mPassIterationCount;
219
+ // point size, applies when not using per-vertex point size
220
+ Real mPointSize;
221
+ Real mPointMinSize;
222
+ Real mPointMaxSize;
223
+ bool mPointSpritesEnabled;
224
+ bool mPointAttenuationEnabled;
225
+ // constant, linear, quadratic coeffs
226
+ Real mPointAttenuationCoeffs[3];
227
+ // TU Content type lookups
228
+ typedef vector<unsigned short>::type ContentTypeLookup;
229
+ mutable ContentTypeLookup mShadowContentTypeLookup;
230
+ mutable bool mContentTypeLookupBuilt;
231
+ /// Scissoring for the light?
232
+ bool mLightScissoring;
233
+ /// User clip planes for light?
234
+ bool mLightClipPlanes;
235
+ /// Illumination stage?
236
+ IlluminationStage mIlluminationStage;
237
+ // User objects binding.
238
+ UserObjectBindings mUserObjectBindings;
239
+
240
+
241
+ // Used to get scene blending flags from a blending type
242
+ void _getBlendFlags(SceneBlendType type, SceneBlendFactor& source, SceneBlendFactor& dest);
243
+
244
+ public:
245
+ typedef set<Pass*>::type PassSet;
246
+ protected:
247
+ /// List of Passes whose hashes need recalculating
248
+ static PassSet msDirtyHashList;
249
+ /// The place where passes go to die
250
+ static PassSet msPassGraveyard;
251
+ /// The Pass hash functor
252
+ static HashFunc* msHashFunc;
253
+ public:
254
+ OGRE_STATIC_MUTEX(msDirtyHashListMutex)
255
+ OGRE_STATIC_MUTEX(msPassGraveyardMutex)
256
+ OGRE_MUTEX(mTexUnitChangeMutex)
257
+ OGRE_MUTEX(mGpuProgramChangeMutex)
258
+ /// Default constructor
259
+ Pass(Technique* parent, unsigned short index);
260
+ /// Copy constructor
261
+ Pass(Technique* parent, unsigned short index, const Pass& oth );
262
+ /// Operator = overload
263
+ Pass& operator=(const Pass& oth);
264
+ virtual ~Pass();
265
+
266
+ /// Returns true if this pass is programmable i.e. includes either a vertex or fragment program.
267
+ bool isProgrammable(void) const { return mVertexProgramUsage || mFragmentProgramUsage || mGeometryProgramUsage; }
268
+ /// Returns true if this pass uses a programmable vertex pipeline
269
+ bool hasVertexProgram(void) const { return mVertexProgramUsage != NULL; }
270
+ /// Returns true if this pass uses a programmable fragment pipeline
271
+ bool hasFragmentProgram(void) const { return mFragmentProgramUsage != NULL; }
272
+ /// Returns true if this pass uses a programmable geometry pipeline
273
+ bool hasGeometryProgram(void) const { return mGeometryProgramUsage != NULL; }
274
+ /// Returns true if this pass uses a shadow caster vertex program
275
+ bool hasShadowCasterVertexProgram(void) const { return mShadowCasterVertexProgramUsage != NULL; }
276
+ /// Returns true if this pass uses a shadow caster fragment program
277
+ bool hasShadowCasterFragmentProgram(void) const { return mShadowCasterFragmentProgramUsage != NULL; }
278
+ /// Returns true if this pass uses a shadow receiver vertex program
279
+ bool hasShadowReceiverVertexProgram(void) const { return mShadowReceiverVertexProgramUsage != NULL; }
280
+ /// Returns true if this pass uses a shadow receiver fragment program
281
+ bool hasShadowReceiverFragmentProgram(void) const { return mShadowReceiverFragmentProgramUsage != NULL; }
282
+
283
+
284
+ /// Gets the index of this Pass in the parent Technique
285
+ unsigned short getIndex(void) const { return mIndex; }
286
+ /* Set the name of the pass
287
+ @remarks
288
+ The name of the pass is optional. Its useful in material scripts where a material could inherit
289
+ from another material and only want to modify a particular pass.
290
+ */
291
+ void setName(const String& name);
292
+ /// get the name of the pass
293
+ const String& getName(void) const { return mName; }
294
+
295
+ /** Sets the ambient colour reflectance properties of this pass.
296
+ @remarks
297
+ The base colour of a pass is determined by how much red, green and blue light is reflects
298
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
299
+ much ambient light (directionless global light) is reflected. The default is full white, meaning
300
+ objects are completely globally illuminated. Reduce this if you want to see diffuse or specular light
301
+ effects, or change the blend of colours to make the object have a base colour other than white.
302
+ @note
303
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
304
+ or if this is a programmable pass.
305
+ */
306
+ void setAmbient(Real red, Real green, Real blue);
307
+
308
+ /** Sets the ambient colour reflectance properties of this pass.
309
+ @remarks
310
+ The base colour of a pass is determined by how much red, green and blue light is reflects
311
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
312
+ much ambient light (directionless global light) is reflected. The default is full white, meaning
313
+ objects are completely globally illuminated. Reduce this if you want to see diffuse or specular light
314
+ effects, or change the blend of colours to make the object have a base colour other than white.
315
+ @note
316
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
317
+ or if this is a programmable pass.
318
+ */
319
+
320
+ void setAmbient(const ColourValue& ambient);
321
+
322
+ /** Sets the diffuse colour reflectance properties of this pass.
323
+ @remarks
324
+ The base colour of a pass is determined by how much red, green and blue light is reflects
325
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
326
+ much diffuse light (light from instances of the Light class in the scene) is reflected. The default
327
+ is full white, meaning objects reflect the maximum white light they can from Light objects.
328
+ @note
329
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
330
+ or if this is a programmable pass.
331
+ */
332
+ void setDiffuse(Real red, Real green, Real blue, Real alpha);
333
+
334
+ /** Sets the diffuse colour reflectance properties of this pass.
335
+ @remarks
336
+ The base colour of a pass is determined by how much red, green and blue light is reflects
337
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
338
+ much diffuse light (light from instances of the Light class in the scene) is reflected. The default
339
+ is full white, meaning objects reflect the maximum white light they can from Light objects.
340
+ @note
341
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
342
+ or if this is a programmable pass.
343
+ */
344
+ void setDiffuse(const ColourValue& diffuse);
345
+
346
+ /** Sets the specular colour reflectance properties of this pass.
347
+ @remarks
348
+ The base colour of a pass is determined by how much red, green and blue light is reflects
349
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
350
+ much specular light (highlights from instances of the Light class in the scene) is reflected.
351
+ The default is to reflect no specular light.
352
+ @note
353
+ The size of the specular highlights is determined by the separate 'shininess' property.
354
+ @note
355
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
356
+ or if this is a programmable pass.
357
+ */
358
+ void setSpecular(Real red, Real green, Real blue, Real alpha);
359
+
360
+ /** Sets the specular colour reflectance properties of this pass.
361
+ @remarks
362
+ The base colour of a pass is determined by how much red, green and blue light is reflects
363
+ (provided texture layer #0 has a blend mode other than LBO_REPLACE). This property determines how
364
+ much specular light (highlights from instances of the Light class in the scene) is reflected.
365
+ The default is to reflect no specular light.
366
+ @note
367
+ The size of the specular highlights is determined by the separate 'shininess' property.
368
+ @note
369
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
370
+ or if this is a programmable pass.
371
+ */
372
+ void setSpecular(const ColourValue& specular);
373
+
374
+ /** Sets the shininess of the pass, affecting the size of specular highlights.
375
+ @note
376
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
377
+ or if this is a programmable pass.
378
+ */
379
+ void setShininess(Real val);
380
+
381
+ /** Sets the amount of self-illumination an object has.
382
+ @remarks
383
+ If an object is self-illuminating, it does not need external sources to light it, ambient or
384
+ otherwise. It's like the object has it's own personal ambient light. This property is rarely useful since
385
+ you can already specify per-pass ambient light, but is here for completeness.
386
+ @note
387
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
388
+ or if this is a programmable pass.
389
+ */
390
+ void setSelfIllumination(Real red, Real green, Real blue);
391
+
392
+ /** Sets the amount of self-illumination an object has.
393
+ @see
394
+ setSelfIllumination
395
+ */
396
+ void setEmissive(Real red, Real green, Real blue)
397
+ {
398
+ setSelfIllumination(red, green, blue);
399
+ }
400
+
401
+ /** Sets the amount of self-illumination an object has.
402
+ @remarks
403
+ If an object is self-illuminating, it does not need external sources to light it, ambient or
404
+ otherwise. It's like the object has it's own personal ambient light. This property is rarely useful since
405
+ you can already specify per-pass ambient light, but is here for completeness.
406
+ @note
407
+ This setting has no effect if dynamic lighting is disabled (see Pass::setLightingEnabled),
408
+ or if this is a programmable pass.
409
+ */
410
+ void setSelfIllumination(const ColourValue& selfIllum);
411
+
412
+ /** Sets the amount of self-illumination an object has.
413
+ @see
414
+ setSelfIllumination
415
+ */
416
+ void setEmissive(const ColourValue& emissive)
417
+ {
418
+ setSelfIllumination(emissive);
419
+ }
420
+
421
+ /** Sets which material properties follow the vertex colour
422
+ */
423
+ void setVertexColourTracking(TrackVertexColourType tracking);
424
+
425
+ /** Gets the point size of the pass.
426
+ @remarks
427
+ This property determines what point size is used to render a point
428
+ list.
429
+ */
430
+ Real getPointSize(void) const;
431
+
432
+ /** Sets the point size of this pass.
433
+ @remarks
434
+ This setting allows you to change the size of points when rendering
435
+ a point list, or a list of point sprites. The interpretation of this
436
+ command depends on the Pass::setPointSizeAttenuation option - if it
437
+ is off (the default), the point size is in screen pixels, if it is on,
438
+ it expressed as normalised screen coordinates (1.0 is the height of
439
+ the screen) when the point is at the origin.
440
+ @note
441
+ Some drivers have an upper limit on the size of points they support
442
+ - this can even vary between APIs on the same card! Don't rely on
443
+ point sizes that cause the point sprites to get very large on screen,
444
+ since they may get clamped on some cards. Upper sizes can range from
445
+ 64 to 256 pixels.
446
+ */
447
+ void setPointSize(Real ps);
448
+
449
+ /** Sets whether or not rendering points using OT_POINT_LIST will
450
+ render point sprites (textured quads) or plain points (dots).
451
+ @param enabled True enables point sprites, false returns to normal
452
+ point rendering.
453
+ */
454
+ void setPointSpritesEnabled(bool enabled);
455
+
456
+ /** Returns whether point sprites are enabled when rendering a
457
+ point list.
458
+ */
459
+ bool getPointSpritesEnabled(void) const;
460
+
461
+ /** Sets how points are attenuated with distance.
462
+ @remarks
463
+ When performing point rendering or point sprite rendering,
464
+ point size can be attenuated with distance. The equation for
465
+ doing this is attenuation = 1 / (constant + linear * dist + quadratic * d^2).
466
+ @par
467
+ For example, to disable distance attenuation (constant screensize)
468
+ you would set constant to 1, and linear and quadratic to 0. A
469
+ standard perspective attenuation would be 0, 1, 0 respectively.
470
+ @note
471
+ The resulting size is clamped to the minimum and maximum point
472
+ size.
473
+ @param enabled Whether point attenuation is enabled
474
+ @param constant, linear, quadratic Parameters to the attenuation
475
+ function defined above
476
+ */
477
+ void setPointAttenuation(bool enabled,
478
+ Real constant = 0.0f, Real linear = 1.0f, Real quadratic = 0.0f);
479
+
480
+ /** Returns whether points are attenuated with distance. */
481
+ bool isPointAttenuationEnabled(void) const;
482
+
483
+ /** Returns the constant coefficient of point attenuation. */
484
+ Real getPointAttenuationConstant(void) const;
485
+ /** Returns the linear coefficient of point attenuation. */
486
+ Real getPointAttenuationLinear(void) const;
487
+ /** Returns the quadratic coefficient of point attenuation. */
488
+ Real getPointAttenuationQuadratic(void) const;
489
+
490
+ /** Set the minimum point size, when point attenuation is in use. */
491
+ void setPointMinSize(Real min);
492
+ /** Get the minimum point size, when point attenuation is in use. */
493
+ Real getPointMinSize(void) const;
494
+ /** Set the maximum point size, when point attenuation is in use.
495
+ @remarks Setting this to 0 indicates the max size supported by the card.
496
+ */
497
+ void setPointMaxSize(Real max);
498
+ /** Get the maximum point size, when point attenuation is in use.
499
+ @remarks 0 indicates the max size supported by the card.
500
+ */
501
+ Real getPointMaxSize(void) const;
502
+
503
+ /** Gets the ambient colour reflectance of the pass.
504
+ */
505
+ const ColourValue& getAmbient(void) const;
506
+
507
+ /** Gets the diffuse colour reflectance of the pass.
508
+ */
509
+ const ColourValue& getDiffuse(void) const;
510
+
511
+ /** Gets the specular colour reflectance of the pass.
512
+ */
513
+ const ColourValue& getSpecular(void) const;
514
+
515
+ /** Gets the self illumination colour of the pass.
516
+ */
517
+ const ColourValue& getSelfIllumination(void) const;
518
+
519
+ /** Gets the self illumination colour of the pass.
520
+ @see
521
+ getSelfIllumination
522
+ */
523
+ const ColourValue& getEmissive(void) const
524
+ {
525
+ return getSelfIllumination();
526
+ }
527
+
528
+ /** Gets the 'shininess' property of the pass (affects specular highlights).
529
+ */
530
+ Real getShininess(void) const;
531
+
532
+ /** Gets which material properties follow the vertex colour
533
+ */
534
+ TrackVertexColourType getVertexColourTracking(void) const;
535
+
536
+ /** Inserts a new TextureUnitState object into the Pass.
537
+ @remarks
538
+ This unit is is added on top of all previous units.
539
+ */
540
+ TextureUnitState* createTextureUnitState(void);
541
+ /** Inserts a new TextureUnitState object into the Pass.
542
+ @remarks
543
+ This unit is is added on top of all previous units.
544
+ @param
545
+ name The basic name of the texture e.g. brickwall.jpg, stonefloor.png
546
+ @param
547
+ texCoordSet The index of the texture coordinate set to use.
548
+ @note
549
+ Applies to both fixed-function and programmable passes.
550
+ */
551
+ TextureUnitState* createTextureUnitState( const String& textureName, unsigned short texCoordSet = 0);
552
+ /** Adds the passed in TextureUnitState, to the existing Pass.
553
+ @param
554
+ state The Texture Unit State to be attached to this pass. It must not be attached to another pass.
555
+ @note
556
+ Throws an exception if the TextureUnitState is attached to another Pass.*/
557
+ void addTextureUnitState(TextureUnitState* state);
558
+ /** Retrieves a pointer to a texture unit state so it may be modified.
559
+ */
560
+ TextureUnitState* getTextureUnitState(unsigned short index);
561
+ /** Retrieves the Texture Unit State matching name.
562
+ Returns 0 if name match is not found.
563
+ */
564
+ TextureUnitState* getTextureUnitState(const String& name);
565
+ /** Retrieves a const pointer to a texture unit state.
566
+ */
567
+ const TextureUnitState* getTextureUnitState(unsigned short index) const;
568
+ /** Retrieves the Texture Unit State matching name.
569
+ Returns 0 if name match is not found.
570
+ */
571
+ const TextureUnitState* getTextureUnitState(const String& name) const;
572
+
573
+ /** Retrieve the index of the Texture Unit State in the pass.
574
+ @param
575
+ state The Texture Unit State this is attached to this pass.
576
+ @note
577
+ Throws an exception if the state is not attached to the pass.
578
+ */
579
+ unsigned short getTextureUnitStateIndex(const TextureUnitState* state) const;
580
+
581
+ typedef VectorIterator<TextureUnitStates> TextureUnitStateIterator;
582
+ /** Get an iterator over the TextureUnitStates contained in this Pass. */
583
+ TextureUnitStateIterator getTextureUnitStateIterator(void);
584
+
585
+ typedef ConstVectorIterator<TextureUnitStates> ConstTextureUnitStateIterator;
586
+ /** Get an iterator over the TextureUnitStates contained in this Pass. */
587
+ ConstTextureUnitStateIterator getTextureUnitStateIterator(void) const;
588
+
589
+ /** Removes the indexed texture unit state from this pass.
590
+ @remarks
591
+ Note that removing a texture which is not the topmost will have a larger performance impact.
592
+ */
593
+ void removeTextureUnitState(unsigned short index);
594
+
595
+ /** Removes all texture unit settings.
596
+ */
597
+ void removeAllTextureUnitStates(void);
598
+
599
+ /** Returns the number of texture unit settings.
600
+ */
601
+ unsigned short getNumTextureUnitStates(void) const
602
+ {
603
+ return static_cast<unsigned short>(mTextureUnitStates.size());
604
+ }
605
+
606
+ /** Sets the kind of blending this pass has with the existing contents of the scene.
607
+ @remarks
608
+ Whereas the texture blending operations seen in the TextureUnitState class are concerned with
609
+ blending between texture layers, this blending is about combining the output of the Pass
610
+ as a whole with the existing contents of the rendering target. This blending therefore allows
611
+ object transparency and other special effects. If all passes in a technique have a scene
612
+ blend, then the whole technique is considered to be transparent.
613
+ @par
614
+ This method allows you to select one of a number of predefined blending types. If you require more
615
+ control than this, use the alternative version of this method which allows you to specify source and
616
+ destination blend factors.
617
+ @note
618
+ This method is applicable for both the fixed-function and programmable pipelines.
619
+ @param
620
+ sbt One of the predefined SceneBlendType blending types
621
+ */
622
+ void setSceneBlending( const SceneBlendType sbt );
623
+
624
+ /** Sets the kind of blending this pass has with the existing contents of the scene, separately for color and alpha channels
625
+ @remarks
626
+ Whereas the texture blending operations seen in the TextureUnitState class are concerned with
627
+ blending between texture layers, this blending is about combining the output of the Pass
628
+ as a whole with the existing contents of the rendering target. This blending therefore allows
629
+ object transparency and other special effects. If all passes in a technique have a scene
630
+ blend, then the whole technique is considered to be transparent.
631
+ @par
632
+ This method allows you to select one of a number of predefined blending types. If you require more
633
+ control than this, use the alternative version of this method which allows you to specify source and
634
+ destination blend factors.
635
+ @note
636
+ This method is applicable for both the fixed-function and programmable pipelines.
637
+ @param
638
+ sbt One of the predefined SceneBlendType blending types for the color channel
639
+ @param
640
+ sbta One of the predefined SceneBlendType blending types for the alpha channel
641
+ */
642
+ void setSeparateSceneBlending( const SceneBlendType sbt, const SceneBlendType sbta );
643
+
644
+ /** Allows very fine control of blending this Pass with the existing contents of the scene.
645
+ @remarks
646
+ Whereas the texture blending operations seen in the TextureUnitState class are concerned with
647
+ blending between texture layers, this blending is about combining the output of the material
648
+ as a whole with the existing contents of the rendering target. This blending therefore allows
649
+ object transparency and other special effects.
650
+ @par
651
+ This version of the method allows complete control over the blending operation, by specifying the
652
+ source and destination blending factors. The result of the blending operation is:
653
+ <span align="center">
654
+ final = (texture * sourceFactor) + (pixel * destFactor)
655
+ </span>
656
+ @par
657
+ Each of the factors is specified as one of a number of options, as specified in the SceneBlendFactor
658
+ enumerated type.
659
+ @param
660
+ sourceFactor The source factor in the above calculation, i.e. multiplied by the texture colour components.
661
+ @param
662
+ destFactor The destination factor in the above calculation, i.e. multiplied by the pixel colour components.
663
+ @note
664
+ This method is applicable for both the fixed-function and programmable pipelines.
665
+ */
666
+ void setSceneBlending( const SceneBlendFactor sourceFactor, const SceneBlendFactor destFactor);
667
+
668
+ /** Allows very fine control of blending this Pass with the existing contents of the scene.
669
+ @remarks
670
+ Whereas the texture blending operations seen in the TextureUnitState class are concerned with
671
+ blending between texture layers, this blending is about combining the output of the material
672
+ as a whole with the existing contents of the rendering target. This blending therefore allows
673
+ object transparency and other special effects.
674
+ @par
675
+ This version of the method allows complete control over the blending operation, by specifying the
676
+ source and destination blending factors. The result of the blending operation is:
677
+ <span align="center">
678
+ final = (texture * sourceFactor) + (pixel * destFactor)
679
+ </span>
680
+ @par
681
+ Each of the factors is specified as one of a number of options, as specified in the SceneBlendFactor
682
+ enumerated type.
683
+ @param
684
+ sourceFactor The source factor in the above calculation, i.e. multiplied by the texture colour components.
685
+ @param
686
+ destFactor The destination factor in the above calculation, i.e. multiplied by the pixel colour components.
687
+ @param
688
+ sourceFactorAlpha The alpha source factor in the above calculation, i.e. multiplied by the texture alpha component.
689
+ @param
690
+ destFactorAlpha The alpha destination factor in the above calculation, i.e. multiplied by the pixel alpha component.
691
+ @note
692
+ This method is applicable for both the fixed-function and programmable pipelines.
693
+ */
694
+ void setSeparateSceneBlending( const SceneBlendFactor sourceFactor, const SceneBlendFactor destFactor, const SceneBlendFactor sourceFactorAlpha, const SceneBlendFactor destFactorAlpha );
695
+
696
+ /** Return true if this pass uses separate scene blending */
697
+ bool hasSeparateSceneBlending() const;
698
+
699
+ /** Retrieves the source blending factor for the material (as set using Materiall::setSceneBlending).
700
+ */
701
+ SceneBlendFactor getSourceBlendFactor() const;
702
+
703
+ /** Retrieves the destination blending factor for the material (as set using Materiall::setSceneBlending).
704
+ */
705
+ SceneBlendFactor getDestBlendFactor() const;
706
+
707
+ /** Retrieves the alpha source blending factor for the material (as set using Materiall::setSeparateSceneBlending).
708
+ */
709
+ SceneBlendFactor getSourceBlendFactorAlpha() const;
710
+
711
+ /** Retrieves the alpha destination blending factor for the material (as set using Materiall::setSeparateSceneBlending).
712
+ */
713
+ SceneBlendFactor getDestBlendFactorAlpha() const;
714
+
715
+ /** Sets the specific operation used to blend source and destination pixels together.
716
+ @remarks
717
+ By default this operation is +, which creates this equation
718
+ <span align="center">
719
+ final = (texture * sourceFactor) + (pixel * destFactor)
720
+ </span>
721
+ By setting this to something other than SBO_ADD you can change the operation to achieve
722
+ a different effect.
723
+ @param op The blending operation mode to use for this pass
724
+ */
725
+ void setSceneBlendingOperation(SceneBlendOperation op);
726
+
727
+ /** Sets the specific operation used to blend source and destination pixels together.
728
+ @remarks
729
+ By default this operation is +, which creates this equation
730
+ <span align="center">
731
+ final = (texture * sourceFactor) + (pixel * destFactor)
732
+ </span>
733
+ By setting this to something other than SBO_ADD you can change the operation to achieve
734
+ a different effect.
735
+ This function allows more control over blending since it allows you to select different blending
736
+ modes for the color and alpha channels
737
+ @param op The blending operation mode to use for color channels in this pass
738
+ @param op The blending operation mode to use for alpha channels in this pass
739
+ */
740
+ void setSeparateSceneBlendingOperation(SceneBlendOperation op, SceneBlendOperation alphaOp);
741
+
742
+ /** Returns true if this pass uses separate scene blending operations. */
743
+ bool hasSeparateSceneBlendingOperations() const;
744
+
745
+ /** Returns the current blending operation */
746
+ SceneBlendOperation getSceneBlendingOperation() const;
747
+
748
+ /** Returns the current alpha blending operation */
749
+ SceneBlendOperation getSceneBlendingOperationAlpha() const;
750
+
751
+ /** Returns true if this pass has some element of transparency. */
752
+ bool isTransparent(void) const;
753
+
754
+ /** Sets whether or not this pass renders with depth-buffer checking on or not.
755
+ @remarks
756
+ If depth-buffer checking is on, whenever a pixel is about to be written to the frame buffer
757
+ the depth buffer is checked to see if the pixel is in front of all other pixels written at that
758
+ point. If not, the pixel is not written.
759
+ @par
760
+ If depth checking is off, pixels are written no matter what has been rendered before.
761
+ Also see setDepthFunction for more advanced depth check configuration.
762
+ @see
763
+ setDepthFunction
764
+ */
765
+ void setDepthCheckEnabled(bool enabled);
766
+
767
+ /** Returns whether or not this pass renders with depth-buffer checking on or not.
768
+ @see
769
+ setDepthCheckEnabled
770
+ */
771
+ bool getDepthCheckEnabled(void) const;
772
+
773
+ /** Sets whether or not this pass renders with depth-buffer writing on or not.
774
+ @remarks
775
+ If depth-buffer writing is on, whenever a pixel is written to the frame buffer
776
+ the depth buffer is updated with the depth value of that new pixel, thus affecting future
777
+ rendering operations if future pixels are behind this one.
778
+ @par
779
+ If depth writing is off, pixels are written without updating the depth buffer Depth writing should
780
+ normally be on but can be turned off when rendering static backgrounds or when rendering a collection
781
+ of transparent objects at the end of a scene so that they overlap each other correctly.
782
+ */
783
+ void setDepthWriteEnabled(bool enabled);
784
+
785
+ /** Returns whether or not this pass renders with depth-buffer writing on or not.
786
+ @see
787
+ setDepthWriteEnabled
788
+ */
789
+ bool getDepthWriteEnabled(void) const;
790
+
791
+ /** Sets the function used to compare depth values when depth checking is on.
792
+ @remarks
793
+ If depth checking is enabled (see setDepthCheckEnabled) a comparison occurs between the depth
794
+ value of the pixel to be written and the current contents of the buffer. This comparison is
795
+ normally CMPF_LESS_EQUAL, i.e. the pixel is written if it is closer (or at the same distance)
796
+ than the current contents. If you wish you can change this comparison using this method.
797
+ */
798
+ void setDepthFunction( CompareFunction func );
799
+ /** Returns the function used to compare depth values when depth checking is on.
800
+ @see
801
+ setDepthFunction
802
+ */
803
+ CompareFunction getDepthFunction(void) const;
804
+
805
+ /** Sets whether or not colour buffer writing is enabled for this Pass.
806
+ @remarks
807
+ For some effects, you might wish to turn off the colour write operation
808
+ when rendering geometry; this means that only the depth buffer will be
809
+ updated (provided you have depth buffer writing enabled, which you
810
+ probably will do, although you may wish to only update the stencil
811
+ buffer for example - stencil buffer state is managed at the RenderSystem
812
+ level only, not the Material since you are likely to want to manage it
813
+ at a higher level).
814
+ */
815
+ void setColourWriteEnabled(bool enabled);
816
+ /** Determines if colour buffer writing is enabled for this pass. */
817
+ bool getColourWriteEnabled(void) const;
818
+
819
+ /** Sets the culling mode for this pass based on the 'vertex winding'.
820
+ @remarks
821
+ A typical way for the rendering engine to cull triangles is based on the 'vertex winding' of
822
+ triangles. Vertex winding refers to the direction in which the vertices are passed or indexed
823
+ to in the rendering operation as viewed from the camera, and will wither be clockwise or
824
+ anticlockwise (that's 'counterclockwise' for you Americans out there ;) The default is
825
+ CULL_CLOCKWISE i.e. that only triangles whose vertices are passed/indexed in anticlockwise order
826
+ are rendered - this is a common approach and is used in 3D studio models for example. You can
827
+ alter this culling mode if you wish but it is not advised unless you know what you are doing.
828
+ @par
829
+ You may wish to use the CULL_NONE option for mesh data that you cull yourself where the vertex
830
+ winding is uncertain.
831
+ */
832
+ void setCullingMode( CullingMode mode );
833
+
834
+ /** Returns the culling mode for geometry rendered with this pass. See setCullingMode for more information.
835
+ */
836
+ CullingMode getCullingMode(void) const;
837
+
838
+ /** Sets the manual culling mode, performed by CPU rather than hardware.
839
+ @remarks
840
+ In some situations you want to use manual culling of triangles rather than sending the
841
+ triangles to the hardware and letting it cull them. This setting only takes effect on SceneManager's
842
+ that use it (since it is best used on large groups of planar world geometry rather than on movable
843
+ geometry since this would be expensive), but if used can cull geometry before it is sent to the
844
+ hardware.
845
+ @note
846
+ The default for this setting is MANUAL_CULL_BACK.
847
+ @param
848
+ mode The mode to use - see enum ManualCullingMode for details
849
+
850
+ */
851
+ void setManualCullingMode( ManualCullingMode mode );
852
+
853
+ /** Retrieves the manual culling mode for this pass
854
+ @see
855
+ setManualCullingMode
856
+ */
857
+ ManualCullingMode getManualCullingMode(void) const;
858
+
859
+ /** Sets whether or not dynamic lighting is enabled.
860
+ @param
861
+ enabled
862
+ If true, dynamic lighting is performed on geometry with normals supplied, geometry without
863
+ normals will not be displayed.
864
+ @par
865
+ If false, no lighting is applied and all geometry will be full brightness.
866
+ */
867
+ void setLightingEnabled(bool enabled);
868
+
869
+ /** Returns whether or not dynamic lighting is enabled.
870
+ */
871
+ bool getLightingEnabled(void) const;
872
+
873
+ /** Sets the maximum number of lights to be used by this pass.
874
+ @remarks
875
+ During rendering, if lighting is enabled (or if the pass uses an automatic
876
+ program parameter based on a light) the engine will request the nearest lights
877
+ to the object being rendered in order to work out which ones to use. This
878
+ parameter sets the limit on the number of lights which should apply to objects
879
+ rendered with this pass.
880
+ */
881
+ void setMaxSimultaneousLights(unsigned short maxLights);
882
+ /** Gets the maximum number of lights to be used by this pass. */
883
+ unsigned short getMaxSimultaneousLights(void) const;
884
+
885
+ /** Sets the light index that this pass will start at in the light list.
886
+ @remarks
887
+ Normally the lights passed to a pass will start from the beginning
888
+ of the light list for this object. This option allows you to make this
889
+ pass start from a higher light index, for example if one of your earlier
890
+ passes could deal with lights 0-3, and this pass dealt with lights 4+.
891
+ This option also has an interaction with pass iteration, in that
892
+ if you choose to iterate this pass per light too, the iteration will
893
+ only begin from light 4.
894
+ */
895
+ void setStartLight(unsigned short startLight);
896
+ /** Gets the light index that this pass will start at in the light list. */
897
+ unsigned short getStartLight(void) const;
898
+
899
+ /** Sets the light mask which can be matched to specific light flags to be handled by this pass */
900
+ void setLightMask(uint32 mask);
901
+ /** Gets the light mask controlling which lights are used for this pass */
902
+ uint32 getLightMask() const;
903
+
904
+ /** Sets the type of light shading required
905
+ @note
906
+ The default shading method is Gouraud shading.
907
+ */
908
+ void setShadingMode( ShadeOptions mode );
909
+
910
+ /** Returns the type of light shading to be used.
911
+ */
912
+ ShadeOptions getShadingMode(void) const;
913
+
914
+ /** Sets the type of polygon rendering required
915
+ @note
916
+ The default shading method is Solid
917
+ */
918
+ void setPolygonMode( PolygonMode mode );
919
+
920
+ /** Returns the type of light shading to be used.
921
+ */
922
+ PolygonMode getPolygonMode(void) const;
923
+
924
+ /** Sets whether this pass's chosen detail level can be
925
+ overridden (downgraded) by the camera setting.
926
+ @param override true means that a lower camera detail will override this
927
+ pass's detail level, false means it won't (default true).
928
+ */
929
+ virtual void setPolygonModeOverrideable(bool override)
930
+ {
931
+ mPolygonModeOverrideable = override;
932
+ }
933
+
934
+ /** Gets whether this renderable's chosen detail level can be
935
+ overridden (downgraded) by the camera setting.
936
+ */
937
+ virtual bool getPolygonModeOverrideable(void) const
938
+ {
939
+ return mPolygonModeOverrideable;
940
+ }
941
+ /** Sets the fogging mode applied to this pass.
942
+ @remarks
943
+ Fogging is an effect that is applied as polys are rendered. Sometimes, you want
944
+ fog to be applied to an entire scene. Other times, you want it to be applied to a few
945
+ polygons only. This pass-level specification of fog parameters lets you easily manage
946
+ both.
947
+ @par
948
+ The SceneManager class also has a setFog method which applies scene-level fog. This method
949
+ lets you change the fog behaviour for this pass compared to the standard scene-level fog.
950
+ @param
951
+ overrideScene If true, you authorise this pass to override the scene's fog params with it's own settings.
952
+ If you specify false, so other parameters are necessary, and this is the default behaviour for passes.
953
+ @param
954
+ mode Only applicable if overrideScene is true. You can disable fog which is turned on for the
955
+ rest of the scene by specifying FOG_NONE. Otherwise, set a pass-specific fog mode as
956
+ defined in the enum FogMode.
957
+ @param
958
+ colour The colour of the fog. Either set this to the same as your viewport background colour,
959
+ or to blend in with a skydome or skybox.
960
+ @param
961
+ expDensity The density of the fog in FOG_EXP or FOG_EXP2 mode, as a value between 0 and 1.
962
+ The default is 0.001.
963
+ @param
964
+ linearStart Distance in world units at which linear fog starts to encroach.
965
+ Only applicable if mode is FOG_LINEAR.
966
+ @param
967
+ linearEnd Distance in world units at which linear fog becomes completely opaque.
968
+ Only applicable if mode is FOG_LINEAR.
969
+ */
970
+ void setFog(
971
+ bool overrideScene,
972
+ FogMode mode = FOG_NONE,
973
+ const ColourValue& colour = ColourValue::White,
974
+ Real expDensity = 0.001, Real linearStart = 0.0, Real linearEnd = 1.0 );
975
+
976
+ /** Returns true if this pass is to override the scene fog settings.
977
+ */
978
+ bool getFogOverride(void) const;
979
+
980
+ /** Returns the fog mode for this pass.
981
+ @note
982
+ Only valid if getFogOverride is true.
983
+ */
984
+ FogMode getFogMode(void) const;
985
+
986
+ /** Returns the fog colour for the scene.
987
+ */
988
+ const ColourValue& getFogColour(void) const;
989
+
990
+ /** Returns the fog start distance for this pass.
991
+ @note
992
+ Only valid if getFogOverride is true.
993
+ */
994
+ Real getFogStart(void) const;
995
+
996
+ /** Returns the fog end distance for this pass.
997
+ @note
998
+ Only valid if getFogOverride is true.
999
+ */
1000
+ Real getFogEnd(void) const;
1001
+
1002
+ /** Returns the fog density for this pass.
1003
+ @note
1004
+ Only valid if getFogOverride is true.
1005
+ */
1006
+ Real getFogDensity(void) const;
1007
+
1008
+ /** Sets the depth bias to be used for this material.
1009
+ @remarks
1010
+ When polygons are coplanar, you can get problems with 'depth fighting' where
1011
+ the pixels from the two polys compete for the same screen pixel. This is particularly
1012
+ a problem for decals (polys attached to another surface to represent details such as
1013
+ bulletholes etc.).
1014
+ @par
1015
+ A way to combat this problem is to use a depth bias to adjust the depth buffer value
1016
+ used for the decal such that it is slightly higher than the true value, ensuring that
1017
+ the decal appears on top. There are two aspects to the biasing, a constant
1018
+ bias value and a slope-relative biasing value, which varies according to the
1019
+ maximum depth slope relative to the camera, ie:
1020
+ <pre>finalBias = maxSlope * slopeScaleBias + constantBias</pre>
1021
+ Note that slope scale bias, whilst more accurate, may be ignored by old hardware.
1022
+ @param constantBias The constant bias value, expressed as a factor of the
1023
+ minimum observable depth
1024
+ @param slopeScaleBias The slope-relative bias value, expressed as a factor
1025
+ of the depth slope
1026
+ */
1027
+ void setDepthBias(float constantBias, float slopeScaleBias = 0.0f);
1028
+
1029
+ /** Retrieves the const depth bias value as set by setDepthBias. */
1030
+ float getDepthBiasConstant(void) const;
1031
+ /** Retrieves the slope-scale depth bias value as set by setDepthBias. */
1032
+ float getDepthBiasSlopeScale(void) const;
1033
+ /** Sets a factor which derives an additional depth bias from the number
1034
+ of times a pass is iterated.
1035
+ @remarks
1036
+ The Final depth bias will be the constant depth bias as set through
1037
+ setDepthBias, plus this value times the iteration number.
1038
+ */
1039
+ void setIterationDepthBias(float biasPerIteration);
1040
+ /** Gets a factor which derives an additional depth bias from the number
1041
+ of times a pass is iterated.
1042
+ */
1043
+ float getIterationDepthBias() const;
1044
+
1045
+ /** Sets the way the pass will have use alpha to totally reject pixels from the pipeline.
1046
+ @remarks
1047
+ The default is CMPF_ALWAYS_PASS i.e. alpha is not used to reject pixels.
1048
+ @param func The comparison which must pass for the pixel to be written.
1049
+ @param value 1 byte value against which alpha values will be tested(0-255)
1050
+ @param alphaToCoverageEnabled Whether to enable alpha to coverage support
1051
+ @note
1052
+ This option applies in both the fixed function and the programmable pipeline.
1053
+ */
1054
+ void setAlphaRejectSettings(CompareFunction func, unsigned char value, bool alphaToCoverageEnabled = false);
1055
+
1056
+ /** Sets the alpha reject function. See setAlphaRejectSettings for more information.
1057
+ */
1058
+ void setAlphaRejectFunction(CompareFunction func);
1059
+
1060
+ /** Gets the alpha reject value. See setAlphaRejectSettings for more information.
1061
+ */
1062
+ void setAlphaRejectValue(unsigned char val);
1063
+
1064
+ /** Gets the alpha reject function. See setAlphaRejectSettings for more information.
1065
+ */
1066
+ CompareFunction getAlphaRejectFunction(void) const { return mAlphaRejectFunc; }
1067
+
1068
+ /** Gets the alpha reject value. See setAlphaRejectSettings for more information.
1069
+ */
1070
+ unsigned char getAlphaRejectValue(void) const { return mAlphaRejectVal; }
1071
+
1072
+ /** Sets whether to use alpha to coverage (A2C) when blending alpha rejected values.
1073
+ @remarks
1074
+ Alpha to coverage performs multisampling on the edges of alpha-rejected
1075
+ textures to produce a smoother result. It is only supported when multisampling
1076
+ is already enabled on the render target, and when the hardware supports
1077
+ alpha to coverage (see RenderSystemCapabilities).
1078
+ */
1079
+ void setAlphaToCoverageEnabled(bool enabled);
1080
+
1081
+ /** Gets whether to use alpha to coverage (A2C) when blending alpha rejected values.
1082
+ */
1083
+ bool isAlphaToCoverageEnabled() const { return mAlphaToCoverageEnabled; }
1084
+
1085
+ /** Sets whether or not transparent sorting is enabled.
1086
+ @param enabled
1087
+ If false depth sorting of this material will be disabled.
1088
+ @remarks
1089
+ By default all transparent materials are sorted such that renderables furthest
1090
+ away from the camera are rendered first. This is usually the desired behaviour
1091
+ but in certain cases this depth sorting may be unnecessary and undesirable. If
1092
+ for example it is necessary to ensure the rendering order does not change from
1093
+ one frame to the next.
1094
+ @note
1095
+ This will have no effect on non-transparent materials.
1096
+ */
1097
+ void setTransparentSortingEnabled(bool enabled);
1098
+
1099
+ /** Returns whether or not transparent sorting is enabled.
1100
+ */
1101
+ bool getTransparentSortingEnabled(void) const;
1102
+
1103
+ /** Sets whether or not transparent sorting is forced.
1104
+ @param enabled
1105
+ If true depth sorting of this material will be depend only on the value of
1106
+ getTransparentSortingEnabled().
1107
+ @remarks
1108
+ By default even if transparent sorting is enabled, depth sorting will only be
1109
+ performed when the material is transparent and depth write/check are disabled.
1110
+ This function disables these extra conditions.
1111
+ */
1112
+ void setTransparentSortingForced(bool enabled);
1113
+
1114
+ /** Returns whether or not transparent sorting is forced.
1115
+ */
1116
+ bool getTransparentSortingForced(void) const;
1117
+
1118
+ /** Sets whether or not this pass should iterate per light or number of
1119
+ lights which can affect the object being rendered.
1120
+ @remarks
1121
+ The default behaviour for a pass (when this option is 'false'), is
1122
+ for a pass to be rendered only once (or the number of times set in
1123
+ setPassIterationCount), with all the lights which could
1124
+ affect this object set at the same time (up to the maximum lights
1125
+ allowed in the render system, which is typically 8).
1126
+ @par
1127
+ Setting this option to 'true' changes this behaviour, such that
1128
+ instead of trying to issue render this pass once per object, it
1129
+ is run <b>per light</b>, or for a group of 'n' lights each time
1130
+ which can affect this object, the number of
1131
+ times set in setPassIterationCount (default is once). In
1132
+ this case, only light index 0 is ever used, and is a different light
1133
+ every time the pass is issued, up to the total number of lights
1134
+ which is affecting this object. This has 2 advantages:
1135
+ <ul><li>There is no limit on the number of lights which can be
1136
+ supported</li>
1137
+ <li>It's easier to write vertex / fragment programs for this because
1138
+ a single program can be used for any number of lights</li>
1139
+ </ul>
1140
+ However, this technique is more expensive, and typically you
1141
+ will want an additional ambient pass, because if no lights are
1142
+ affecting the object it will not be rendered at all, which will look
1143
+ odd even if ambient light is zero (imagine if there are lit objects
1144
+ behind it - the objects silhouette would not show up). Therefore,
1145
+ use this option with care, and you would be well advised to provide
1146
+ a less expensive fallback technique for use in the distance.
1147
+ @note
1148
+ The number of times this pass runs is still limited by the maximum
1149
+ number of lights allowed as set in setMaxSimultaneousLights, so
1150
+ you will never get more passes than this. Also, the iteration is
1151
+ started from the 'start light' as set in Pass::setStartLight, and
1152
+ the number of passes is the number of lights to iterate over divided
1153
+ by the number of lights per iteration (default 1, set by
1154
+ setLightCountPerIteration).
1155
+ @param enabled Whether this feature is enabled
1156
+ @param onlyForOneLightType If true, the pass will only be run for a single type
1157
+ of light, other light types will be ignored.
1158
+ @param lightType The single light type which will be considered for this pass
1159
+ */
1160
+ void setIteratePerLight(bool enabled,
1161
+ bool onlyForOneLightType = true, Light::LightTypes lightType = Light::LT_POINT);
1162
+
1163
+ /** Does this pass run once for every light in range? */
1164
+ bool getIteratePerLight(void) const { return mIteratePerLight; }
1165
+ /** Does this pass run only for a single light type (if getIteratePerLight is true). */
1166
+ bool getRunOnlyForOneLightType(void) const { return mRunOnlyForOneLightType; }
1167
+ /** Gets the single light type this pass runs for if getIteratePerLight and
1168
+ getRunOnlyForOneLightType are both true. */
1169
+ Light::LightTypes getOnlyLightType() const { return mOnlyLightType; }
1170
+
1171
+ /** If light iteration is enabled, determine the number of lights per
1172
+ iteration.
1173
+ @remarks
1174
+ The default for this setting is 1, so if you enable light iteration
1175
+ (Pass::setIteratePerLight), the pass is rendered once per light. If
1176
+ you set this value higher, the passes will occur once per 'n' lights.
1177
+ The start of the iteration is set by Pass::setStartLight and the end
1178
+ by Pass::setMaxSimultaneousLights.
1179
+ */
1180
+ void setLightCountPerIteration(unsigned short c);
1181
+ /** If light iteration is enabled, determine the number of lights per
1182
+ iteration.
1183
+ */
1184
+ unsigned short getLightCountPerIteration(void) const;
1185
+
1186
+ /// Gets the parent Technique
1187
+ Technique* getParent(void) const { return mParent; }
1188
+
1189
+ /// Gets the resource group of the ultimate parent Material
1190
+ const String& getResourceGroup(void) const;
1191
+
1192
+ /** Sets the details of the vertex program to use.
1193
+ @remarks
1194
+ Only applicable to programmable passes, this sets the details of
1195
+ the vertex program to use in this pass. The program will not be
1196
+ loaded until the parent Material is loaded.
1197
+ @param name The name of the program - this must have been
1198
+ created using GpuProgramManager by the time that this Pass
1199
+ is loaded. If this parameter is blank, any vertex program in this pass is disabled.
1200
+ @param resetParams
1201
+ If true, this will create a fresh set of parameters from the
1202
+ new program being linked, so if you had previously set parameters
1203
+ you will have to set them again. If you set this to false, you must
1204
+ be absolutely sure that the parameters match perfectly, and in the
1205
+ case of named parameters refers to the indexes underlying them,
1206
+ not just the names.
1207
+ */
1208
+ void setVertexProgram(const String& name, bool resetParams = true);
1209
+ /** Sets the vertex program parameters.
1210
+ @remarks
1211
+ Only applicable to programmable passes, and this particular call is
1212
+ designed for low-level programs; use the named parameter methods
1213
+ for setting high-level program parameters.
1214
+ */
1215
+ void setVertexProgramParameters(GpuProgramParametersSharedPtr params);
1216
+ /** Gets the name of the vertex program used by this pass. */
1217
+ const String& getVertexProgramName(void) const;
1218
+ /** Gets the vertex program parameters used by this pass. */
1219
+ GpuProgramParametersSharedPtr getVertexProgramParameters(void) const;
1220
+ /** Gets the vertex program used by this pass, only available after _load(). */
1221
+ const GpuProgramPtr& getVertexProgram(void) const;
1222
+
1223
+
1224
+ /** Sets the details of the vertex program to use when rendering as a
1225
+ shadow caster.
1226
+ @remarks
1227
+ Texture-based shadows require that the caster is rendered to a texture
1228
+ in a solid colour (the shadow colour in the case of modulative texture
1229
+ shadows). Whilst Ogre can arrange this for the fixed function
1230
+ pipeline, passes which use vertex programs might need the vertex
1231
+ programs still to run in order to preserve any deformation etc
1232
+ that it does. However, lighting calculations must be a lot simpler,
1233
+ with only the ambient colour being used (which the engine will ensure
1234
+ is bound to the shadow colour).
1235
+ @par
1236
+ Therefore, it is up to implementors of vertex programs to provide an
1237
+ alternative vertex program which can be used to render the object
1238
+ to a shadow texture. Do all the same vertex transforms, but set the
1239
+ colour of the vertex to the ambient colour, as bound using the
1240
+ standard auto parameter binding mechanism.
1241
+ @note
1242
+ Some vertex programs will work without doing this, because Ogre ensures
1243
+ that all lights except for ambient are set black. However, the chances
1244
+ are that your vertex program is doing a lot of unnecessary work in this
1245
+ case, since the other lights are having no effect, and it is good practice
1246
+ to supply an alternative.
1247
+ @note
1248
+ This is only applicable to programmable passes.
1249
+ @par
1250
+ The default behaviour is for Ogre to switch to fixed-function
1251
+ rendering if an explicit vertex program alternative is not set.
1252
+ */
1253
+ void setShadowCasterVertexProgram(const String& name);
1254
+ /** Sets the vertex program parameters for rendering as a shadow caster.
1255
+ @remarks
1256
+ Only applicable to programmable passes, and this particular call is
1257
+ designed for low-level programs; use the named parameter methods
1258
+ for setting high-level program parameters.
1259
+ */
1260
+ void setShadowCasterVertexProgramParameters(GpuProgramParametersSharedPtr params);
1261
+ /** Gets the name of the vertex program used by this pass when rendering shadow casters. */
1262
+ const String& getShadowCasterVertexProgramName(void) const;
1263
+ /** Gets the vertex program parameters used by this pass when rendering shadow casters. */
1264
+ GpuProgramParametersSharedPtr getShadowCasterVertexProgramParameters(void) const;
1265
+ /** Gets the vertex program used by this pass when rendering shadow casters,
1266
+ only available after _load(). */
1267
+ const GpuProgramPtr& getShadowCasterVertexProgram(void) const;
1268
+
1269
+ /** Sets the details of the fragment program to use when rendering as a
1270
+ shadow caster.
1271
+ @remarks
1272
+ Texture-based shadows require that the caster is rendered to a texture
1273
+ in a solid colour (the shadow colour in the case of modulative texture
1274
+ shadows). Whilst Ogre can arrange this for the fixed function
1275
+ pipeline, passes which use vertex programs might need the vertex
1276
+ programs still to run in order to preserve any deformation etc
1277
+ that it does. However, lighting calculations must be a lot simpler,
1278
+ with only the ambient colour being used (which the engine will ensure
1279
+ is bound to the shadow colour).
1280
+ @par
1281
+ Therefore, it is up to implementors of vertex programs to provide an
1282
+ alternative vertex program which can be used to render the object
1283
+ to a shadow texture. Do all the same vertex transforms, but set the
1284
+ colour of the vertex to the ambient colour, as bound using the
1285
+ standard auto parameter binding mechanism.
1286
+ @note
1287
+ Some vertex programs will work without doing this, because Ogre ensures
1288
+ that all lights except for ambient are set black. However, the chances
1289
+ are that your vertex program is doing a lot of unnecessary work in this
1290
+ case, since the other lights are having no effect, and it is good practice
1291
+ to supply an alternative.
1292
+ @note
1293
+ This is only applicable to programmable passes.
1294
+ @par
1295
+ The default behaviour is for Ogre to switch to fixed-function
1296
+ rendering if an explicit fragment program alternative is not set.
1297
+ */
1298
+ void setShadowCasterFragmentProgram(const String& name);
1299
+ /** Sets the fragment program parameters for rendering as a shadow caster.
1300
+ @remarks
1301
+ Only applicable to programmable passes, and this particular call is
1302
+ designed for low-level programs; use the named parameter methods
1303
+ for setting high-level program parameters.
1304
+ */
1305
+ void setShadowCasterFragmentProgramParameters(GpuProgramParametersSharedPtr params);
1306
+ /** Gets the name of the fragment program used by this pass when rendering shadow casters. */
1307
+ const String& getShadowCasterFragmentProgramName(void) const;
1308
+ /** Gets the fragment program parameters used by this pass when rendering shadow casters. */
1309
+ GpuProgramParametersSharedPtr getShadowCasterFragmentProgramParameters(void) const;
1310
+ /** Gets the fragment program used by this pass when rendering shadow casters,
1311
+ only available after _load(). */
1312
+ const GpuProgramPtr& getShadowCasterFragmentProgram(void) const;
1313
+
1314
+ /** Sets the details of the vertex program to use when rendering as a
1315
+ shadow receiver.
1316
+ @remarks
1317
+ Texture-based shadows require that the shadow receiver is rendered using
1318
+ a projective texture. Whilst Ogre can arrange this for the fixed function
1319
+ pipeline, passes which use vertex programs might need the vertex
1320
+ programs still to run in order to preserve any deformation etc
1321
+ that it does. So in this case, we need a vertex program which does the
1322
+ appropriate vertex transformation, but generates projective texture
1323
+ coordinates.
1324
+ @par
1325
+ Therefore, it is up to implementors of vertex programs to provide an
1326
+ alternative vertex program which can be used to render the object
1327
+ as a shadow receiver. Do all the same vertex transforms, but generate
1328
+ <strong>2 sets</strong> of texture coordinates using the auto parameter
1329
+ ACT_TEXTURE_VIEWPROJ_MATRIX, which Ogre will bind to the parameter name /
1330
+ index you supply as the second parameter to this method. 2 texture
1331
+ sets are needed because Ogre needs to use 2 texture units for some
1332
+ shadow effects.
1333
+ @note
1334
+ This is only applicable to programmable passes.
1335
+ @par
1336
+ The default behaviour is for Ogre to switch to fixed-function
1337
+ rendering if an explict vertex program alternative is not set.
1338
+ */
1339
+ void setShadowReceiverVertexProgram(const String& name);
1340
+ /** Sets the vertex program parameters for rendering as a shadow receiver.
1341
+ @remarks
1342
+ Only applicable to programmable passes, and this particular call is
1343
+ designed for low-level programs; use the named parameter methods
1344
+ for setting high-level program parameters.
1345
+ */
1346
+ void setShadowReceiverVertexProgramParameters(GpuProgramParametersSharedPtr params);
1347
+
1348
+ /** This method allows you to specify a fragment program for use when
1349
+ rendering a texture shadow receiver.
1350
+ @remarks
1351
+ Texture shadows are applied by rendering the receiver. Modulative texture
1352
+ shadows are performed as a post-render darkening pass, and as such
1353
+ fragment programs are generally not required per-object. Additive
1354
+ texture shadows, however, are applied by accumulating light masked
1355
+ out using a texture shadow (black & white by default, unless you
1356
+ customise this using SceneManager::setCustomShadowCasterMaterial).
1357
+ OGRE can do this for you for most materials, but if you use a custom
1358
+ lighting program (e.g. per pixel lighting) then you'll need to provide
1359
+ a custom version for receiving shadows. You don't need to provide
1360
+ this for shadow casters if you don't use self-shadowing since they
1361
+ will never be shadow receivers too.
1362
+ @par
1363
+ The shadow texture is always bound to texture unit 0 when rendering
1364
+ texture shadow passes. Therefore your custom shadow receiver program
1365
+ may well just need to shift it's texture unit usage up by one unit,
1366
+ and take the shadow texture into account in its calculations.
1367
+ */
1368
+ void setShadowReceiverFragmentProgram(const String& name);
1369
+ /** Sets the fragment program parameters for rendering as a shadow receiver.
1370
+ @remarks
1371
+ Only applicable to programmable passes, and this particular call is
1372
+ designed for low-level programs; use the named parameter methods
1373
+ for setting high-level program parameters.
1374
+ */
1375
+ void setShadowReceiverFragmentProgramParameters(GpuProgramParametersSharedPtr params);
1376
+
1377
+ /** Gets the name of the vertex program used by this pass when rendering shadow receivers. */
1378
+ const String& getShadowReceiverVertexProgramName(void) const;
1379
+ /** Gets the vertex program parameters used by this pass when rendering shadow receivers. */
1380
+ GpuProgramParametersSharedPtr getShadowReceiverVertexProgramParameters(void) const;
1381
+ /** Gets the vertex program used by this pass when rendering shadow receivers,
1382
+ only available after _load(). */
1383
+ const GpuProgramPtr& getShadowReceiverVertexProgram(void) const;
1384
+
1385
+ /** Gets the name of the fragment program used by this pass when rendering shadow receivers. */
1386
+ const String& getShadowReceiverFragmentProgramName(void) const;
1387
+ /** Gets the fragment program parameters used by this pass when rendering shadow receivers. */
1388
+ GpuProgramParametersSharedPtr getShadowReceiverFragmentProgramParameters(void) const;
1389
+ /** Gets the fragment program used by this pass when rendering shadow receivers,
1390
+ only available after _load(). */
1391
+ const GpuProgramPtr& getShadowReceiverFragmentProgram(void) const;
1392
+
1393
+ /** Sets the details of the fragment program to use.
1394
+ @remarks
1395
+ Only applicable to programmable passes, this sets the details of
1396
+ the fragment program to use in this pass. The program will not be
1397
+ loaded until the parent Material is loaded.
1398
+ @param name The name of the program - this must have been
1399
+ created using GpuProgramManager by the time that this Pass
1400
+ is loaded. If this parameter is blank, any fragment program in this pass is disabled.
1401
+ @param resetParams
1402
+ If true, this will create a fresh set of parameters from the
1403
+ new program being linked, so if you had previously set parameters
1404
+ you will have to set them again. If you set this to false, you must
1405
+ be absolutely sure that the parameters match perfectly, and in the
1406
+ case of named parameters refers to the indexes underlying them,
1407
+ not just the names.
1408
+ */
1409
+ void setFragmentProgram(const String& name, bool resetParams = true);
1410
+ /** Sets the fragment program parameters.
1411
+ @remarks
1412
+ Only applicable to programmable passes.
1413
+ */
1414
+ void setFragmentProgramParameters(GpuProgramParametersSharedPtr params);
1415
+ /** Gets the name of the fragment program used by this pass. */
1416
+ const String& getFragmentProgramName(void) const;
1417
+ /** Gets the fragment program parameters used by this pass. */
1418
+ GpuProgramParametersSharedPtr getFragmentProgramParameters(void) const;
1419
+ /** Gets the fragment program used by this pass, only available after _load(). */
1420
+ const GpuProgramPtr& getFragmentProgram(void) const;
1421
+
1422
+ /** Sets the details of the geometry program to use.
1423
+ @remarks
1424
+ Only applicable to programmable passes, this sets the details of
1425
+ the geometry program to use in this pass. The program will not be
1426
+ loaded until the parent Material is loaded.
1427
+ @param name The name of the program - this must have been
1428
+ created using GpuProgramManager by the time that this Pass
1429
+ is loaded. If this parameter is blank, any geometry program in this pass is disabled.
1430
+ @param resetParams
1431
+ If true, this will create a fresh set of parameters from the
1432
+ new program being linked, so if you had previously set parameters
1433
+ you will have to set them again. If you set this to false, you must
1434
+ be absolutely sure that the parameters match perfectly, and in the
1435
+ case of named parameters refers to the indexes underlying them,
1436
+ not just the names.
1437
+ */
1438
+ void setGeometryProgram(const String& name, bool resetParams = true);
1439
+ /** Sets the geometry program parameters.
1440
+ @remarks
1441
+ Only applicable to programmable passes.
1442
+ */
1443
+ void setGeometryProgramParameters(GpuProgramParametersSharedPtr params);
1444
+ /** Gets the name of the geometry program used by this pass. */
1445
+ const String& getGeometryProgramName(void) const;
1446
+ /** Gets the geometry program parameters used by this pass. */
1447
+ GpuProgramParametersSharedPtr getGeometryProgramParameters(void) const;
1448
+ /** Gets the geometry program used by this pass, only available after _load(). */
1449
+ const GpuProgramPtr& getGeometryProgram(void) const;
1450
+
1451
+ /** Splits this Pass to one which can be handled in the number of
1452
+ texture units specified.
1453
+ @remarks
1454
+ Only works on non-programmable passes, programmable passes cannot be
1455
+ split, it's up to the author to ensure that there is a fallback Technique
1456
+ for less capable cards.
1457
+ @param numUnits The target number of texture units
1458
+ @return A new Pass which contains the remaining units, and a scene_blend
1459
+ setting appropriate to approximate the multitexture. This Pass will be
1460
+ attached to the parent Technique of this Pass.
1461
+ */
1462
+ Pass* _split(unsigned short numUnits);
1463
+
1464
+ /** Internal method to adjust pass index. */
1465
+ void _notifyIndex(unsigned short index);
1466
+
1467
+ /** Internal method for preparing to load this pass. */
1468
+ void _prepare(void);
1469
+ /** Internal method for undoing the load preparartion for this pass. */
1470
+ void _unprepare(void);
1471
+ /** Internal method for loading this pass. */
1472
+ void _load(void);
1473
+ /** Internal method for unloading this pass. */
1474
+ void _unload(void);
1475
+ // Is this loaded?
1476
+ bool isLoaded(void) const;
1477
+
1478
+ /** Gets the 'hash' of this pass, ie a precomputed number to use for sorting
1479
+ @remarks
1480
+ This hash is used to sort passes, and for this reason the pass is hashed
1481
+ using firstly its index (so that all passes are rendered in order), then
1482
+ by the textures which it's TextureUnitState instances are using.
1483
+ */
1484
+ uint32 getHash(void) const { return mHash; }
1485
+ /// Mark the hash as dirty
1486
+ void _dirtyHash(void);
1487
+ /** Internal method for recalculating the hash.
1488
+ @remarks
1489
+ Do not call this unless you are sure the old hash is not still being
1490
+ used by anything. If in doubt, call _dirtyHash if you want to force
1491
+ recalculation of the has next time.
1492
+ */
1493
+ void _recalculateHash(void);
1494
+ /** Tells the pass that it needs recompilation. */
1495
+ void _notifyNeedsRecompile(void);
1496
+
1497
+ /** Update automatic parameters.
1498
+ @param source The source of the parameters
1499
+ @param variabilityMask A mask of GpuParamVariability which identifies which autos will need updating
1500
+ */
1501
+ void _updateAutoParams(const AutoParamDataSource* source, uint16 variabilityMask) const;
1502
+
1503
+ /** Gets the 'nth' texture which references the given content type.
1504
+ @remarks
1505
+ If the 'nth' texture unit which references the content type doesn't
1506
+ exist, then this method returns an arbitrary high-value outside the
1507
+ valid range to index texture units.
1508
+ */
1509
+ unsigned short _getTextureUnitWithContentTypeIndex(
1510
+ TextureUnitState::ContentType contentType, unsigned short index) const;
1511
+
1512
+ /** Set texture filtering for every texture unit
1513
+ @note
1514
+ This property actually exists on the TextureUnitState class
1515
+ For simplicity, this method allows you to set these properties for
1516
+ every current TeextureUnitState, If you need more precision, retrieve the
1517
+ TextureUnitState instance and set the property there.
1518
+ @see TextureUnitState::setTextureFiltering
1519
+ */
1520
+ void setTextureFiltering(TextureFilterOptions filterType);
1521
+ /** Sets the anisotropy level to be used for all textures.
1522
+ @note
1523
+ This property has been moved to the TextureUnitState class, which is accessible via the
1524
+ Technique and Pass. For simplicity, this method allows you to set these properties for
1525
+ every current TeextureUnitState, If you need more precision, retrieve the Technique,
1526
+ Pass and TextureUnitState instances and set the property there.
1527
+ @see TextureUnitState::setTextureAnisotropy
1528
+ */
1529
+ void setTextureAnisotropy(unsigned int maxAniso);
1530
+ /** If set to true, this forces normals to be normalised dynamically
1531
+ by the hardware for this pass.
1532
+ @remarks
1533
+ This option can be used to prevent lighting variations when scaling an
1534
+ object - normally because this scaling is hardware based, the normals
1535
+ get scaled too which causes lighting to become inconsistent. By default the
1536
+ SceneManager detects scaled objects and does this for you, but
1537
+ this has an overhead so you might want to turn that off through
1538
+ SceneManager::setNormaliseNormalsOnScale(false) and only do it per-Pass
1539
+ when you need to.
1540
+ */
1541
+ void setNormaliseNormals(bool normalise) { mNormaliseNormals = normalise; }
1542
+
1543
+ /** Returns true if this pass has auto-normalisation of normals set. */
1544
+ bool getNormaliseNormals(void) const {return mNormaliseNormals; }
1545
+
1546
+ /** Static method to retrieve all the Passes which need their
1547
+ hash values recalculated.
1548
+ */
1549
+ static const PassSet& getDirtyHashList(void)
1550
+ { return msDirtyHashList; }
1551
+ /** Static method to retrieve all the Passes which are pending deletion.
1552
+ */
1553
+ static const PassSet& getPassGraveyard(void)
1554
+ { return msPassGraveyard; }
1555
+ /** Static method to reset the list of passes which need their hash
1556
+ values recalculated.
1557
+ @remarks
1558
+ For performance, the dirty list is not updated progressively as
1559
+ the hashes are recalculated, instead we expect the processor of the
1560
+ dirty hash list to clear the list when they are done.
1561
+ */
1562
+ static void clearDirtyHashList(void);
1563
+
1564
+ /** Process all dirty and pending deletion passes. */
1565
+ static void processPendingPassUpdates(void);
1566
+
1567
+ /** Queue this pass for deletion when appropriate. */
1568
+ void queueForDeletion(void);
1569
+
1570
+ /** Returns whether this pass is ambient only.
1571
+ */
1572
+ bool isAmbientOnly(void) const;
1573
+
1574
+ /** set the number of iterations that this pass
1575
+ should perform when doing fast multi pass operation.
1576
+ @remarks
1577
+ Only applicable for programmable passes.
1578
+ @param count number of iterations to perform fast multi pass operations.
1579
+ A value greater than 1 will cause the pass to be executed count number of
1580
+ times without changing the render state. This is very useful for passes
1581
+ that use programmable shaders that have to iterate more than once but don't
1582
+ need a render state change. Using multi pass can dramatically speed up rendering
1583
+ for materials that do things like fur, blur.
1584
+ A value of 1 turns off multi pass operation and the pass does
1585
+ the normal pass operation.
1586
+ */
1587
+ void setPassIterationCount(const size_t count) { mPassIterationCount = count; }
1588
+
1589
+ /** Gets the pass iteration count value.
1590
+ */
1591
+ size_t getPassIterationCount(void) const { return mPassIterationCount; }
1592
+
1593
+ /** Applies texture names to Texture Unit State with matching texture name aliases.
1594
+ All Texture Unit States within the pass are checked.
1595
+ If matching texture aliases are found then true is returned.
1596
+
1597
+ @param
1598
+ aliasList is a map container of texture alias, texture name pairs
1599
+ @param
1600
+ apply set true to apply the texture aliases else just test to see if texture alias matches are found.
1601
+ @return
1602
+ True if matching texture aliases were found in the pass.
1603
+ */
1604
+ bool applyTextureAliases(const AliasTextureNamePairList& aliasList, const bool apply = true) const;
1605
+
1606
+ /** Sets whether or not this pass will be clipped by a scissor rectangle
1607
+ encompassing the lights that are being used in it.
1608
+ @remarks
1609
+ In order to cut down on fillrate when you have a number of fixed-range
1610
+ lights in the scene, you can enable this option to request that
1611
+ during rendering, only the region of the screen which is covered by
1612
+ the lights is rendered. This region is the screen-space rectangle
1613
+ covering the union of the spheres making up the light ranges. Directional
1614
+ lights are ignored for this.
1615
+ @par
1616
+ This is only likely to be useful for multipass additive lighting
1617
+ algorithms, where the scene has already been 'seeded' with an ambient
1618
+ pass and this pass is just adding light in affected areas.
1619
+ @note
1620
+ When using SHADOWTYPE_STENCIL_ADDITIVE or SHADOWTYPE_TEXTURE_ADDITIVE,
1621
+ this option is implicitly used for all per-light passes and does
1622
+ not need to be specified. If you are not using shadows or are using
1623
+ a modulative or an integrated shadow technique then this could be useful.
1624
+
1625
+ */
1626
+ void setLightScissoringEnabled(bool enabled) { mLightScissoring = enabled; }
1627
+ /** Gets whether or not this pass will be clipped by a scissor rectangle
1628
+ encompassing the lights that are being used in it.
1629
+ */
1630
+ bool getLightScissoringEnabled() const { return mLightScissoring; }
1631
+
1632
+ /** Gets whether or not this pass will be clipped by user clips planes
1633
+ bounding the area covered by the light.
1634
+ @remarks
1635
+ In order to cut down on the geometry set up to render this pass
1636
+ when you have a single fixed-range light being rendered through it,
1637
+ you can enable this option to request that during triangle setup,
1638
+ clip planes are defined to bound the range of the light. In the case
1639
+ of a point light these planes form a cube, and in the case of
1640
+ a spotlight they form a pyramid. Directional lights are never clipped.
1641
+ @par
1642
+ This option is only likely to be useful for multipass additive lighting
1643
+ algorithms, where the scene has already been 'seeded' with an ambient
1644
+ pass and this pass is just adding light in affected areas. In addition,
1645
+ it will only be honoured if there is exactly one non-directional light
1646
+ being used in this pass. Also, these clip planes override any user clip
1647
+ planes set on Camera.
1648
+ @note
1649
+ When using SHADOWTYPE_STENCIL_ADDITIVE or SHADOWTYPE_TEXTURE_ADDITIVE,
1650
+ this option is automatically used for all per-light passes if you
1651
+ enable SceneManager::setShadowUseLightClipPlanes and does
1652
+ not need to be specified. It is disabled by default since clip planes have
1653
+ a cost of their own which may not always exceed the benefits they give you.
1654
+ */
1655
+ void setLightClipPlanesEnabled(bool enabled) { mLightClipPlanes = enabled; }
1656
+ /** Gets whether or not this pass will be clipped by user clips planes
1657
+ bounding the area covered by the light.
1658
+ */
1659
+ bool getLightClipPlanesEnabled() const { return mLightClipPlanes; }
1660
+
1661
+ /** Manually set which illumination stage this pass is a member of.
1662
+ @remarks
1663
+ When using an additive lighting mode (SHADOWTYPE_STENCIL_ADDITIVE or
1664
+ SHADOWTYPE_TEXTURE_ADDITIVE), the scene is rendered in 3 discrete
1665
+ stages, ambient (or pre-lighting), per-light (once per light, with
1666
+ shadowing) and decal (or post-lighting). Usually OGRE figures out how
1667
+ to categorise your passes automatically, but there are some effects you
1668
+ cannot achieve without manually controlling the illumination. For example
1669
+ specular effects are muted by the typical sequence because all textures
1670
+ are saved until the IS_DECAL stage which mutes the specular effect.
1671
+ Instead, you could do texturing within the per-light stage if it's
1672
+ possible for your material and thus add the specular on after the
1673
+ decal texturing, and have no post-light rendering.
1674
+ @par
1675
+ If you assign an illumination stage to a pass you have to assign it
1676
+ to all passes in the technique otherwise it will be ignored. Also note
1677
+ that whilst you can have more than one pass in each group, they cannot
1678
+ alternate, ie all ambient passes will be before all per-light passes,
1679
+ which will also be before all decal passes. Within their categories
1680
+ the passes will retain their ordering though.
1681
+ */
1682
+ void setIlluminationStage(IlluminationStage is) { mIlluminationStage = is; }
1683
+ /// Get the manually assigned illumination stage, if any
1684
+ IlluminationStage getIlluminationStage() const { return mIlluminationStage; }
1685
+ /** There are some default hash functions used to order passes so that
1686
+ render state changes are minimised, this enumerates them.
1687
+ */
1688
+ enum BuiltinHashFunction
1689
+ {
1690
+ /** Try to minimise the number of texture changes. */
1691
+ MIN_TEXTURE_CHANGE,
1692
+ /** Try to minimise the number of GPU program changes.
1693
+ @note Only really useful if you use GPU programs for all of your
1694
+ materials.
1695
+ */
1696
+ MIN_GPU_PROGRAM_CHANGE
1697
+ };
1698
+ /** Sets one of the default hash functions to be used.
1699
+ @remarks
1700
+ You absolutely must not change the hash function whilst any Pass instances
1701
+ exist in the render queue. The only time you can do this is either
1702
+ before you render anything, or directly after you manuall call
1703
+ RenderQueue::clear(true) to completely destroy the queue structures.
1704
+ The default is MIN_TEXTURE_CHANGE.
1705
+ @note
1706
+ You can also implement your own hash function, see the alternate version
1707
+ of this method.
1708
+ @see HashFunc
1709
+ */
1710
+ static void setHashFunction(BuiltinHashFunction builtin);
1711
+
1712
+ /** Set the hash function used for all passes.
1713
+ @remarks
1714
+ You absolutely must not change the hash function whilst any Pass instances
1715
+ exist in the render queue. The only time you can do this is either
1716
+ before you render anything, or directly after you manuall call
1717
+ RenderQueue::clear(true) to completely destroy the queue structures.
1718
+ @note
1719
+ You can also use one of the built-in hash functions, see the alternate version
1720
+ of this method. The default is MIN_TEXTURE_CHANGE.
1721
+ @see HashFunc
1722
+ */
1723
+ static void setHashFunction(HashFunc* hashFunc) { msHashFunc = hashFunc; }
1724
+
1725
+ /** Get the hash function used for all passes.
1726
+ */
1727
+ static HashFunc* getHashFunction(void) { return msHashFunc; }
1728
+
1729
+ /** Get the builtin hash function.
1730
+ */
1731
+ static HashFunc* getBuiltinHashFunction(BuiltinHashFunction builtin);
1732
+
1733
+ /** Return an instance of user objects binding associated with this class.
1734
+ You can use it to associate one or more custom objects with this class instance.
1735
+ @see UserObjectBindings::setUserAny.
1736
+ */
1737
+ UserObjectBindings& getUserObjectBindings() { return mUserObjectBindings; }
1738
+
1739
+ /** Return an instance of user objects binding associated with this class.
1740
+ You can use it to associate one or more custom objects with this class instance.
1741
+ @see UserObjectBindings::setUserAny.
1742
+ */
1743
+ const UserObjectBindings& getUserObjectBindings() const { return mUserObjectBindings; }
1744
+ };
1745
+
1746
+ /** Struct recording a pass which can be used for a specific illumination stage.
1747
+ @remarks
1748
+ This structure is used to record categorised passes which fit into a
1749
+ number of distinct illumination phases - ambient, diffuse / specular
1750
+ (per-light) and decal (post-lighting texturing).
1751
+ An original pass may fit into one of these categories already, or it
1752
+ may require splitting into its component parts in order to be categorised
1753
+ properly.
1754
+ */
1755
+ struct IlluminationPass : public PassAlloc
1756
+ {
1757
+ IlluminationStage stage;
1758
+ /// The pass to use in this stage
1759
+ Pass* pass;
1760
+ /// Whether this pass is one which should be deleted itself
1761
+ bool destroyOnShutdown;
1762
+ /// The original pass which spawned this one
1763
+ Pass* originalPass;
1764
+
1765
+ IlluminationPass() {}
1766
+ };
1767
+
1768
+ typedef vector<IlluminationPass*>::type IlluminationPassList;
1769
+
1770
+ /** @} */
1771
+ /** @} */
1772
+
1773
+ }
1774
+
1775
+ #endif