||[May. 1st, 2008|02:33 am]
Spectre Gruedorf Challenge Blog
Editor tutorial #11 - how to create objects - is now online at Youtube.|
What I am maybe not making clear: the object classes are read in by the editor from an XML file. Each object class consists of a class name and a number of fields. Each field has a name, a type (what it contains - a string, int, model reference, animation reference, particle system name, spline, radial control, etc.), and a default value. One of these properties is selected (optionally) to be the representation in SLED of what the object actually looks like - this is the visprop, short for visual property.
When you compile a level, all of the information here is saved with it. When the level loads, we keep track of what objects require scripting dependencies (what Ruby module has to be loaded, for instance, in order to load a GamePlayer) We then load it, create a new object of the appropriate time, and use inline accessors on the class to actually set properties correctly throughout both Ruby and the Spectre C++ side.
The Ruby<->Spectre interface (what egometry calls the blood-brain barrier) is what I really have to work on now. This is confounding both Daniel and Ben, and as my two licensees I really can't afford to have them too confounded.
Also: as always, anybody else who wants a build of this to try should grab me on IRC or here in the comments; I'll do a build dump this weekend.