GLTFAccessor
继承: Resource
< RefCounted
< Object
Represents a glTF accessor.
描述
GLTFAccessor is a data structure representing a glTF accessor
that would be found in the "accessors"
array. A buffer is a blob of binary data. A buffer view is a slice of a buffer. An accessor is a typed interpretation of the data in a buffer view.
Most custom data stored in glTF does not need accessors, only buffer views (see GLTFBufferView
). Accessors are for more advanced use cases such as interleaved mesh data encoded for the GPU.
属性
枚举
enum GLTFAccessorType:
GLTFAccessorType TYPE_SCALAR = 0
Accessor type "SCALAR". For the glTF object model, this can be used to map to a single float, int, or bool value, or a float array.
GLTFAccessorType TYPE_VEC2 = 1
Accessor type "VEC2". For the glTF object model, this maps to "float2", represented in the glTF JSON as an array of two floats.
GLTFAccessorType TYPE_VEC3 = 2
Accessor type "VEC3". For the glTF object model, this maps to "float3", represented in the glTF JSON as an array of three floats.
GLTFAccessorType TYPE_VEC4 = 3
Accessor type "VEC4". For the glTF object model, this maps to "float4", represented in the glTF JSON as an array of four floats.
GLTFAccessorType TYPE_MAT2 = 4
Accessor type "MAT2". For the glTF object model, this maps to "float2x2", represented in the glTF JSON as an array of four floats.
GLTFAccessorType TYPE_MAT3 = 5
Accessor type "MAT3". For the glTF object model, this maps to "float3x3", represented in the glTF JSON as an array of nine floats.
GLTFAccessorType TYPE_MAT4 = 6
Accessor type "MAT4". For the glTF object model, this maps to "float4x4", represented in the glTF JSON as an array of sixteen floats.
enum GLTFComponentType:
GLTFComponentType COMPONENT_TYPE_NONE = 0
Component type "NONE". This is not a valid component type, and is used to indicate that the component type is not set.
GLTFComponentType COMPONENT_TYPE_SIGNED_BYTE = 5120
Component type "BYTE". The value is 0x1400
which comes from OpenGL. This indicates data is stored in 1-byte or 8-bit signed integers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_UNSIGNED_BYTE = 5121
Component type "UNSIGNED_BYTE". The value is 0x1401
which comes from OpenGL. This indicates data is stored in 1-byte or 8-bit unsigned integers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_SIGNED_SHORT = 5122
Component type "SHORT". The value is 0x1402
which comes from OpenGL. This indicates data is stored in 2-byte or 16-bit signed integers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_UNSIGNED_SHORT = 5123
Component type "UNSIGNED_SHORT". The value is 0x1403
which comes from OpenGL. This indicates data is stored in 2-byte or 16-bit unsigned integers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_SIGNED_INT = 5124
Component type "INT". The value is 0x1404
which comes from OpenGL. This indicates data is stored in 4-byte or 32-bit signed integers. This is NOT a core part of the glTF specification, and may not be supported by all glTF importers. May be used by some extensions including KHR_interactivity
.
GLTFComponentType COMPONENT_TYPE_UNSIGNED_INT = 5125
Component type "UNSIGNED_INT". The value is 0x1405
which comes from OpenGL. This indicates data is stored in 4-byte or 32-bit unsigned integers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_SINGLE_FLOAT = 5126
Component type "FLOAT". The value is 0x1406
which comes from OpenGL. This indicates data is stored in 4-byte or 32-bit floating point numbers. This is a core part of the glTF specification.
GLTFComponentType COMPONENT_TYPE_DOUBLE_FLOAT = 5130
Component type "DOUBLE". The value is 0x140A
which comes from OpenGL. This indicates data is stored in 8-byte or 64-bit floating point numbers. This is NOT a core part of the glTF specification, and may not be supported by all glTF importers. May be used by some extensions including KHR_interactivity
.
GLTFComponentType COMPONENT_TYPE_HALF_FLOAT = 5131
Component type "HALF_FLOAT". The value is 0x140B
which comes from OpenGL. This indicates data is stored in 2-byte or 16-bit floating point numbers. This is NOT a core part of the glTF specification, and may not be supported by all glTF importers. May be used by some extensions including KHR_interactivity
.
GLTFComponentType COMPONENT_TYPE_SIGNED_LONG = 5134
Component type "LONG". The value is 0x140E
which comes from OpenGL. This indicates data is stored in 8-byte or 64-bit signed integers. This is NOT a core part of the glTF specification, and may not be supported by all glTF importers. May be used by some extensions including KHR_interactivity
.
GLTFComponentType COMPONENT_TYPE_UNSIGNED_LONG = 5135
Component type "UNSIGNED_LONG". The value is 0x140F
which comes from OpenGL. This indicates data is stored in 8-byte or 64-bit unsigned integers. This is NOT a core part of the glTF specification, and may not be supported by all glTF importers. May be used by some extensions including KHR_interactivity
.
属性说明
GLTFAccessorType accessor_type = 0
void
set_accessor_type ( value: GLTFAccessorType )- GLTFAccessorType get_accessor_type ( )
The glTF accessor type as an enum. Possible values are 0 for "SCALAR", 1 for "VEC2", 2 for "VEC3", 3 for "VEC4", 4 for "MAT2", 5 for "MAT3", and 6 for "MAT4".
int
buffer_view = -1
The index of the buffer view this accessor is referencing. If -1
, this accessor is not referencing any buffer view.
int
byte_offset = 0
The offset relative to the start of the buffer view in bytes.
int
component_type = 0
The glTF component type as an enum. See GLTFComponentType for possible values. Within the core glTF specification, a value of 5125 or "UNSIGNED_INT" must not be used for any accessor that is not referenced by mesh.primitive.indices.
int
count = 0
The number of elements referenced by this accessor.
PackedFloat64Array
max = PackedFloat64Array()
void
set_max ( value:PackedFloat64Array
)PackedFloat64Array
get_max ( )
Maximum value of each component in this accessor.
PackedFloat64Array
min = PackedFloat64Array()
void
set_min ( value:PackedFloat64Array
)PackedFloat64Array
get_min ( )
Minimum value of each component in this accessor.
bool
normalized = false
Specifies whether integer data values are normalized before usage.
int
sparse_count = 0
Number of deviating accessor values stored in the sparse array.
int
sparse_indices_buffer_view = 0
The index of the buffer view with sparse indices. The referenced buffer view MUST NOT have its target or byteStride properties defined. The buffer view and the optional byteOffset MUST be aligned to the componentType byte length.
int
sparse_indices_byte_offset = 0
The offset relative to the start of the buffer view in bytes.
int
sparse_indices_component_type = 0
The indices component data type as an enum. Possible values are 5121 for "UNSIGNED_BYTE", 5123 for "UNSIGNED_SHORT", and 5125 for "UNSIGNED_INT".
int
sparse_values_buffer_view = 0
The index of the bufferView with sparse values. The referenced buffer view MUST NOT have its target or byteStride properties defined.
int
sparse_values_byte_offset = 0
The offset relative to the start of the bufferView in bytes.
int
type
已弃用: Use accessor_type
instead.
The glTF accessor type as an enum. Use accessor_type
instead.
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。