15 #include "config_pgraphnodes.h"
17 #include "ambientLight.h"
18 #include "callbackData.h"
19 #include "callbackNode.h"
20 #include "callbackObject.h"
21 #include "computeNode.h"
22 #include "directionalLight.h"
23 #include "fadeLodNode.h"
24 #include "fadeLodNodeData.h"
25 #include "lightLensNode.h"
26 #include "lightNode.h"
28 #include "nodeCullCallbackData.h"
29 #include "pointLight.h"
30 #include "selectiveChildNode.h"
31 #include "sequenceNode.h"
32 #include "shaderGenerator.h"
33 #include "spotlight.h"
34 #include "switchNode.h"
35 #include "uvScrollNode.h"
39 ConfigureDef(config_pgraphnodes);
40 NotifyCategoryDef(pgraphnodes,
"");
42 ConfigureFn(config_pgraphnodes) {
43 init_libpgraphnodes();
47 (
"default-lod-type", LNT_pop,
48 PRC_DESC(
"Set this to either 'pop' or 'fade' to determine the type of "
49 "LODNode that is created by LODNode::make_default_lod()."));
52 (
"support-fade-lod",
true,
53 PRC_DESC(
"Set this false to make FadeLOD nodes behave like regular LOD nodes "
54 "(ignoring the fade time). This may be useful, for instance, to "
55 "test the performance impact of using FadeLOD nodes."));
58 (
"lod-fade-time", 0.5,
59 PRC_DESC(
"The default amount of time (in seconds) over which a FadeLODNode "
60 "transitions between its different levels."));
63 (
"lod-fade-bin-name",
"fixed",
64 PRC_DESC(
"The default bin name in which to place the fading part of a "
65 "FadeLODNode transition."));
68 (
"lod-fade-bin-draw-order", 0,
69 PRC_DESC(
"The default bin draw order to assign the fading part of a "
70 "FadeLODNode transition."));
73 (
"lod-fade-state-override", 1000,
74 PRC_DESC(
"The default override value to assign to the fade attribs "
75 "in order to effect a FadeLODNode transition."));
78 (
"verify-lods",
false,
79 PRC_DESC(
"When this is true, LODNodes will test when they are rendered to "
80 "ensure that each child's geometry fits entirely within the radius "
81 "defined by its switch-out distance. When it is false, LODNodes "
82 "may have any switch in and out distances, regardless of the "
83 "actual size of their geometry. This test is only made in NDEBUG "
84 "mode (the variable is ignored in a production build)."));
87 (
"parallax-mapping-samples", 3,
88 PRC_DESC(
"Sets the amount of samples to use in the parallax mapping "
89 "implementation. A value of 0 means to disable it entirely."));
92 (
"parallax-mapping-scale", 0.1,
93 PRC_DESC(
"Sets the strength of the effect of parallax mapping, that is, "
94 "how much influence the height values have on the texture "
106 init_libpgraphnodes() {
107 static bool initialized =
false;
113 AmbientLight::init_type();
114 CallbackData::init_type();
115 CallbackNode::init_type();
116 CallbackObject::init_type();
117 ComputeNode::init_type();
118 DirectionalLight::init_type();
119 FadeLODNode::init_type();
120 FadeLODNodeData::init_type();
121 LightLensNode::init_type();
122 LightNode::init_type();
123 LODNode::init_type();
124 NodeCullCallbackData::init_type();
125 PointLight::init_type();
126 SelectiveChildNode::init_type();
127 SequenceNode::init_type();
128 ShaderGenerator::init_type();
129 Spotlight::init_type();
130 SwitchNode::init_type();
131 UvScrollNode::init_type();
static void register_with_read_factory()
Tells the BamReader how to create objects of type SequenceNode.
static void register_with_read_factory()
Tells the BamReader how to create objects of type DirectionalLight.
This is a convenience class to specialize ConfigVariable as a boolean type.
static void register_with_read_factory()
Tells the BamReader how to create objects of type ComputeNode.
static void register_with_read_factory()
Tells the BamReader how to create objects of type PandaNode.
static void register_with_read_factory()
Tells the BamReader how to create objects of type LODNode.
This is a convenience class to specialize ConfigVariable as a floating-point type.
This is a convenience class to specialize ConfigVariable as a string type.
This class specializes ConfigVariable as an enumerated type.
static void register_with_read_factory()
Tells the BamReader how to create objects of type PointLight.
static void register_with_read_factory()
Tells the BamReader how to create objects of type Spotlight.
This is a convenience class to specialize ConfigVariable as an integer type.
static void register_with_read_factory()
Tells the BamReader how to create objects of type SwitchNode.
static void register_with_read_factory()
Tells the BamReader how to create objects of type CallbackNode.
static void register_with_read_factory()
Tells the BamReader how to create objects of type AmbientLight.
static void register_with_read_factory()
Tells the BamReader how to create objects of type LODNode.