BabylonStandardMaterial.cs 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System.Runtime.Serialization;
  2. namespace BabylonExport.Entities
  3. {
  4. [DataContract]
  5. public class BabylonStandardMaterial: BabylonMaterial
  6. {
  7. [DataMember]
  8. public string customType { get; private set; }
  9. [DataMember]
  10. public float[] ambient { get; set; }
  11. [DataMember]
  12. public float[] diffuse { get; set; }
  13. [DataMember]
  14. public float[] specular { get; set; }
  15. [DataMember]
  16. public float[] emissive { get; set; }
  17. [DataMember]
  18. public float specularPower { get; set; }
  19. [DataMember]
  20. public BabylonTexture diffuseTexture { get; set; }
  21. [DataMember]
  22. public BabylonFresnelParameters diffuseFresnelParameters { get; set; }
  23. [DataMember]
  24. public BabylonTexture ambientTexture { get; set; }
  25. [DataMember]
  26. public BabylonTexture opacityTexture { get; set; }
  27. [DataMember]
  28. public BabylonFresnelParameters opacityFresnelParameters { get; set; }
  29. [DataMember]
  30. public BabylonTexture reflectionTexture { get; set; }
  31. [DataMember]
  32. public BabylonFresnelParameters reflectionFresnelParameters { get; set; }
  33. [DataMember]
  34. public BabylonTexture emissiveTexture { get; set; }
  35. [DataMember]
  36. public BabylonTexture lightmapTexture { get; set; }
  37. [DataMember]
  38. public bool useLightmapAsShadowmap { get; set; }
  39. [DataMember]
  40. public BabylonFresnelParameters emissiveFresnelParameters { get; set; }
  41. [DataMember]
  42. public BabylonTexture specularTexture { get; set; }
  43. [DataMember]
  44. public BabylonTexture bumpTexture { get; set; }
  45. [DataMember]
  46. public bool useSpecularOverAlpha { get; set; }
  47. [DataMember]
  48. public bool disableLighting { get; set; }
  49. [DataMember]
  50. public bool useEmissiveAsIllumination { get; set; }
  51. [DataMember]
  52. public bool linkEmissiveWithDiffuse { get; set; }
  53. [DataMember]
  54. public bool twoSidedLighting { get; set; }
  55. [DataMember]
  56. public int maxSimultaneousLights { get; set; }
  57. [DataMember]
  58. public bool useGlossinessFromSpecularMapAlpha { get; set; }
  59. public BabylonStandardMaterial() : base()
  60. {
  61. SetCustomType("BABYLON.StandardMaterial");
  62. ambient = new[] {1.0f, 1.0f, 1.0f};
  63. diffuse = new[] { 1.0f, 1.0f, 1.0f };
  64. specular = new[] { 1.0f, 1.0f, 1.0f };
  65. emissive = new[] { 0f, 0f, 0f };
  66. specularPower = 64;
  67. maxSimultaneousLights = 4;
  68. useSpecularOverAlpha = true;
  69. useEmissiveAsIllumination = false;
  70. linkEmissiveWithDiffuse = false;
  71. useGlossinessFromSpecularMapAlpha = false;
  72. }
  73. public void SetCustomType(string type)
  74. {
  75. customType = type;
  76. }
  77. }
  78. }