BabylonTexture.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. using System.Runtime.Serialization;
  2. namespace BabylonExport.Entities
  3. {
  4. [DataContract]
  5. public class BabylonTexture
  6. {
  7. public enum AddressMode
  8. {
  9. CLAMP_ADDRESSMODE = 0,
  10. WRAP_ADDRESSMODE = 1,
  11. MIRROR_ADDRESSMODE = 2
  12. }
  13. public enum SamplingMode
  14. {
  15. // Constants
  16. NEAREST_NEAREST_MIPLINEAR = 1, // nearest is mag = nearest and min = nearest and mip = linear
  17. LINEAR_LINEAR_MIPNEAREST = 2, // Bilinear is mag = linear and min = linear and mip = nearest
  18. LINEAR_LINEAR_MIPLINEAR = 3, // Trilinear is mag = linear and min = linear and mip = linear
  19. NEAREST_NEAREST_MIPNEAREST = 4,
  20. NEAREST_LINEAR_MIPNEAREST = 5,
  21. NEAREST_LINEAR_MIPLINEAR = 6,
  22. NEAREST_LINEAR = 7,
  23. NEAREST_NEAREST = 8,
  24. LINEAR_NEAREST_MIPNEAREST = 9,
  25. LINEAR_NEAREST_MIPLINEAR = 10,
  26. LINEAR_LINEAR = 11,
  27. LINEAR_NEAREST = 12
  28. }
  29. [DataMember]
  30. public string name { get; set; }
  31. [DataMember]
  32. public float level { get; set; }
  33. [DataMember]
  34. public bool hasAlpha { get; set; }
  35. [DataMember]
  36. public bool getAlphaFromRGB { get; set; }
  37. [DataMember]
  38. public int coordinatesMode { get; set; }
  39. [DataMember]
  40. public bool isCube { get; set; }
  41. [DataMember]
  42. public float uOffset { get; set; }
  43. [DataMember]
  44. public float vOffset { get; set; }
  45. [DataMember]
  46. public float uScale { get; set; }
  47. [DataMember]
  48. public float vScale { get; set; }
  49. [DataMember]
  50. public float uAng { get; set; }
  51. [DataMember]
  52. public float vAng { get; set; }
  53. [DataMember]
  54. public float wAng { get; set; }
  55. [DataMember]
  56. public AddressMode wrapU { get; set; }
  57. [DataMember]
  58. public AddressMode wrapV { get; set; }
  59. [DataMember]
  60. public int coordinatesIndex { get; set; }
  61. [DataMember]
  62. public bool isRenderTarget { get; set; }
  63. [DataMember]
  64. public int renderTargetSize { get; set; }
  65. [DataMember]
  66. public float[] mirrorPlane { get; set; }
  67. [DataMember]
  68. public string[] renderList { get; set; }
  69. [DataMember]
  70. public BabylonAnimation[] animations { get; set; }
  71. [DataMember]
  72. public string[] extensions { get; set; }
  73. [DataMember]
  74. public SamplingMode samplingMode { get; set; }
  75. public BabylonTexture()
  76. {
  77. level = 1.0f;
  78. uOffset = 0;
  79. vOffset = 0;
  80. uScale = 1.0f;
  81. vScale = 1.0f;
  82. uAng = 0;
  83. vAng = 0;
  84. wAng = 0;
  85. wrapU = AddressMode.WRAP_ADDRESSMODE;
  86. wrapV = AddressMode.WRAP_ADDRESSMODE;
  87. hasAlpha = false;
  88. coordinatesIndex = 0;
  89. samplingMode = SamplingMode.LINEAR_LINEAR_MIPLINEAR;
  90. }
  91. }
  92. }