GLTFPrimitive.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using System;
  2. using System.Collections.Generic;
  3. using Newtonsoft.Json;
  4. using UnityEngine.Scripting;
  5. namespace Siccity.GLTFUtility {
  6. // https://github.com/KhronosGroup/glTF/blob/master/specification/2.0/README.md#primitive
  7. [Preserve] public class GLTFPrimitive {
  8. [JsonProperty(Required = Required.Always)] public GLTFAttributes attributes;
  9. /// <summary> Rendering mode</summary>
  10. public RenderingMode mode = RenderingMode.TRIANGLES;
  11. public int? indices;
  12. public int? material;
  13. /// <summary> Morph targets </summary>
  14. public List<GLTFAttributes> targets;
  15. public Extensions extensions;
  16. [Preserve] public class GLTFAttributes {
  17. public int? POSITION;
  18. public int? NORMAL;
  19. public int? TANGENT;
  20. public int? COLOR_0;
  21. public int? TEXCOORD_0;
  22. public int? TEXCOORD_1;
  23. public int? TEXCOORD_2;
  24. public int? TEXCOORD_3;
  25. public int? TEXCOORD_4;
  26. public int? TEXCOORD_5;
  27. public int? TEXCOORD_6;
  28. public int? TEXCOORD_7;
  29. public int? JOINTS_0;
  30. public int? JOINTS_1;
  31. public int? JOINTS_2;
  32. public int? JOINTS_3;
  33. public int? WEIGHTS_0;
  34. public int? WEIGHTS_1;
  35. public int? WEIGHTS_2;
  36. public int? WEIGHTS_3;
  37. }
  38. [Preserve] public class Extensions {
  39. public DracoMeshCompression KHR_draco_mesh_compression;
  40. }
  41. [Preserve] public class DracoMeshCompression {
  42. public int bufferView = 0;
  43. public GLTFAttributes attributes;
  44. }
  45. }
  46. }