BabylonMesh.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. using System.Runtime.Serialization;
  2. namespace BabylonExport.Entities
  3. {
  4. [DataContract]
  5. public class BabylonMesh : BabylonAbstractMesh
  6. {
  7. [DataMember]
  8. public string materialId { get; set; }
  9. [DataMember]
  10. public bool isEnabled { get; set; }
  11. [DataMember]
  12. public bool isVisible { get; set; }
  13. [DataMember]
  14. public bool pickable { get; set; }
  15. [DataMember]
  16. public float[] pivotMatrix { get; set; }
  17. [DataMember]
  18. public float[] positions { get; set; }
  19. [DataMember]
  20. public float[] normals { get; set; }
  21. [DataMember]
  22. public float[] uvs { get; set; }
  23. [DataMember]
  24. public float[] uvs2 { get; set; }
  25. [DataMember]
  26. public float[] colors { get; set; }
  27. [DataMember]
  28. public bool hasVertexAlpha { get; set; }
  29. [DataMember]
  30. public int[] matricesIndices { get; set; }
  31. [DataMember]
  32. public float[] matricesWeights { get; set; }
  33. [DataMember]
  34. public int[] matricesIndicesExtra { get; set; }
  35. [DataMember]
  36. public float[] matricesWeightsExtra { get; set; }
  37. [DataMember]
  38. public int[] indices { get; set; }
  39. [DataMember]
  40. public bool checkCollisions { get; set; }
  41. [DataMember]
  42. public bool receiveShadows { get; set; }
  43. [DataMember]
  44. public bool infiniteDistance { get; set; }
  45. [DataMember]
  46. public int billboardMode { get; set; }
  47. [DataMember]
  48. public float visibility { get; set; }
  49. [DataMember]
  50. public BabylonSubMesh[] subMeshes { get; set; }
  51. [DataMember]
  52. public BabylonAbstractMesh[] instances { get; set; }
  53. [DataMember]
  54. public int skeletonId { get; set; }
  55. [DataMember]
  56. public int numBoneInfluencers { get; set; }
  57. [DataMember]
  58. public bool showBoundingBox { get; set; }
  59. [DataMember]
  60. public bool showSubMeshesBoundingBox { get; set; }
  61. [DataMember]
  62. public bool applyFog { get; set; }
  63. [DataMember]
  64. public int alphaIndex { get; set; }
  65. [DataMember]
  66. public int physicsImpostor { get; set; }
  67. [DataMember]
  68. public float physicsMass { get; set; }
  69. [DataMember]
  70. public float physicsFriction { get; set; }
  71. [DataMember]
  72. public float physicsRestitution { get; set; }
  73. [DataMember]
  74. public object metadata { get; set; }
  75. [DataMember]
  76. public string tags { get; set; }
  77. [DataMember(EmitDefaultValue = false)]
  78. public int? morphTargetManagerId { get; set; }
  79. public bool isDummy = false;
  80. public BabylonMesh()
  81. {
  82. isEnabled = true;
  83. isVisible = true;
  84. position = new[] { 0f, 0f, 0f };
  85. rotation = new[] { 0f, 0f, 0f };
  86. scaling = new[] { 1f, 1f, 1f };
  87. billboardMode = 0;
  88. visibility = 1.0f;
  89. skeletonId = -1;
  90. pickable = true;
  91. numBoneInfluencers = 4;
  92. }
  93. }
  94. }