Browse Source

Add README.md files for various directories

Closes: #10
frainfreeze 8 years ago
parent
commit
f22c0cdd83

+ 28 - 0
dtool/src/interrogate/README.md

@@ -0,0 +1,28 @@
+A key advantage of Panda3D is that it provides developers with the
+ability to use both C++ and Python simultaneously. Essentially, Panda3D
+gives programmers the best of both worlds, as they are able to take
+advantage of the high performance and low-level programming found in
+C++ in addition to the flexibility, interactive scripting, and
+rapid-prototyping capabilities of Python. This feature is made possible
+due to Python’s ability to call C libraries, and ultimately make use of
+Panda3D’s Interrogate System: an automated C++ Extension Module
+generation utility similar to SWIG.  Although Python is the favored
+scripting language of Panda3D, the engine is highly extensible in this
+aspect, as any language that has a foreign function interface can make
+use of the Interrogate System.
+
+The Interrogate System works like a compiler by scanning and parsing
+C++ code for the Panda3D-specific, “PUBLISHED” keyword. This keyword
+marks the particular methods of a class that are to be exposed within a
+C++ Extension Module for that class which is eventually generated. One
+benefit of using the “PUBLISHED” keyword is that it alleviates the need
+for an interface file that provides function prototypes for the class
+methods that will be exposed within the extension module, as is the
+case with SWIG. Interrogate turns a class into a loose collection of
+Python interface wrapper functions that make up the C++ Extension
+Module.
+
+This package depends on the 'cppparser' package, which contains the
+code that parses the C++ headers, and the 'interrogatedb' package,
+which contains the intermediate representation of the interfaces that
+can be saved to a database file for FFI generation tools to consume.

+ 5 - 0
panda/src/chan/README.md

@@ -0,0 +1,5 @@
+This package contains the animation channels.  This defines the various
+kinds of AnimChannels that may be defined, as well as the MovingPart
+class which binds to the channels and plays the animation.  This is a
+support library for char, as well as any other libraries that want to
+define objects whose values change over time.

+ 3 - 0
panda/src/cull/README.md

@@ -0,0 +1,3 @@
+This package contains the Cull Traverser.  The cull traversal collects
+all state changes specified, and removes unnecessary state change
+requests.  Also does all the depth sorting for proper alphaing.

+ 3 - 0
panda/src/dgraph/README.md

@@ -0,0 +1,3 @@
+This package defines and manages the data graph, which is the hierarchy
+of devices, tforms, and any other things which might have an input or
+an output and need to execute every frame.

+ 2 - 0
panda/src/display/README.md

@@ -0,0 +1,2 @@
+This package contains the abstract display classes, including pipes,
+windows, channels, and display regions.

+ 2 - 0
panda/src/dxgsg9/README.md

@@ -0,0 +1,2 @@
+This package handles all communication with the DirectX backend, and
+manages state to minimize redundant state changes.