Lightweight FBX Importer
Search Results for

    Show / Hide Table of Contents

    Namespace ufbxWrapper

    Classes

    ufbx

    Structs

    ufbx.ufbx_allocator

    Allocator callbacks and user context NOTE: The allocator will be stored to the loaded scene and will be called again from ufbx_free_scene() so make sure user outlives that! You can use free_allocator_fn() to free the allocator yourself.

    ufbx.ufbx_allocator_opts

    ufbx.ufbx_anim

    Animation descriptor used for evaluating animation. Usually obtained from ufbx_scene via either global animation ufbx_scene.anim, per-stack animation ufbx_anim_stack.anim or per-layer animation ufbx_anim_layer.anim. For advanced usage you can use ufbx_create_anim() to create animation descriptors with custom layers, property overrides, special flags, etc.

    ufbx.ufbx_anim_curve

    ufbx.ufbx_anim_curve._anonymous_1_struct

    ufbx.ufbx_anim_curve._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_anim_curve_list

    ufbx.ufbx_anim_layer

    ufbx.ufbx_anim_layer._anonymous_1_struct

    ufbx.ufbx_anim_layer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_anim_layer._element_id_bitmask_struct

    ufbx.ufbx_anim_layer_list

    ufbx.ufbx_anim_opts

    ufbx.ufbx_anim_prop

    ufbx.ufbx_anim_prop_list

    ufbx.ufbx_anim_stack

    ufbx.ufbx_anim_stack._anonymous_1_struct

    ufbx.ufbx_anim_stack._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_anim_stack_list

    ufbx.ufbx_anim_value

    ufbx.ufbx_anim_value._anonymous_1_struct

    ufbx.ufbx_anim_value._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_anim_value.curves_struct

    ufbx.ufbx_anim_value_list

    ufbx.ufbx_application

    ufbx.ufbx_audio_clip

    ufbx.ufbx_audio_clip._anonymous_1_struct

    ufbx.ufbx_audio_clip._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_audio_clip_list

    ufbx.ufbx_audio_layer

    -- Audio

    ufbx.ufbx_audio_layer._anonymous_1_struct

    ufbx.ufbx_audio_layer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_audio_layer_list

    ufbx.ufbx_bake_opts

    ufbx.ufbx_baked_anim

    Animation baked into linearly interpolated keyframes. See ufbx_bake_anim().

    ufbx.ufbx_baked_anim_metadata

    ufbx.ufbx_baked_element

    Baked property animation for a single element.

    ufbx.ufbx_baked_element_list

    ufbx.ufbx_baked_node

    Baked transform animation for a single node.

    ufbx.ufbx_baked_node_list

    ufbx.ufbx_baked_prop

    Baked property animation.

    ufbx.ufbx_baked_prop_list

    ufbx.ufbx_baked_quat

    ufbx.ufbx_baked_quat_list

    ufbx.ufbx_baked_vec3

    ufbx.ufbx_baked_vec3_list

    ufbx.ufbx_blend_channel

    Blend channel consists of multiple morph-key targets that are interpolated. In simple cases there will be only one keyframe that is the target shape.

    ufbx.ufbx_blend_channel._anonymous_1_struct

    ufbx.ufbx_blend_channel._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_blend_channel_list

    ufbx.ufbx_blend_deformer

    Blend shape deformer can contain multiple channels (think of sliders between morphs) that may optionally have in-between keyframes.

    ufbx.ufbx_blend_deformer._anonymous_1_struct

    ufbx.ufbx_blend_deformer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_blend_deformer_list

    ufbx.ufbx_blend_keyframe

    Blend shape associated with a target weight in a series of morphs

    ufbx.ufbx_blend_keyframe_list

    ufbx.ufbx_blend_shape

    Blend shape target containing the actual vertex offsets

    ufbx.ufbx_blend_shape._anonymous_1_struct

    ufbx.ufbx_blend_shape._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_blend_shape_list

    ufbx.ufbx_blob

    Opaque byte buffer blob

    ufbx.ufbx_bone

    Bone attached to a ufbx_node, provides the logical length of the bone but most interesting information is directly in ufbx_node.

    ufbx.ufbx_bone._anonymous_1_struct

    ufbx.ufbx_bone._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_bone_list

    ufbx.ufbx_bone_pose

    -- Miscellaneous

    ufbx.ufbx_bone_pose_list

    ufbx.ufbx_bool_list

    ufbx.ufbx_cache_channel

    ufbx.ufbx_cache_channel_list

    ufbx.ufbx_cache_deformer

    ufbx.ufbx_cache_deformer._anonymous_1_struct

    ufbx.ufbx_cache_deformer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_cache_deformer_list

    ufbx.ufbx_cache_file

    ufbx.ufbx_cache_file._anonymous_1_struct

    ufbx.ufbx_cache_file._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_cache_file_list

    ufbx.ufbx_cache_frame

    ufbx.ufbx_cache_frame_list

    ufbx.ufbx_camera

    Camera attached to a ufbx_node

    ufbx.ufbx_camera._anonymous_1_struct

    ufbx.ufbx_camera._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_camera_list

    ufbx.ufbx_camera_switcher

    ufbx.ufbx_camera_switcher._anonymous_1_struct

    ufbx.ufbx_camera_switcher._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_camera_switcher_list

    ufbx.ufbx_character

    -- Constraints

    ufbx.ufbx_character._anonymous_1_struct

    ufbx.ufbx_character._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_character_list

    ufbx.ufbx_close_memory_cb

    ufbx.ufbx_color_set

    Vertex color set/layer

    ufbx.ufbx_color_set_list

    ufbx.ufbx_connection

    Connection between two elements. Source and destination are somewhat arbitrary but the destination is often the "container" like a parent node or mesh containing a deformer.

    ufbx.ufbx_connection_list

    ufbx.ufbx_const_prop_override_desc_list

    ufbx.ufbx_const_real_list

    ufbx.ufbx_const_transform_override_list

    ufbx.ufbx_const_uint32_list

    ufbx.ufbx_constraint

    ufbx.ufbx_constraint._anonymous_1_struct

    ufbx.ufbx_constraint._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_constraint.constrain_rotation_struct

    ufbx.ufbx_constraint.constrain_scale_struct

    ufbx.ufbx_constraint.constrain_translation_struct

    ufbx.ufbx_constraint_list

    ufbx.ufbx_constraint_target

    Target to follow with a constraint

    ufbx.ufbx_constraint_target_list

    ufbx.ufbx_coordinate_axes

    Coordinate axes the scene is represented in. NOTE: front is the opposite from forward!

    ufbx.ufbx_curve_point

    -- Curves

    ufbx.ufbx_deleter

    ufbx.ufbx_display_layer

    Collection of nodes to hide/freeze

    ufbx.ufbx_display_layer._anonymous_1_struct

    ufbx.ufbx_display_layer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_display_layer_list

    ufbx.ufbx_dom_node

    ufbx.ufbx_dom_node_list

    ufbx.ufbx_dom_value

    ufbx.ufbx_dom_value_list

    ufbx.ufbx_edge

    Edge between two indices in a mesh

    ufbx.ufbx_edge._anonymous_1_struct

    ufbx.ufbx_edge._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_edge._anonymous_1_struct.indices_struct

    ufbx.ufbx_edge_list

    ufbx.ufbx_element

    Element "base-class" common to each element. Some fields (like connections_src) are advanced and not visible in the specialized element structs. NOTE: The element_id value is consistent when loading the same file, but re-exporting the file will invalidate them.

    ufbx.ufbx_element_list

    ufbx.ufbx_empty

    Empty/NULL/locator connected to a node, actual details in ufbx_node

    ufbx.ufbx_empty._anonymous_1_struct

    ufbx.ufbx_empty._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_empty_list

    ufbx.ufbx_error

    Error description with detailed stack trace HINT: You can use ufbx_format_error() for formatting the error

    ufbx.ufbx_error.info_struct

    ufbx.ufbx_error.stack_struct

    ufbx.ufbx_error_frame

    Detailed error stack frame. NOTE: You must compile ufbx.c with UFBX_ENABLE_ERROR_STACK to enable the error stack.

    ufbx.ufbx_evaluate_opts

    Options for ufbx_evaluate_scene() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_extrapolation

    ufbx.ufbx_face

    Polygonal face with arbitrary number vertices, a single face contains a contiguous range of mesh indices, eg. {5,3} would have indices 5, 6, 7 NOTE: num_indices maybe less than 3 in which case the face is invalid! [TODO #23: should probably remove the bad faces at load time]

    ufbx.ufbx_face_group

    ufbx.ufbx_face_group_list

    ufbx.ufbx_face_list

    ufbx.ufbx_geometry_cache

    ufbx.ufbx_geometry_cache_data_opts

    Options for ufbx_read_geometry_cache_TYPE() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_geometry_cache_opts

    Options for ufbx_load_geometry_cache() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_inflate_input

    Source data/stream to decompress with ufbx_inflate()

    ufbx.ufbx_inflate_retain

    Persistent data between ufbx_inflate() calls NOTE: You must set initialized to false, but data may be uninitialized

    ufbx.ufbx_inflate_retain.data_struct

    ufbx.ufbx_keyframe

    Single real value at a specified time, interpolation between two keyframes is determined by the interpolation field of the previous key. If interpolation == UFBX_INTERPOLATION_CUBIC the span is evaluated as a cubic bezier curve through the following points: (prev-time, prev-value) (prev-time + prev-right.dx, prev-value + prev-right.dy) (next-time - next-left.dx, next-value - next-left.dy) (next-time, next-value) HINT: You can use ufbx_evaluate_curve(ufbx_anim_curve *curve, double time) rather than trying to manually handle all the interpolation modes.

    ufbx.ufbx_keyframe_list

    ufbx.ufbx_light

    Light source attached to a ufbx_node

    ufbx.ufbx_light._anonymous_1_struct

    ufbx.ufbx_light._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_light_list

    ufbx.ufbx_line_curve

    ufbx.ufbx_line_curve._anonymous_1_struct

    ufbx.ufbx_line_curve._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_line_curve_list

    ufbx.ufbx_line_segment

    Segment of a ufbx_line_curve, indices refer to ufbx_line_curve.point_indices[]

    ufbx.ufbx_line_segment_list

    ufbx.ufbx_load_opts

    Options for ufbx_load_file/memory/stream/stdio() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_lod_group

    Group of LOD (Level of Detail) levels for an object. The actual LOD models are defined in the parent ufbx_node.children.

    ufbx.ufbx_lod_group._anonymous_1_struct

    ufbx.ufbx_lod_group._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_lod_group_list

    ufbx.ufbx_lod_level

    Single LOD level within an LOD group. Specifies properties of the Nth child of the node containing the LOD group.

    ufbx.ufbx_lod_level_list

    ufbx.ufbx_marker

    Tracking marker for effectors

    ufbx.ufbx_marker._anonymous_1_struct

    ufbx.ufbx_marker._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_marker_list

    ufbx.ufbx_material

    Surface material properties such as color, roughness, etc. Each property may be optionally bound to an ufbx_texture.

    ufbx.ufbx_material._anonymous_1_struct

    ufbx.ufbx_material._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_material_fbx_maps

    ufbx.ufbx_material_fbx_maps._anonymous_1_struct

    ufbx.ufbx_material_fbx_maps._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_material_fbx_maps._anonymous_1_struct.maps_struct

    ufbx.ufbx_material_feature_info

    Material feature

    ufbx.ufbx_material_features

    ufbx.ufbx_material_features._anonymous_1_struct

    ufbx.ufbx_material_features._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_material_features._anonymous_1_struct.features_struct

    ufbx.ufbx_material_list

    ufbx.ufbx_material_map

    Material property, either specified with a constant value or a mapped texture

    ufbx.ufbx_material_map._anonymous_1_struct

    ufbx.ufbx_material_pbr_maps

    ufbx.ufbx_material_pbr_maps._anonymous_1_struct

    ufbx.ufbx_material_pbr_maps._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_material_pbr_maps._anonymous_1_struct.maps_struct

    ufbx.ufbx_material_texture

    Texture attached to an FBX property

    ufbx.ufbx_material_texture_list

    ufbx.ufbx_matrix

    4x3 matrix encoding an affine transformation. cols[0..2] are the X/Y/Z basis vectors, cols[3] is the translation

    ufbx.ufbx_matrix._anonymous_1_struct

    ufbx.ufbx_matrix._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_matrix._anonymous_1_struct.cols_struct

    ufbx.ufbx_matrix._anonymous_1_struct.v_struct

    ufbx.ufbx_mesh

    Polygonal mesh geometry. Example mesh with two triangles (x, z) and a quad (y). The faces have a constant UV coordinate x/y/z. The vertices have per vertex normals that point up/down. ^ ^ ^ A---B-----C |x / /| | / y / | |/ / z| D-----E---F v v v Attributes may have multiple values within a single vertex, for example a UV seam vertex has two UV coordinates. Thus polygons are defined using an index that counts each corner of each face polygon. If an attribute is defined (even per-vertex) it will always have a valid indices array. {0,3} {3,4} {7,3} faces ({ index_begin, num_indices }) 0 1 2 3 4 5 6 7 8 9 index 0 1 3 1 2 4 3 2 4 5 vertex_indices[index] A B D B C E D C E F vertices[vertex_indices[index]] 0 0 1 0 0 1 1 0 1 1 vertex_normal.indices[index] ^ ^ v ^ ^ v v ^ v v vertex_normal.data[vertex_normal.indices[index]] 0 0 0 1 1 1 1 2 2 2 vertex_uv.indices[index] x x x y y y y z z z vertex_uv.data[vertex_uv.indices[index]] Vertex position can also be accessed uniformly through an accessor: 0 1 3 1 2 4 3 2 4 5 vertex_position.indices[index] A B D B C E D C E F vertex_position.data[vertex_position.indices[index]] Some geometry data is specified per logical vertex. Vertex positions are the only attribute that is guaranteed to be defined uniquely per vertex. Vertex attributes may be defined per vertex if unique_per_vertex == true. You can access the per-vertex values by first finding the first index that refers to the given vertex. 0 1 2 3 4 5 vertex A B C D E F vertices[vertex] 0 1 4 2 5 9 vertex_first_index[vertex] 0 0 0 1 1 1 vertex_normal.indices[vertex_first_index[vertex]] ^ ^ ^ v v v vertex_normal.data[vertex_normal.indices[vertex_first_index[vertex]]]

    ufbx.ufbx_mesh._anonymous_1_struct

    ufbx.ufbx_mesh._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_mesh_list

    ufbx.ufbx_mesh_part

    Subset of mesh faces used by a single material or group.

    ufbx.ufbx_mesh_part_list

    ufbx.ufbx_metadata

    Miscellaneous data related to the loaded file

    ufbx.ufbx_metadata.has_warning_struct

    ufbx.ufbx_metadata_object

    ufbx.ufbx_metadata_object._anonymous_1_struct

    ufbx.ufbx_metadata_object._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_metadata_object_list

    ufbx.ufbx_name_element

    -- Named elements

    ufbx.ufbx_name_element_list

    ufbx.ufbx_node

    Nodes form the scene transformation hierarchy and can contain attached elements such as meshes or lights. In normal cases a single ufbx_node contains only a single attached element, so using type/mesh/... is safe.

    ufbx.ufbx_node._anonymous_1_struct

    ufbx.ufbx_node._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_node_list

    ufbx.ufbx_nurbs_basis

    NURBS basis functions for an axis

    ufbx.ufbx_nurbs_curve

    ufbx.ufbx_nurbs_curve._anonymous_1_struct

    ufbx.ufbx_nurbs_curve._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_nurbs_curve_list

    ufbx.ufbx_nurbs_surface

    ufbx.ufbx_nurbs_surface._anonymous_1_struct

    ufbx.ufbx_nurbs_surface._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_nurbs_surface_list

    ufbx.ufbx_nurbs_trim_boundary

    ufbx.ufbx_nurbs_trim_boundary._anonymous_1_struct

    ufbx.ufbx_nurbs_trim_boundary._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_nurbs_trim_boundary_list

    ufbx.ufbx_nurbs_trim_surface

    ufbx.ufbx_nurbs_trim_surface._anonymous_1_struct

    ufbx.ufbx_nurbs_trim_surface._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_nurbs_trim_surface_list

    ufbx.ufbx_open_file_cb

    ufbx.ufbx_open_file_info

    ufbx.ufbx_open_file_opts

    Options for ufbx_open_file().

    ufbx.ufbx_open_memory_opts

    Options for ufbx_open_memory().

    ufbx.ufbx_panic

    ufbx.ufbx_panic.message_struct

    ufbx.ufbx_pose

    ufbx.ufbx_pose._anonymous_1_struct

    ufbx.ufbx_pose._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_pose_list

    ufbx.ufbx_procedural_geometry

    -- Node attributes (advanced)

    ufbx.ufbx_procedural_geometry._anonymous_1_struct

    ufbx.ufbx_procedural_geometry._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_procedural_geometry_list

    ufbx.ufbx_progress

    Loading progress information.

    ufbx.ufbx_progress_cb

    ufbx.ufbx_prop

    Single property with name/type/value.

    ufbx.ufbx_prop._anonymous_1_struct

    ufbx.ufbx_prop._anonymous_1_struct.value_real_arr_struct

    ufbx.ufbx_prop_list

    ufbx.ufbx_prop_override

    -- Animation

    ufbx.ufbx_prop_override_desc

    ufbx.ufbx_prop_override_list

    ufbx.ufbx_props

    List of alphabetically sorted properties with potential defaults. For animated objects in as scene from ufbx_evaluate_scene() this list only has the animated properties, the originals are stored under defaults.

    ufbx.ufbx_quat

    Quaternion

    ufbx.ufbx_quat._anonymous_1_struct

    ufbx.ufbx_quat._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_quat._anonymous_1_struct.v_struct

    ufbx.ufbx_real_list

    ufbx.ufbx_scene

    ufbx.ufbx_scene._anonymous_1_struct

    ufbx.ufbx_scene._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_scene._anonymous_1_struct.elements_by_type_struct

    ufbx.ufbx_scene_settings

    Global settings: Axes and time/unit scales

    ufbx.ufbx_selection_node

    Selection state of a node, potentially contains vertex/edge/face selection as well.

    ufbx.ufbx_selection_node._anonymous_1_struct

    ufbx.ufbx_selection_node._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_selection_node_list

    ufbx.ufbx_selection_set

    Named set of nodes/geometry features to select.

    ufbx.ufbx_selection_set._anonymous_1_struct

    ufbx.ufbx_selection_set._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_selection_set_list

    ufbx.ufbx_shader

    Shader specifies a shading model and contains ufbx_shader_binding elements that define how to interpret FBX properties in the shader.

    ufbx.ufbx_shader._anonymous_1_struct

    ufbx.ufbx_shader._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_shader_binding

    Shader binding table

    ufbx.ufbx_shader_binding._anonymous_1_struct

    ufbx.ufbx_shader_binding._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_shader_binding_list

    ufbx.ufbx_shader_list

    ufbx.ufbx_shader_prop_binding

    Binding from a material property to shader implementation

    ufbx.ufbx_shader_prop_binding_list

    ufbx.ufbx_shader_texture

    Texture that emulates a shader graph node. 3ds Max exports some materials as node graphs serialized to textures. ufbx can parse a small subset of these, as normal maps are often hidden behind some kind of bump node. NOTE: These encode a lot of details of 3ds Max internals, not recommended for direct use. HINT: ufbx_texture.file_textures[] contains a list of "real" textures that are connected to the ufbx_texture that is pretending to be a shader node.

    ufbx.ufbx_shader_texture_input

    Input to a shader texture, see ufbx_shader_texture.

    ufbx.ufbx_shader_texture_input._anonymous_1_struct

    ufbx.ufbx_shader_texture_input_list

    ufbx.ufbx_skin_cluster

    Cluster of vertices bound to a single bone.

    ufbx.ufbx_skin_cluster._anonymous_1_struct

    ufbx.ufbx_skin_cluster._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_skin_cluster_list

    ufbx.ufbx_skin_deformer

    Skin deformer specifies a binding between a logical set of bones (a skeleton) and a mesh. Each bone is represented by a ufbx_skin_cluster that contains the binding matrix and a ufbx_node *bone that has the current transformation.

    ufbx.ufbx_skin_deformer._anonymous_1_struct

    ufbx.ufbx_skin_deformer._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_skin_deformer_list

    ufbx.ufbx_skin_vertex

    Skin weight information for a single mesh vertex

    ufbx.ufbx_skin_vertex_list

    ufbx.ufbx_skin_weight

    Single per-vertex per-cluster weight, see ufbx_skin_vertex

    ufbx.ufbx_skin_weight_list

    ufbx.ufbx_stereo_camera

    ufbx.ufbx_stereo_camera._anonymous_1_struct

    ufbx.ufbx_stereo_camera._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_stereo_camera_list

    ufbx.ufbx_stream

    ufbx.ufbx_string

    Null-terminated UTF-8 encoded string within an FBX file

    ufbx.ufbx_string_list

    ufbx.ufbx_string_view

    ufbx.ufbx_subdivide_opts

    Options for ufbx_subdivide_mesh() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_subdivision_result

    ufbx.ufbx_subdivision_weight

    ufbx.ufbx_subdivision_weight_list

    ufbx.ufbx_subdivision_weight_range

    ufbx.ufbx_subdivision_weight_range_list

    ufbx.ufbx_surface_point

    ufbx.ufbx_tangent

    Tangent vector at a keyframe, may be split into left/right

    ufbx.ufbx_tessellate_curve_opts

    Options for ufbx_tessellate_nurbs_curve() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_tessellate_surface_opts

    Options for ufbx_tessellate_nurbs_surface() NOTE: Initialize to zero with { 0 } (C) or { } (C++)

    ufbx.ufbx_texture

    Texture that controls material appearance

    ufbx.ufbx_texture._anonymous_1_struct

    ufbx.ufbx_texture._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_texture_file

    Unique texture within the file.

    ufbx.ufbx_texture_file_list

    ufbx.ufbx_texture_layer

    Single layer in a layered texture

    ufbx.ufbx_texture_layer_list

    ufbx.ufbx_texture_list

    ufbx.ufbx_thread_opts

    Thread pool options.

    ufbx.ufbx_thread_pool

    Thread pool interface. See functions above for more information. Hypothetical example of calls, where UFBX_THREAD_GROUP_COUNT=2 for simplicity: run_fn(group=0, start_index=0, count=4) - t0 := threaded { ufbx_thread_pool_run_task(0..3) } run_fn(group=1, start_index=4, count=10) - t1 := threaded { ufbx_thread_pool_run_task(4..10) } wait_fn(group=0, max_index=4) - wait_threads(t0) run_fn(group=0, start_index=10, count=15) - t0 := threaded { ufbx_thread_pool_run_task(10..14) } wait_fn(group=1, max_index=10) - wait_threads(t1) wait_fn(group=0, max_index=15) - wait_threads(t0)

    ufbx.ufbx_thread_pool_info

    Thread pool creation information from ufbx.

    ufbx.ufbx_thumbnail

    Embedded thumbnail in the file, valid if the dimensions are non-zero.

    ufbx.ufbx_topo_edge

    ufbx.ufbx_transform

    Explicit translation+rotation+scale transformation. NOTE: Rotation is a quaternion, not Euler angles!

    ufbx.ufbx_transform_override

    ufbx.ufbx_transform_override_list

    ufbx.ufbx_uint32_list

    ufbx.ufbx_unknown

    -- Unknown

    ufbx.ufbx_unknown._anonymous_1_struct

    ufbx.ufbx_unknown._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_unknown_list

    ufbx.ufbx_uv_set

    Vertex UV set/layer

    ufbx.ufbx_uv_set_list

    ufbx.ufbx_vec2

    2D vector

    ufbx.ufbx_vec2._anonymous_1_struct

    ufbx.ufbx_vec2._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_vec2._anonymous_1_struct.v_struct

    ufbx.ufbx_vec2_list

    ufbx.ufbx_vec3

    3D vector

    ufbx.ufbx_vec3._anonymous_1_struct

    ufbx.ufbx_vec3._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_vec3._anonymous_1_struct.v_struct

    ufbx.ufbx_vec3_list

    ufbx.ufbx_vec4

    4D vector

    ufbx.ufbx_vec4._anonymous_1_struct

    ufbx.ufbx_vec4._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_vec4._anonymous_1_struct.v_struct

    ufbx.ufbx_vec4_list

    ufbx.ufbx_vertex_attrib

    Vertex attribute: All attributes are stored in a consistent indexed format regardless of how it's actually stored in the file. values is a contiguous array of attribute values. indices maps each mesh index into a value in the values array. If unique_per_vertex is set then the attribute is guaranteed to have a single defined value per vertex accessible via: attrib.values.data[attrib.indices.data[mesh-vertex_first_index[vertex_ix]]

    ufbx.ufbx_vertex_real

    1D vertex attribute, see ufbx_vertex_attrib for information

    ufbx.ufbx_vertex_stream

    Vertex data array for ufbx_generate_indices(). NOTE: ufbx_generate_indices() compares the vertices using memcmp(), so any padding should be cleared to zero.

    ufbx.ufbx_vertex_vec2

    2D vertex attribute, see ufbx_vertex_attrib for information

    ufbx.ufbx_vertex_vec3

    3D vertex attribute, see ufbx_vertex_attrib for information

    ufbx.ufbx_vertex_vec4

    4D vertex attribute, see ufbx_vertex_attrib for information

    ufbx.ufbx_video

    TODO: Video textures

    ufbx.ufbx_video._anonymous_1_struct

    ufbx.ufbx_video._anonymous_1_struct._anonymous_2_struct

    ufbx.ufbx_video_list

    ufbx.ufbx_void_list

    ufbx.ufbx_warning

    Warning about a non-fatal issue in the file. Often contains information about issues that ufbx has corrected about the file but it might indicate something is not working properly.

    ufbx.ufbx_warning_list

    Enums

    ufbx.ufbx_aperture_format

    Camera film/aperture size defaults NOTE: Handled internally by ufbx, ignore unless you interpret ufbx_props directly!

    ufbx.ufbx_aperture_mode

    Method of specifying the field of view from properties NOTE: Handled internally by ufbx, ignore unless you interpret ufbx_props directly!

    ufbx.ufbx_aspect_mode

    Method of specifying the rendering resolution from properties NOTE: Handled internally by ufbx, ignore unless you interpret ufbx_props directly!

    ufbx.ufbx_bake_step_handling

    Specifies how to handle stepped tangents.

    ufbx.ufbx_baked_key_flags

    ufbx.ufbx_blend_mode

    Blend modes to combine layered textures with, compatible with common blend mode definitions in many art programs. Simpler blend modes have equations specified below where src is the layer to composite over dst. See eg. https://www.w3.org/TR/2013/WD-compositing-1-20131010/#blendingseparable

    ufbx.ufbx_cache_data_encoding

    ufbx.ufbx_cache_data_format

    ufbx.ufbx_cache_file_format

    ufbx.ufbx_cache_interpretation

    Known interpretations of geometry cache data.

    ufbx.ufbx_constraint_aim_up_type

    Method to determine the up vector in aim constraints

    ufbx.ufbx_constraint_ik_pole_type

    Method to determine the up vector in aim constraints

    ufbx.ufbx_constraint_type

    Type of property constrain eg. position or look-at

    ufbx.ufbx_coordinate_axis

    ufbx.ufbx_dom_value_type

    -- Document object model

    ufbx.ufbx_element_type

    ufbx.ufbx_error_type

    Error causes (and UFBX_ERROR_NONE for no error).

    ufbx.ufbx_evaluate_flags

    Flags to control nanimation evaluation functions.

    ufbx.ufbx_exporter

    Scene is the root object loaded by ufbx that everything is accessed from.

    ufbx.ufbx_extrapolation_mode

    ufbx.ufbx_file_format

    ufbx.ufbx_gate_fit

    Method of specifying the render gate size from properties NOTE: Handled internally by ufbx, ignore unless you interpret ufbx_props directly!

    ufbx.ufbx_geometry_transform_handling

    How to handle FBX node geometry transforms. FBX nodes can have "geometry transforms" that affect only the attached meshes, but not the children. This is not allowed in many scene representations so ufbx provides some ways to simplify them. Geometry transforms can also be used to transform any other attributes such as lights or cameras.

    ufbx.ufbx_index_error_handling

    ufbx.ufbx_inherit_mode

    Inherit type specifies how hierarchial node transforms are combined. This only affects the final scaling, as rotation and translation are always inherited correctly. NOTE: These don't map to "InheritType" property as there may be new ones for compatibility with various exporters.

    ufbx.ufbx_inherit_mode_handling

    How to handle FBX transform inherit modes.

    ufbx.ufbx_interpolation

    Animation curve segment interpolation mode between two keyframes

    ufbx.ufbx_light_area_shape

    ufbx.ufbx_light_decay

    How fast does the light intensity decay at a distance

    ufbx.ufbx_light_type

    The kind of light source

    ufbx.ufbx_lod_display

    LOD level display mode.

    ufbx.ufbx_marker_type

    ufbx.ufbx_material_fbx_map

    FBX builtin material properties, matches maps in ufbx_material_fbx_maps

    ufbx.ufbx_material_feature

    Known material features

    ufbx.ufbx_material_pbr_map

    Known PBR material properties, matches maps in ufbx_material_pbr_maps

    ufbx.ufbx_mirror_axis

    Axis used to mirror transformations for handedness conversion.

    ufbx.ufbx_nurbs_topology

    ufbx.ufbx_open_file_type

    ufbx.ufbx_pivot_handling

    How to handle FBX transform pivots.

    ufbx.ufbx_progress_result

    Progress result returned from ufbx_progress_fn() callback. Determines whether ufbx should continue or abort the loading.

    ufbx.ufbx_projection_mode

    ufbx.ufbx_prop_flags

    Property flags: Advanced information about properties, not usually needed.

    ufbx.ufbx_prop_type

    Data type contained within the property. All the data fields are always populated regardless of type, so there's no need to switch by type usually eg. prop-value_real and prop-value_int have the same value (well, close) if prop-type == UFBX_PROP_INTEGER. String values are not converted from/to.

    ufbx.ufbx_rotation_order

    Order in which Euler-angle rotation axes are applied for a transform NOTE: The order in the name refers to the order of axes applied, not the multiplication order: eg. UFBX_ROTATION_ORDER_XYZ is Z*Y*X [TODO: Figure out what the spheric rotation order is...]

    ufbx.ufbx_shader_texture_type

    ufbx.ufbx_shader_type

    Shading model type

    ufbx.ufbx_skinning_method

    Method to evaluate the skinning on a per-vertex level

    ufbx.ufbx_snap_mode

    ufbx.ufbx_space_conversion

    Specify how unit / coordinate system conversion should be performed. Affects how ufbx_load_opts.target_axes and ufbx_load_opts.target_unit_meters work, has no effect if neither is specified.

    ufbx.ufbx_subdivision_boundary

    ufbx.ufbx_subdivision_display_mode

    ufbx.ufbx_texture_type

    ufbx.ufbx_thumbnail_format

    ufbx.ufbx_time_mode

    ufbx.ufbx_time_protocol

    ufbx.ufbx_topo_flags

    -- Mesh topology

    ufbx.ufbx_transform_flags

    Flags to control ufbx_evaluate_transform_flags().

    ufbx.ufbx_unicode_error_handling

    ufbx.ufbx_warning_type

    ufbx.ufbx_wrap_mode

    Blend modes to combine layered textures with, compatible with common blend

    Delegates

    ufbx.ufbx_alloc_fn

    ufbx.ufbx_close_fn

    ufbx.ufbx_close_memory_fn

    ufbx.ufbx_free_allocator_fn

    ufbx.ufbx_free_fn

    ufbx.ufbx_open_file_fn

    ufbx.ufbx_progress_fn

    ufbx.ufbx_read_fn

    ufbx.ufbx_realloc_fn

    ufbx.ufbx_size_fn

    ufbx.ufbx_skip_fn

    ufbx.ufbx_thread_pool_free_fn

    ufbx.ufbx_thread_pool_init_fn

    ufbx.ufbx_thread_pool_run_fn

    ufbx.ufbx_thread_pool_wait_fn

    In this article
    Back to top Generated by DocFX