Renderer.pkg 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. $#include "Graphics/Renderer.h"
  2. class Renderer
  3. {
  4. void SetNumViewports(unsigned num);
  5. void SetViewport(unsigned index, Viewport* viewport);
  6. void SetDefaultRenderPath(RenderPath* renderPath);
  7. void SetDefaultRenderPath(XMLFile* file);
  8. void SetDefaultTechnique(Technique* technique);
  9. void SetHDRRendering(bool enable);
  10. void SetSpecularLighting(bool enable);
  11. void SetTextureAnisotropy(int level);
  12. void SetTextureFilterMode(TextureFilterMode mode);
  13. void SetTextureQuality(int quality);
  14. void SetMaterialQuality(int quality);
  15. void SetDrawShadows(bool enable);
  16. void SetShadowMapSize(int size);
  17. void SetShadowQuality(ShadowQuality quality);
  18. void SetShadowSoftness(float shadowSoftness);
  19. void SetVSMShadowParameters(float minVariance, float lightBleedingReduction);
  20. void SetVSMMultiSample(int multiSample);
  21. void SetReuseShadowMaps(bool enable);
  22. void SetMaxShadowMaps(int shadowMaps);
  23. void SetDynamicInstancing(bool enable);
  24. void SetNumExtraInstancingBufferElements(int elements);
  25. void SetMinInstances(int instances);
  26. void SetMaxSortedInstances(int instances);
  27. void SetMaxOccluderTriangles(int triangles);
  28. void SetOcclusionBufferSize(int size);
  29. void SetOccluderSizeThreshold(float screenSize);
  30. void SetThreadedOcclusion(bool enable);
  31. void SetMobileShadowBiasMul(float mul);
  32. void SetMobileShadowBiasAdd(float add);
  33. void SetMobileNormalOffsetMul(float mul);
  34. void ReloadShaders();
  35. unsigned GetNumViewports() const;
  36. Viewport* GetViewport(unsigned index) const;
  37. RenderPath* GetDefaultRenderPath() const;
  38. Technique* GetDefaultTechnique() const;
  39. bool GetHDRRendering() const;
  40. bool GetSpecularLighting() const;
  41. bool GetDrawShadows() const;
  42. int GetTextureAnisotropy() const;
  43. TextureFilterMode GetTextureFilterMode() const;
  44. int GetTextureQuality() const;
  45. int GetMaterialQuality() const;
  46. int GetShadowMapSize() const;
  47. ShadowQuality GetShadowQuality() const;
  48. float GetShadowSoftness() const;
  49. Vector2 GetVSMShadowParameters() const;
  50. int GetVSMMultiSample() const;
  51. bool GetReuseShadowMaps() const;
  52. int GetMaxShadowMaps() const;
  53. bool GetDynamicInstancing() const;
  54. int GetNumExtraInstancingBufferElements() const;
  55. int GetMinInstances() const;
  56. int GetMaxSortedInstances() const;
  57. int GetMaxOccluderTriangles() const;
  58. int GetOcclusionBufferSize() const;
  59. float GetOccluderSizeThreshold() const;
  60. bool GetThreadedOcclusion() const;
  61. float GetMobileShadowBiasMul() const;
  62. float GetMobileShadowBiasAdd() const;
  63. float GetMobileNormalOffsetMul() const;
  64. unsigned GetNumViews() const;
  65. unsigned GetNumPrimitives() const;
  66. unsigned GetNumBatches() const;
  67. unsigned GetNumGeometries(bool allViews = false) const;
  68. unsigned GetNumLights(bool allViews = false) const;
  69. unsigned GetNumShadowMaps(bool allViews = false) const;
  70. unsigned GetNumOccluders(bool allViews = false) const;
  71. Zone* GetDefaultZone() const;
  72. Material* GetDefaultMaterial() const;
  73. Texture2D* GetDefaultLightRamp() const;
  74. Texture2D* GetDefaultLightSpot() const;
  75. void DrawDebugGeometry(bool depthTest);
  76. tolua_property__get_set unsigned numViewports;
  77. tolua_property__get_set RenderPath* defaultRenderPath;
  78. tolua_property__get_set Technique* defaultTechnique;
  79. tolua_property__get_set bool HDRRendering;
  80. tolua_property__get_set bool specularLighting;
  81. tolua_property__get_set bool drawShadows;
  82. tolua_property__get_set int textureAnisotropy;
  83. tolua_property__get_set TextureFilterMode textureFilterMode;
  84. tolua_property__get_set int textureQuality;
  85. tolua_property__get_set int materialQuality;
  86. tolua_property__get_set int shadowMapSize;
  87. tolua_property__get_set ShadowQuality shadowQuality;
  88. tolua_property__get_set float shadowSoftness;
  89. tolua_property__get_set int VSMMultiSample;
  90. tolua_property__get_set bool reuseShadowMaps;
  91. tolua_property__get_set int maxShadowMaps;
  92. tolua_property__get_set bool dynamicInstancing;
  93. tolua_property__get_set int numExtraInstancingBufferElements;
  94. tolua_property__get_set int minInstances;
  95. tolua_property__get_set int maxSortedInstances;
  96. tolua_property__get_set int maxOccluderTriangles;
  97. tolua_property__get_set int occlusionBufferSize;
  98. tolua_property__get_set float occluderSizeThreshold;
  99. tolua_property__get_set bool threadedOcclusion;
  100. tolua_property__get_set float mobileShadowBiasMul;
  101. tolua_property__get_set float mobileShadowBiasAdd;
  102. tolua_property__get_set float mobileNormalOffsetMul;
  103. tolua_readonly tolua_property__get_set unsigned numViews;
  104. tolua_readonly tolua_property__get_set unsigned numPrimitives;
  105. tolua_readonly tolua_property__get_set unsigned numBatches;
  106. tolua_readonly tolua_property__get_set Zone* defaultZone;
  107. tolua_readonly tolua_property__get_set Material* defaultMaterial;
  108. tolua_readonly tolua_property__get_set Texture2D* defaultLightRamp;
  109. tolua_readonly tolua_property__get_set Texture2D* defaultLightSpot;
  110. };
  111. Renderer* GetRenderer();
  112. tolua_readonly tolua_property__get_set Renderer* renderer;
  113. ${
  114. #define TOLUA_DISABLE_tolua_GraphicsLuaAPI_GetRenderer00
  115. static int tolua_GraphicsLuaAPI_GetRenderer00(lua_State* tolua_S)
  116. {
  117. return ToluaGetSubsystem<Renderer>(tolua_S);
  118. }
  119. #define TOLUA_DISABLE_tolua_get_renderer_ptr
  120. #define tolua_get_renderer_ptr tolua_GraphicsLuaAPI_GetRenderer00
  121. $}