PURE API 0.5
PR00F's Ultimate Rendering Engine full documentation
Loading...
Searching...
No Matches
PureProjection Class Reference

PURE 2D <-> 3D projections class. More...

Detailed Description

PURE 2D <-> 3D projections class.

Definition at line 20 of file PureProjection.h.

#include <PureProjection.h>

Static Public Member Functions

static bool project3dTo2d (TPureFloat fWorldX, TPureFloat fWorldY, TPureFloat fWorldZ, TPureFloat fCamPosX, TPureFloat fCamPosY, TPureFloat fCamPosZ, TPureFloat fCamTargetX, TPureFloat fCamTargetY, TPureFloat fCamTargetZ, TPureFloat fCamUpX, TPureFloat fCamUpY, TPureFloat fCamUpZ, TPureFloat fCamFovY, TPureFloat fCamAspect, TPureFloat fNearPlane, TPureFloat fFarPlane, TPureInt nViewportX, TPureInt nViewportY, TPureUInt nViewportW, TPureUInt nViewportH, PureVector &vecProjected)
 Makes a projection from world-space to window/screen-space.
 
static bool project2dTo3d (TPureUInt nScreenX, TPureUInt nScreenY, TPureFloat nScreenDepth, TPureFloat fCamPosX, TPureFloat fCamPosY, TPureFloat fCamPosZ, TPureFloat fCamTargetX, TPureFloat fCamTargetY, TPureFloat fCamTargetZ, TPureFloat fCamUpX, TPureFloat fCamUpY, TPureFloat fCamUpZ, TPureFloat fCamFovY, TPureFloat fCamAspect, TPureFloat fNearPlane, TPureFloat fFarPlane, TPureInt nViewportX, TPureInt nViewportY, TPureUInt nViewportW, TPureUInt nViewportH, PureVector &vecUnprojected)
 Makes a projection from window/screen-space to world-space.
 

Member Function Documentation

◆ project2dTo3d()

bool PureProjection::project2dTo3d ( TPureUInt nScreenX,
TPureUInt nScreenY,
TPureFloat nScreenDepth,
TPureFloat fCamPosX,
TPureFloat fCamPosY,
TPureFloat fCamPosZ,
TPureFloat fCamTargetX,
TPureFloat fCamTargetY,
TPureFloat fCamTargetZ,
TPureFloat fCamUpX,
TPureFloat fCamUpY,
TPureFloat fCamUpZ,
TPureFloat fCamFovY,
TPureFloat fCamAspect,
TPureFloat fNearPlane,
TPureFloat fFarPlane,
TPureInt nViewportX,
TPureInt nViewportY,
TPureUInt nViewportW,
TPureUInt nViewportH,
PureVector & vecUnprojected )
static

Makes a projection from window/screen-space to world-space.

Makes an unprojection from window/screen-space to world-space.

Parameters
nScreenX,nScreenYnScreenDepth The window/screen-space position coordinates to be unprojected to world-space.
vecUnprojectedThe unprojected 3D world-space coordinates. Valid only if the function returned true.
Returns
True if unprojection is successful, false otherwise.

Definition at line 139 of file PureProjection.cpp.

◆ project3dTo2d()

bool PureProjection::project3dTo2d ( TPureFloat fWorldX,
TPureFloat fWorldY,
TPureFloat fWorldZ,
TPureFloat fCamPosX,
TPureFloat fCamPosY,
TPureFloat fCamPosZ,
TPureFloat fCamTargetX,
TPureFloat fCamTargetY,
TPureFloat fCamTargetZ,
TPureFloat fCamUpX,
TPureFloat fCamUpY,
TPureFloat fCamUpZ,
TPureFloat fCamFovY,
TPureFloat fCamAspect,
TPureFloat fNearPlane,
TPureFloat fFarPlane,
TPureInt nViewportX,
TPureInt nViewportY,
TPureUInt nViewportW,
TPureUInt nViewportH,
PureVector & vecProjected )
static

Makes a projection from world-space to window/screen-space.

Note that for the projected coordinates, vecProjected = (0,0,z) represents the lower left corner of the window/screen, so if you want to have this projected coordinate vecProjected to be in the same coordinate system as the sticked objects, you need to subtract the half of the camera viewport's width from vecProjected.getX() and the half of the camera viewport's height from vecProjected.getY() because sticked objects have (0,0) as the center of the window/screen as the origin.

Parameters
fWorldX,fWorldY,fWorldZThe world-space position coordinates to be projected to window/screen-space.
vecProjectedThe projected 2D window/screen space coordinates. Valid only if the function returned true.
Returns
True if projection is successful, false otherwise.

Definition at line 36 of file PureProjection.cpp.


The documentation for this class was generated from the following files: