GpuSceneArrays.def.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright (C) 2009-2023, Panagiotis Christopoulos Charitos and contributors.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. // It's ANKI_CAT_TYPE(arrayName, gpuSceneType, id, cvarName)
  6. #if !defined(ANKI_CAT_SEPARATOR)
  7. # define ANKI_CAT_SEPARATOR
  8. #endif
  9. // Trick because macros are alergic to commas inside templates
  10. #define ANKI_TRF_ARR Array<Mat3x4, 2>
  11. #define ANKI_MESH_ARR Array<GpuSceneMeshLod, kMaxLodCount>
  12. ANKI_CAT_TYPE(Transform, ANKI_TRF_ARR, 0, g_minGpuSceneTransformsCVar)
  13. ANKI_CAT_SEPARATOR
  14. ANKI_CAT_TYPE(MeshLod, ANKI_MESH_ARR, 0, g_minGpuSceneMeshesCVar)
  15. ANKI_CAT_SEPARATOR
  16. ANKI_CAT_TYPE(ParticleEmitter, GpuSceneParticleEmitter, 0, g_minGpuSceneParticleEmittersCVar)
  17. ANKI_CAT_SEPARATOR
  18. ANKI_CAT_TYPE(Light, GpuSceneLight, 0, g_minGpuSceneLightsCVar)
  19. ANKI_CAT_SEPARATOR
  20. ANKI_CAT_TYPE(ReflectionProbe, GpuSceneReflectionProbe, 0, g_minGpuSceneReflectionProbesCVar)
  21. ANKI_CAT_SEPARATOR
  22. ANKI_CAT_TYPE(GlobalIlluminationProbe, GpuSceneGlobalIlluminationProbe, 0, g_minGpuSceneGlobalIlluminationProbesCVar)
  23. ANKI_CAT_SEPARATOR
  24. ANKI_CAT_TYPE(Decal, GpuSceneDecal, 0, g_minGpuSceneDecalsCVar)
  25. ANKI_CAT_SEPARATOR
  26. ANKI_CAT_TYPE(FogDensityVolume, GpuSceneFogDensityVolume, 0, g_minGpuSceneFogDensityVolumesCVar)
  27. ANKI_CAT_SEPARATOR
  28. ANKI_CAT_TYPE(Renderable, GpuSceneRenderable, 0, g_minGpuSceneRenderablesCVar)
  29. ANKI_CAT_SEPARATOR
  30. ANKI_CAT_TYPE(RenderableAabbGBuffer, GpuSceneRenderableAabb, 0, g_minGpuSceneRenderablesCVar)
  31. ANKI_CAT_SEPARATOR
  32. ANKI_CAT_TYPE(RenderableAabbForward, GpuSceneRenderableAabb, 1, g_minGpuSceneRenderablesCVar)
  33. ANKI_CAT_SEPARATOR
  34. ANKI_CAT_TYPE(RenderableAabbDepth, GpuSceneRenderableAabb, 2, g_minGpuSceneRenderablesCVar)
  35. ANKI_CAT_SEPARATOR
  36. ANKI_CAT_TYPE(RenderableAabbRt, GpuSceneRenderableAabb, 3, g_minGpuSceneRenderablesCVar)
  37. #undef ANKI_TRF_ARR
  38. #undef ANKI_MESH_ARR
  39. #undef ANKI_CAT_TYPE
  40. #undef ANKI_CAT_SEPARATOR