Unigine::Editor Class
Unigine editor. This interface provides access to Unigine editor functions.
To use this class, include the UnigineEditor.h file.
Unigine::Editor Class
Members
virtual ~Editor ()
Virtual destructor.static Editor * get ()
Returns a pointer to the editor.Return value
Pointer to the editor.virtual int isLoaded () const =0
Returns a value indicating if the editor is already loaded.Return value
Returns 1 if the editor is loaded; otherwise, 0.virtual void setEnabled (int enable) const =0
Enable or disable the editor.Arguments
- int enable - 1 to enable the editor, 0 to disable it.
virtual int isEnabled () const =0
Return a value indicating if the editor is enabled.Return value
Return 1 if the editor is enabled; otherwise, 0 is returned.virtual void setData (const char * data) const =0
Sets user data associated with the world. In the *.world file, the data is set in the data tag.Arguments
- const char * data - New user data.
virtual const char * getData () const =0
Returns user string data associated with the world. This string is written directly into the data tag of the *.world file.Return value
User string data.virtual void setPlayer (const PlayerPtr & player) const =0
Sets the player to be used in the editor. Editor player is handled differently than in-game players. Parameters set directly for the player are ignored; instead, editor player uses camera parameters set via the interface.Arguments
- const PlayerPtr & player - Editor player to set.
virtual PlayerPtr getPlayer () const =0
Returns the current player used in the editor.Return value
Current editor player.virtual NodePtr getIntersection (const UNIGINE_VEC3 & p0, const UNIGINE_VEC3 & p1, UNIGINE_VEC3 * ret_point, vec3 * ret_normal, vec4 * ret_texcoord, int * ret_index, int * ret_surface) const =0
Searches for all of the nodes intersecting the line. A node, which is the most close to the start point of the line, is returned.Arguments
- const UNIGINE_VEC3 & p0 - Coordinates of the line start point.
- const UNIGINE_VEC3 & p1 - Coordinates of the line end point.
- UNIGINE_VEC3 * ret_point - Intersection point of the line and object.
- vec3 * ret_normal - Normal vector to the intersection point.
- vec4 * ret_texcoord - Texture coordinates of the intersection point (vec4, where vec4.xy is for the first (0) UV channel, vec4.zw is for the second (1) UV channel).
- int * ret_index - Intersected triangle number.
- int * ret_surface - Intersected surface number.
Return value
Returns the first intersected node smart pointer if found; otherwise, NULL pointer.virtual NodePtr getIntersection (const UNIGINE_VEC3 & p0, const UNIGINE_VEC3 & p1, const Vector< NodePtr > & exclude, UNIGINE_VEC3 * ret_point, vec3 * ret_normal, vec4 * ret_texcoord, int * ret_index, int * ret_surface) const =0
Searches for all of the nodes intersecting the line. A node, which is the most close to the start point of the line, is returned.Arguments
- const UNIGINE_VEC3 & p0 - Coordinates of the line start point.
- const UNIGINE_VEC3 & p1 - Coordinates of the line end point.
- const Vector< NodePtr > & exclude - Array of the objects to exclude; all these objects will be skipped while checking for intersection.
- UNIGINE_VEC3 * ret_point - Intersection point of the line and object.
- vec3 * ret_normal - Normal vector to the intersection point.
- vec4 * ret_texcoord - Texture coordinates of the intersection point (vec4, where vec4.xy is for the first (0) UV channel, vec4.zw is for the second (1) UV channel).
- int * ret_index - Intersected triangle number.
- int * ret_surface - Intersected surface number.
Return value
Returns the first intersected node smart pointer if found; otherwise, NULL pointer.virtual int getNumNodes () const =0
Returns the number of editor nodes loaded from the *.world file or belonging to the node list of the editor.Return value
Number of editor nodes.virtual int findNode (const char * name) const =0
Searches an editor node by its name.Arguments
- const char * name - Name of the node.
Return value
Node index if the node is found; otherwise, -1.virtual NodePtr getNode (int num) const =0
Returns the editor node by its index in the list of editor nodes.Arguments
- int num - Node index.
Return value
Editor node.virtual NodePtr getNodeByName (const char * name) const =0
Returns the editor node by its name.Arguments
- const char * name - Name of the node.
Return value
Editor node if it is in the list of editor nodes; otherwise, NULL (0).virtual int isNode (const NodePtr & node) const =0
Checks if a given node belongs to the editor.Arguments
- const NodePtr & node - Node pointer.
Return value
Returns 1 if the node belongs to the editor; otherwise, 0.virtual int addNode (const NodePtr & node) const =0
Appends a given node and its children to the editor.Arguments
- const NodePtr & node - Node pointer.
Return value
Returns 1 if the node is added successfully; otherwise,0.virtual int removeNode (const NodePtr & node) const =0
Removes a given node from the editor.Arguments
- const NodePtr & node - Node pointer.
Return value
Returns 1 if the node is removed successfully; otherwise, 0.virtual int releaseNode (const NodePtr & node) const =0
Releases a given node so it is not owned by the editor (made orphan).Arguments
- const NodePtr & node - Node pointer.
Return value
Returns 1 if the node is released successfully; otherwise, 0.Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)