iPortal Struct Reference
[Crystal Space 3D Engine]
This is the interface to the Portal objects. More...
#include <iengine/portal.h>
Detailed Description
This is the interface to the Portal objects.
Polygons that are really `openings' to different areas have a portal associated with them. The portal object defines where the opening leads, how exactly the geometry behind portal is to be handled and so on.
Main creators of instances implementing this interface:
Main ways to get pointers to this interface:
Main users of this interface:
Definition at line 159 of file portal.h.
Member Function Documentation
Check if the destination sector is 0 and if so call the callback.
This function returns false if the portal should not be traversed.
Calculate the camera space plane for this portal.
Get the current color filter.
- Deprecated:
- Deprecated in 1.3. Use portal materials.
Set portal flags (see CS_PORTAL_XXX values).
Set portal material.
Get the maximum sector visit.
Get the specified missing sector callback.
Get the number of missing sector callbacks.
Get the name of this portal.
Get the object space plane of this portal.
Get a sphere representing the object space bounding sphere of this portal.
Get the specified portal callback.
Get the number of portal callbacks.
Return the sector that this portal points too.
Get the filter texture.
- Deprecated:
- Deprecated in 1.3. Use portal materials.
Get an array of vertex indices (indices in the array returned by GetVertices()).
Get the number of vertex indices.
Get an array of object space vertices.
Use this in combination with GetVertexIndices() to find out where the portal is.
Get number of vertices in the array returned by GetVertices().
Get the warping transformation.
Get the world space plane of this portal.
Get a sphere representing the world space bounding sphere of this portal.
Get an array of world space vertices.
Use this in combination with GetVertexIndices() to find out where the portal is.
Hard transform the warp matrix.
Follow a beam through this portal and return the mesh and polygon index that it hits with (0 incase no hit).
This function properly acounts for space warping portals and also checks for infinite recursion (does not allow traversing the same sector more than five times). Returns the intersection point with the polygon in 'isect'. The given transform 't' is used to transform the warping matrix in the portal from object to world space (this==object, other==world).
Transform the warp matrix from object space to world space.
The transform 't' is object to world (this==object, other==world).
Test if a point is on the polygon represented by this portal.
This test happens in world space.
Remove a missing sector callback.
Remove a portal callback.
Set a color filter (instead of the texture).
- Deprecated:
- Deprecated in 1.3. Use portal materials.
Set the filter texture.
- Deprecated:
- Deprecated in 1.3. Use portal materials.
Get portal material.
Set the number of times that this portal will allow for watching the same portal.
By default this is 5 which means that in one recursion level this portal will visit every sector at maximum 5 times.
Set warping transformation to mirror around the given plane.
Set the name of this portal.
Set the sector that this portal points too.
To avoid circular references, the sector is not IncRef'ed!
Set the warping transformation for this portal in object space and world space.
Set the warping transformation for this portal in object space and world space.
Warp a position in world space given a object space to world space transform (this==object, other==world).
Warp space using the given world->camera transformation.
This function modifies the given camera transformation to reflect the warping change.
'warp_wor' is the warp transformation in world space. 't' is the transformation from world to camera space.
'mirror' is true if the camera transformation transforms all polygons so that the vertices are ordered anti-clockwise. 'mirror' will be modified by warp_space if needed.
The documentation for this struct was generated from the following file:
Generated for Crystal Space 2.0 by doxygen 1.6.1