1 module sbylib.wrapper.assimp.constants;
2 
3 import bindbc.assimp.types;
4 
5 enum ImporterFlag {
6     SupportTextFlavour = aiImporterFlags.SupportTextFlavour,
7     SupportBinaryFlavour = aiImporterFlags.SupportBinaryFlavour,
8     SupportCompressedFlavour = aiImporterFlags.SupportCompressedFlavour,
9     LimitedSupport = aiImporterFlags.LimitedSupport,
10     Experimental = aiImporterFlags.Experimental,
11 }
12 
13 enum PostProcessFlag {
14     None = 0,
15     CalcTangentSpace = aiPostProcessSteps.CalcTangentSpace,
16     JoinIdenticalVertices = aiPostProcessSteps.JoinIdenticalVertices,
17     MakeLeftHanded = aiPostProcessSteps.MakeLeftHanded,
18     Triangulate = aiPostProcessSteps.Triangulate,
19     RemoveComponent = aiPostProcessSteps.RemoveComponent,
20     GenNormals = aiPostProcessSteps.GenNormals,
21     GenSmoothNormals = aiPostProcessSteps.GenSmoothNormals,
22     SplitLargeMeshes = aiPostProcessSteps.SplitLargeMeshes,
23     PreTransformVertices = aiPostProcessSteps.PreTransformVertices,
24     LimitBoneWeights = aiPostProcessSteps.LimitBoneWeights,
25     ValidateDataStructure = aiPostProcessSteps.ValidateDataStructure,
26     ImproveCacheLocality = aiPostProcessSteps.ImproveCacheLocality,
27     RemoveRedundantMaterials = aiPostProcessSteps.RemoveRedundantMaterials,
28     FixInFacingNormals = aiPostProcessSteps.FixInfacingNormals,
29     SortByPType = aiPostProcessSteps.SortByPType,
30     FindDegenerates = aiPostProcessSteps.FindDegenerates,
31     FindInvalidData = aiPostProcessSteps.FindInvalidData,
32     GenUVCoords = aiPostProcessSteps.GenUVCoords,
33     TransformUVCoords = aiPostProcessSteps.TransformUVCoords,
34     FindInstances = aiPostProcessSteps.FindInstances,
35     OptimizeMeshes = aiPostProcessSteps.OptimizeMeshes,
36     OptimizeGraph = aiPostProcessSteps.OptimizeGraph,
37     FlipUVs = aiPostProcessSteps.FlipUVs,
38     FlipWindingOrder = aiPostProcessSteps.FlipWindingOrder,
39     SplitByBoneCount = aiPostProcessSteps.SplitByBoneCount,
40     Debone = aiPostProcessSteps.Debone,
41     ConvertToLeftHanded = aiPostProcessSteps.ConvertToLeftHanded,
42     TargetRealtime_Fast = aiPostProcessStepsPreset.TargetRealtime_Fast,
43     TargetRealtime_Quality = aiPostProcessStepsPreset.TargetRealtime_Quality,
44     TargetRealtime_MaxQuality = aiPostProcessStepsPreset.TargetRealtime_MaxQuality
45 }
46 
47 enum DefaultLogStream {
48     File = aiDefaultLogStream.FILE,
49     Stdout = aiDefaultLogStream.STDOUT,
50     Stderr = aiDefaultLogStream.STDERR,
51     Debugger = aiDefaultLogStream.DEBUGGER,
52 }
53 
54 enum MetaDataType {
55     Bool = aiMetadataType.BOOL,
56     Int = aiMetadataType.INT32,
57     Ulong = aiMetadataType.UINT64,
58     Float = aiMetadataType.FLOAT,
59     String = aiMetadataType.STRING,
60     Vec3 = aiMetadataType.VECTOR3D,
61 }
62 
63 enum PrimitiveType {
64     Point = aiPrimitiveType.POINT,
65     Line = aiPrimitiveType.LINE,
66     Triangle = aiPrimitiveType.TRIANGLE,
67     Polygon = aiPrimitiveType.POLYGON,
68 }
69 
70 enum PropertyTypeInfo {
71     Float = aiPropertyTypeInfo.Float,
72     String = aiPropertyTypeInfo.String,
73     Integer = aiPropertyTypeInfo.Integer,
74     Buffer = aiPropertyTypeInfo.Buffer,
75 }
76 
77 enum AnimBehaviour {
78     Default = aiAnimBehaviour.DEFAULT,
79     Constant = aiAnimBehaviour.CONSTANT,
80     Linear = aiAnimBehaviour.LINEAR,
81     Repeat = aiAnimBehaviour.REPEAT,
82 }
83 
84 enum LightSourceType {
85     Undefined = aiLightSourceType.UNDEFINED,
86     Diredctional = aiLightSourceType.DIRECTIONAL,
87     Point = aiLightSourceType.POINT,
88     Spot = aiLightSourceType.SPOT,
89     Ambient = aiLightSourceType.AMBIENT,
90     Area = aiLightSourceType.AREA,
91 }