The Wizards Wiki

Explore your world

User Tools

Site Tools


documentation:thewizardsengine

This is an old revision of the document!


The Wizards Engine

Provides helpers and tools for creating and hosting gameplay code

LinkeableEditor

Concept of the editor engine features: the editor has internal representations of every concept. You provide 'mappers' that map a single instance, to a single internal representation object + conversion methods to convert to and from the engine representation

MenuDisplayer Displaying a simple menu

WorldSelector Selecting ANY Object in 3D by raycasting, by the use of selectableproviders

Hotloading

Hotloading is made possible by the ModelObject system.

Definition of the current system:

Simulator: responsible for updating the state of ModelObjects. It ensures that inconsistencies in the data are corrected/updated.

ModelObject: contains publicly readable and writeable data.

ModelObjectPart: a modelobject can contain several parts which are also readable/writeable data. Chances to the parts also invalidate the parent modelobject.

ModelObjectpart

Depending on which parts a model object has, a simulator can act to make these parts work together. This means there are 3 types of simulators we can identify for this scenario. Simulators that ensure consistency for between objects for the same part, simulators that cause consistency for different parts of the same object, and simulators that cause consistency for different parts and different objects, the last one beeing the most complex.

Components

Physical provides physical properties to a modelobject. Provides position,boundingbox, objectmatrix

Rendering

CameraInfo contains methods to change the camera, get info about the camera, and generate a center screen ray!

Detailed information

describe engine workings

–> Startup

Start engine

Execute plugin

Execute engine initializer

Run test

Run initialScene

Run engine

–> Clean

Clean all data (except TestingData)

Reload gameplay dll

Run test

Run initialScene

–> Reset

Clean all data

Reload gameplay dll

(no test exists)

–> Reload

Deserialize all

Reload gameplay dll

Reserialize all

Run test

(Dont run intial scene)

Initial scene setup is provided through a service (TestSceneBuilder), currently using the internal DI.

documentation/thewizardsengine.1369434930.txt.gz · Last modified: 2024/08/26 13:57 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki