21ConfigureDef(config_assimp);
22NotifyCategoryDef(assimp,
"");
24ConfigureFn(config_assimp) {
29(
"assimp-calc-tangent-space",
false,
30 PRC_DESC(
"Calculates tangents and binormals for meshes imported via Assimp."));
33(
"assimp-join-identical-vertices",
true,
34 PRC_DESC(
"Merges duplicate vertices. Set this to false if you want each "
35 "vertex to only be in use on one triangle."));
38(
"assimp-improve-cache-locality",
true,
39 PRC_DESC(
"Improves rendering performance of the loaded meshes by reordering "
40 "triangles for better vertex cache locality. Set this to false if "
41 "you need geometry to be loaded in the exact order that it was "
42 "specified in the file, or to improve load performance."));
45(
"assimp-remove-redundant-materials",
true,
46 PRC_DESC(
"Removes redundant/unreferenced materials from assets."));
49(
"assimp-fix-infacing-normals",
false,
50 PRC_DESC(
"Determines which normal vectors are facing inward and inverts them "
51 "so that they are facing outward."));
54(
"assimp-optimize-meshes",
true,
55 PRC_DESC(
"Reduces the number of draw calls by unifying geometry with the same "
56 "materials. Especially effective in conjunction with "
57 "assimp-optimize-graph and assimp-remove-redundant-materials."));
60(
"assimp-optimize-graph",
false,
61 PRC_DESC(
"Optimizes the scene geometry by flattening the scene hierarchy. "
62 "This is very efficient (combined with assimp-optimize-meshes), but "
63 "it may result the hierarchy to become lost, so it is disabled by "
67(
"assimp-flip-winding-order",
false,
68 PRC_DESC(
"Set this true to flip the winding order of all models loaded via "
69 "the Assimp loader. Note that you may need to clear the model-cache "
70 "after changing this."));
73(
"assimp-gen-normals",
false,
74 PRC_DESC(
"Set this true to generate normals (if absent from file) on import. "
75 "See assimp-smooth-normal-angle for more information. "
76 "Note that you may need to clear the model-cache after "
80(
"assimp-smooth-normal-angle", 0.0,
81 PRC_DESC(
"Set this to anything other than 0.0 in degrees (so 180.0 is PI) to "
82 "specify the maximum angle that may be between two face normals at "
83 "the same vertex position that are smoothed together. Sometimes "
84 "referred to as 'crease angle'. Only has effect if "
85 "assimp-gen-normals is set to true and the file does not contain "
86 "normals. Note that you may need to clear the model-cache after "
90(
"assimp-collapse-dummy-root-node",
false,
91 PRC_DESC(
"If set to true, collapses the root node that Assimp creates, if it "
92 "appears to be a synthetic dummy root node and contains no meshes. "
93 "This variable is new as of Panda3D 1.10.13 and will become true by "
94 "default as of Panda3D 1.11.0."));
104 static bool initialized =
false;
110 LoaderFileTypeAssimp::init_type();
This is a convenience class to specialize ConfigVariable as a boolean type.
This is a convenience class to specialize ConfigVariable as a floating- point type.
This defines the Loader interface that uses the Assimp library to load various model formats.
This class maintains the set of all known LoaderFileTypes in the universe.
void register_type(LoaderFileType *type)
Defines a new LoaderFileType in the universe.
static LoaderFileTypeRegistry * get_global_ptr()
Returns a pointer to the global LoaderFileTypeRegistry object.
void init_libassimp()
Initializes the library.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.