ScreenSpaceReflectionsSettings.generated.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. using System.Runtime.InteropServices;
  4. namespace BansheeEngine
  5. {
  6. /** @addtogroup Rendering
  7. * @{
  8. */
  9. /// <summary>
  10. /// Settings that control the screen space reflections effect. Screen space reflections provide high quality mirror-like
  11. /// reflections at low performance cost. They should be used together with reflection probes as the effects complement
  12. /// each other. As the name implies, the reflections are only limited to geometry drawn on the screen and the system will
  13. /// fall back to refl. probes when screen space data is unavailable. Similarly the system will fall back to refl. probes
  14. /// for rougher (more glossy rather than mirror-like) surfaces. Those surfaces require a higher number of samples to
  15. /// achieve the glossy look, so we instead fall back to refl. probes which are pre-filtered and can be quickly sampled.
  16. /// </summary>
  17. public partial class ScreenSpaceReflectionsSettings : ScriptObject
  18. {
  19. private ScreenSpaceReflectionsSettings(bool __dummy0) { }
  20. public ScreenSpaceReflectionsSettings()
  21. {
  22. Internal_ScreenSpaceReflectionsSettings(this);
  23. }
  24. /// <summary>Enables or disables the SSR effect.</summary>
  25. public bool Enabled
  26. {
  27. get { return Internal_getenabled(mCachedPtr); }
  28. set { Internal_setenabled(mCachedPtr, value); }
  29. }
  30. /// <summary>
  31. /// Quality of the SSR effect. Higher values cast more sample rays, and march those rays are lower increments for better
  32. /// precision. This results in higher quality, as well as a higher performance requirement. Valid range is [0, 4],
  33. /// default is 2.
  34. /// </summary>
  35. public uint Quality
  36. {
  37. get { return Internal_getquality(mCachedPtr); }
  38. set { Internal_setquality(mCachedPtr, value); }
  39. }
  40. /// <summary>Intensity of the screen space reflections. Valid range is [0, 1]. Default is 1 (100%).</summary>
  41. public float Intensity
  42. {
  43. get { return Internal_getintensity(mCachedPtr); }
  44. set { Internal_setintensity(mCachedPtr, value); }
  45. }
  46. /// <summary>
  47. /// Roughness at which screen space reflections start fading out and become replaced with refl. probes. Valid range is
  48. /// [0, 1]. Default is 0.8.
  49. /// </summary>
  50. public float MaxRoughness
  51. {
  52. get { return Internal_getmaxRoughness(mCachedPtr); }
  53. set { Internal_setmaxRoughness(mCachedPtr, value); }
  54. }
  55. [MethodImpl(MethodImplOptions.InternalCall)]
  56. private static extern void Internal_ScreenSpaceReflectionsSettings(ScreenSpaceReflectionsSettings managedInstance);
  57. [MethodImpl(MethodImplOptions.InternalCall)]
  58. private static extern bool Internal_getenabled(IntPtr thisPtr);
  59. [MethodImpl(MethodImplOptions.InternalCall)]
  60. private static extern void Internal_setenabled(IntPtr thisPtr, bool value);
  61. [MethodImpl(MethodImplOptions.InternalCall)]
  62. private static extern uint Internal_getquality(IntPtr thisPtr);
  63. [MethodImpl(MethodImplOptions.InternalCall)]
  64. private static extern void Internal_setquality(IntPtr thisPtr, uint value);
  65. [MethodImpl(MethodImplOptions.InternalCall)]
  66. private static extern float Internal_getintensity(IntPtr thisPtr);
  67. [MethodImpl(MethodImplOptions.InternalCall)]
  68. private static extern void Internal_setintensity(IntPtr thisPtr, float value);
  69. [MethodImpl(MethodImplOptions.InternalCall)]
  70. private static extern float Internal_getmaxRoughness(IntPtr thisPtr);
  71. [MethodImpl(MethodImplOptions.InternalCall)]
  72. private static extern void Internal_setmaxRoughness(IntPtr thisPtr, float value);
  73. }
  74. /** @} */
  75. }