ParticleGpuSimulationSettings.generated.cs 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. using System.Runtime.InteropServices;
  4. namespace BansheeEngine
  5. {
  6. /** @addtogroup Particles
  7. * @{
  8. */
  9. /// <summary>Settings used for controlling particle system GPU simulation.</summary>
  10. public partial class ParticleGpuSimulationSettings : ScriptObject
  11. {
  12. private ParticleGpuSimulationSettings(bool __dummy0) { }
  13. protected ParticleGpuSimulationSettings() { }
  14. public ParticleVectorFieldSettings VectorField
  15. {
  16. get { return Internal_getvectorField(mCachedPtr); }
  17. set { Internal_setvectorField(mCachedPtr, value); }
  18. }
  19. /// <summary>Determines particle color, evaluated over the particle lifetime.</summary>
  20. public ColorDistribution ColorOverLifetime
  21. {
  22. get { return Internal_getcolorOverLifetime(mCachedPtr); }
  23. set { Internal_setcolorOverLifetime(mCachedPtr, value); }
  24. }
  25. /// <summary>
  26. /// Determines particle size, evaluated over the particle lifetime. Multiplied by the initial particle size.
  27. /// </summary>
  28. public Vector2Distribution SizeScaleOverLifetime
  29. {
  30. get { return Internal_getsizeScaleOverLifetime(mCachedPtr); }
  31. set { Internal_setsizeScaleOverLifetime(mCachedPtr, value); }
  32. }
  33. /// <summary>Constant acceleration to apply for each step of the simulation.</summary>
  34. public Vector3 Acceleration
  35. {
  36. get
  37. {
  38. Vector3 temp;
  39. Internal_getacceleration(mCachedPtr, out temp);
  40. return temp;
  41. }
  42. set { Internal_setacceleration(mCachedPtr, ref value); }
  43. }
  44. /// <summary>Amount of resistance to apply in the direction opposite of the particle's velocity.</summary>
  45. public float Drag
  46. {
  47. get { return Internal_getdrag(mCachedPtr); }
  48. set { Internal_setdrag(mCachedPtr, value); }
  49. }
  50. /// <summary>Settings controlling particle depth buffer collisions.</summary>
  51. public ParticleDepthCollisionSettings DepthCollision
  52. {
  53. get { return Internal_getdepthCollision(mCachedPtr); }
  54. set { Internal_setdepthCollision(mCachedPtr, value); }
  55. }
  56. [MethodImpl(MethodImplOptions.InternalCall)]
  57. private static extern ParticleVectorFieldSettings Internal_getvectorField(IntPtr thisPtr);
  58. [MethodImpl(MethodImplOptions.InternalCall)]
  59. private static extern void Internal_setvectorField(IntPtr thisPtr, ParticleVectorFieldSettings value);
  60. [MethodImpl(MethodImplOptions.InternalCall)]
  61. private static extern ColorDistribution Internal_getcolorOverLifetime(IntPtr thisPtr);
  62. [MethodImpl(MethodImplOptions.InternalCall)]
  63. private static extern void Internal_setcolorOverLifetime(IntPtr thisPtr, ColorDistribution value);
  64. [MethodImpl(MethodImplOptions.InternalCall)]
  65. private static extern Vector2Distribution Internal_getsizeScaleOverLifetime(IntPtr thisPtr);
  66. [MethodImpl(MethodImplOptions.InternalCall)]
  67. private static extern void Internal_setsizeScaleOverLifetime(IntPtr thisPtr, Vector2Distribution value);
  68. [MethodImpl(MethodImplOptions.InternalCall)]
  69. private static extern void Internal_getacceleration(IntPtr thisPtr, out Vector3 __output);
  70. [MethodImpl(MethodImplOptions.InternalCall)]
  71. private static extern void Internal_setacceleration(IntPtr thisPtr, ref Vector3 value);
  72. [MethodImpl(MethodImplOptions.InternalCall)]
  73. private static extern float Internal_getdrag(IntPtr thisPtr);
  74. [MethodImpl(MethodImplOptions.InternalCall)]
  75. private static extern void Internal_setdrag(IntPtr thisPtr, float value);
  76. [MethodImpl(MethodImplOptions.InternalCall)]
  77. private static extern ParticleDepthCollisionSettings Internal_getdepthCollision(IntPtr thisPtr);
  78. [MethodImpl(MethodImplOptions.InternalCall)]
  79. private static extern void Internal_setdepthCollision(IntPtr thisPtr, ParticleDepthCollisionSettings value);
  80. }
  81. /** @} */
  82. }