|
|
|
|
Documentation |
|
Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages Search
NL3D::UDriver Class ReferenceGame Interface for window Driver, first object to create.
More...
#include <u_driver.h>
Inheritance diagram for NL3D::UDriver:
List of all members.
Public Types |
typedef std::vector< CMode > | TModeList |
enum | TMessageBoxId {
okId = 0,
yesId,
noId,
abortId,
retryId,
cancelId,
ignoreId,
idCount
} |
| Message Box enums. More...
|
enum | TMessageBoxType {
okType = 0,
okCancelType,
yesNoType,
abortRetryIgnoreType,
yesNoCancelType,
retryCancelType,
typeCount
} |
enum | TMessageBoxIcon {
noIcon = 0,
handIcon,
questionIcon,
exclamationIcon,
asteriskIcon,
warningIcon,
errorIcon,
informationIcon,
stopIcon,
iconCount
} |
enum | TPolygonMode { Filled = 0,
Line,
Point
} |
| Polygon Mode. More...
|
Public Methods |
|
| UDriver () |
virtual | ~UDriver () |
|
virtual void | disableHardwareVertexProgram ()=0 |
virtual void | disableHardwareVertexArrayAGP ()=0 |
virtual void | disableHardwareTextureShader ()=0 |
|
virtual TModeList | enumModes ()=0 |
| Enum All Fullscreen modes. More...
|
virtual void | setDisplay (const CMode &mode)=0 |
| create the window. call activate(). More...
|
virtual void | release ()=0 |
| Release the window. All components are released (Texture, materials, scene, textcontexts). More...
|
virtual bool | activate (void)=0 |
| Before rendering via a driver in a thread, must activate() (per thread). More...
|
virtual bool | isActive ()=0 |
| Return true if driver is still active. Return false else. If he user close the window, must return false. More...
|
|
virtual void | clearRGBABuffer (CRGBA col=CRGBA(255, 255, 255, 255))=0 |
| This clear only the RGBA back buffer. More...
|
virtual void | clearZBuffer ()=0 |
| This clear only the Zbuffer. More...
|
virtual void | clearBuffers (CRGBA col=CRGBA(255, 255, 255, 255))=0 |
| This clear the buffers (ALL the buffer :) ). More...
|
virtual void | swapBuffers ()=0 |
| This swap the back and front buffer (ALL the buffer :) ). More...
|
|
virtual bool | fogEnabled ()=0 |
virtual void | enableFog (bool enable)=0 |
virtual void | setupFog (float start, float end, CRGBA color)=0 |
| setup fog parameters. fog must enabled to see result. start and end are in [0,1] range. More...
|
|
virtual void | setLight (uint8 num, const ULight &light)=0 |
virtual void | enableLight (uint8 num, bool enable=true)=0 |
virtual void | setAmbientColor (CRGBA color)=0 |
|
virtual UScene * | createScene ()=0 |
| Create a new scene. More...
|
virtual void | deleteScene (UScene *scene)=0 |
| Delete a scene. More...
|
|
virtual UTextContext * | createTextContext (const std::string fontFileName, const std::string fontExFileName="")=0 |
| create a new TextContext, for a given font. More...
|
virtual void | deleteTextContext (UTextContext *textContext)=0 |
| delete a TextContext. More...
|
virtual void | setFontManagerMaxMemory (uint maxMem)=0 |
| Set the maxMemory used for the FontManager. More...
|
virtual std::string | getFontManagerCacheInformation () const=0 |
| get cahce information. More...
|
virtual UTextureFile * | createTextureFile (const std::string &file)=0 |
| Create a new texture file, searching in CPath. More...
|
virtual void | deleteTextureFile (UTextureFile *textfile)=0 |
| Delete a texture file. This one will be really deleted in memory when no material point to it. More...
|
virtual UTextureRaw * | createTextureRaw ()=0 |
| Create a new Raw texture, to be filled by user. More...
|
virtual void | deleteTextureRaw (UTextureRaw *textraw)=0 |
| Delete a Raw texture. This one will be really deleted in memory when no material point to it. More...
|
virtual UMaterial * | createMaterial ()=0 |
| Create a new Material, to be filled by user. More...
|
virtual void | deleteMaterial (UMaterial *mat)=0 |
| Delete a Material. More...
|
|
virtual void | setScissor (const CScissor &)=0 |
| Set the active scissor for rendering. More...
|
virtual CScissor | getScissor ()=0 |
virtual void | setViewport (const CViewport &)=0 |
| Set the active viewport for rendering. More...
|
virtual CViewport | getViewport ()=0 |
virtual void | setFrustum (const CFrustum &frust)=0 |
| Set the active Frustum for rendering. More...
|
virtual CFrustum | getFrustum ()=0 |
virtual void | setViewMatrix (const CMatrix &mat)=0 |
| Set the active ViewMatrix for rendering. More...
|
virtual CMatrix | getViewMatrix ()=0 |
virtual void | setModelMatrix (const CMatrix &mat)=0 |
| Set the active ModelMatrix for rendering. More...
|
virtual CMatrix | getModelMatrix ()=0 |
virtual void | setMatrixMode2D (const CFrustum &frust)=0 |
| Tool function: Setup frustum/viewmatrix/modelmatrix for 2D. More...
|
void | setMatrixMode2D11 () |
| Tool function: same as setMatrixMode2D(), using a CFrustum(0,1,0,1,-1,1,false). More...
|
void | setMatrixMode2D43 () |
| Tool function: same as setMatrixMode2D(), using a CFrustum(0,4/3,0,1,-1,1,false). More...
|
virtual void | setMatrixMode3D (UCamera &camera)=0 |
| Tool function: Setup frustum/viewmatrix/modelmatrix for 3D, using parameters of a UCamera. More...
|
|
virtual void | drawLine (const NLMISC::CLine &tri, UMaterial &mat)=0 |
| Draw the Line, taking color from material. More...
|
virtual void | drawLine (const NLMISC::CLineColor &tri, UMaterial &mat)=0 |
| Draw the Line, taking color from primitive. More...
|
virtual void | drawLine (const NLMISC::CLineUV &tri, UMaterial &mat)=0 |
| Draw the Line, taking color from material. With UV for texture. More...
|
virtual void | drawLine (const NLMISC::CLineColorUV &tri, UMaterial &mat)=0 |
| Draw the Line, taking color from primitive. With UV for texture. More...
|
virtual void | drawTriangle (const NLMISC::CTriangle &tri, UMaterial &mat)=0 |
| Draw the Triangle, taking color from material. More...
|
virtual void | drawTriangle (const NLMISC::CTriangleColor &tri, UMaterial &mat)=0 |
| Draw the Triangle, taking color from primitive. More...
|
virtual void | drawTriangle (const NLMISC::CTriangleUV &tri, UMaterial &mat)=0 |
| Draw the Triangle, taking color from material. With UV for texture. More...
|
virtual void | drawTriangle (const NLMISC::CTriangleColorUV &tri, UMaterial &mat)=0 |
| Draw the Triangle, taking color from primitive. With UV for texture. More...
|
virtual void | drawQuad (const NLMISC::CQuad &tri, UMaterial &mat)=0 |
| Draw the Quad, taking color from material. More...
|
virtual void | drawQuad (const NLMISC::CQuadColor &tri, UMaterial &mat)=0 |
| Draw the Quad, taking color from primitive. More...
|
virtual void | drawQuad (const NLMISC::CQuadUV &tri, UMaterial &mat)=0 |
| Draw the Quad, taking color from material. With UV for texture. More...
|
virtual void | drawQuad (const NLMISC::CQuadColorUV &tri, UMaterial &mat)=0 |
| Draw the Quad, taking color from primitive. With UV for texture. More...
|
virtual void | drawQuads (const std::vector< NLMISC::CQuadColorUV > &tri, UMaterial &mat)=0 |
virtual void | drawQuads (const NLMISC::CQuadColorUV *qs, uint32 nbq, UMaterial &mat)=0 |
|
virtual void | drawBitmap (float x, float y, float width, float height, class UTexture &texture, bool blend=true, CRGBA col=CRGBA(255, 255, 255, 255))=0 |
| Draw a bitmap 2D. Warning: this is slow... More...
|
virtual void | drawLine (float x0, float y0, float x1, float y1, CRGBA col=CRGBA(255, 255, 255, 255))=0 |
| Draw a line in 2D. Warning: this is slow... More...
|
virtual void | drawTriangle (float x0, float y0, float x1, float y1, float x2, float y2, CRGBA col)=0 |
| Draw a Triangle in 2D. Warning: this is slow... More...
|
virtual void | drawQuad (float x0, float y0, float x1, float y1, CRGBA col)=0 |
| Draw a Quad in 2D. Warning: this is slow... More...
|
virtual void | drawQuad (float xcenter, float ycenter, float radius, CRGBA col)=0 |
| Draw a Quad in 2D. Warning: this is slow... More...
|
virtual void | drawWiredQuad (float x0, float y0, float x1, float y1, CRGBA col)=0 |
| Draw a Quad in 2D. Warning: this is slow... More...
|
virtual void | drawWiredQuad (float xcenter, float ycenter, float radius, CRGBA col)=0 |
| Draw a Quad in 2D. Warning: this is slow... More...
|
|
virtual uint32 | getImplementationVersion () const=0 |
| Get the driver version. More...
|
virtual const char * | getDriverInformation ()=0 |
| Get driver informations. More...
|
virtual const char * | getVideocardInformation ()=0 |
| Get videocard informations. More...
|
virtual sint | getNbTextureStages ()=0 |
| Get the number of texture stage avaliable, for multitexturing (Normal material shaders). Valid only after setDisplay(). More...
|
virtual void | getWindowSize (uint32 &width, uint32 &height)=0 |
| Get the width and the height of the window. More...
|
virtual uint | getWindowWidth ()=0 |
| Get the width of the window. More...
|
virtual uint | getWindowHeight ()=0 |
| Get the height of the window. More...
|
virtual void | getBuffer (CBitmap &bitmap)=0 |
| get the RGBA back buffer. More...
|
virtual void | getZBuffer (std::vector< float > &zbuffer)=0 |
| get the ZBuffer (back buffer). More...
|
virtual void | getBufferPart (CBitmap &bitmap, NLMISC::CRect &rect)=0 |
| get a part of the RGBA back buffer NB: 0,0 is the bottom left corner of the screen. More...
|
virtual void | getZBufferPart (std::vector< float > &zbuffer, NLMISC::CRect &rect)=0 |
| get a part of the ZBuffer (back buffer). More...
|
virtual bool | fillBuffer (CBitmap &bitmap)=0 |
| fill the RGBA back buffer. More...
|
|
virtual NLMISC::IMouseDevice * | enableLowLevelMouse (bool enable)=0 |
| Enable / disable low level mouse. More...
|
virtual NLMISC::IKeyboardDevice * | enableLowLevelKeyboard (bool enable)=0 |
| Enable / disable a low level keyboard. More...
|
virtual NLMISC::IInputDeviceManager * | getLowLevelInputDeviceManager ()=0 |
| Check wether there is a low level device manager available, and get its interface. More...
|
virtual void | showCursor (bool b)=0 |
| show cursor if b is true, or hide it if b is false NB: This has no effects if a low level mouse is used. More...
|
virtual void | setMousePos (float x, float y)=0 |
| x and y must be between 0.0 and 1.0. More...
|
virtual void | setCapture (bool b)=0 |
| If true, capture the mouse to force it to stay under the window. More...
|
|
virtual TMessageBoxId | systemMessageBox (const char *message, const char *title, TMessageBoxType type=okType, TMessageBoxIcon icon=noIcon)=0 |
| Output a system message box and print a message with an icon. More...
|
virtual void | setPolygonMode (TPolygonMode mode)=0 |
| Set the global polygon mode. More...
|
virtual TPolygonMode | getPolygonMode ()=0 |
| Get the global polygon mode. More...
|
virtual U3dMouseListener * | create3dMouseListener ()=0 |
| Create a 3d mouse listener. More...
|
virtual void | delete3dMouseListener (U3dMouseListener *listener)=0 |
| Delete a 3d mouse listener. More...
|
virtual void | forceDXTCCompression (bool dxtcComp)=0 |
| if true force all the uncompressed RGBA 32 bits and RGBA 24 bits texture to be DXTC5 compressed. More...
|
virtual void | forceTextureResize (uint divisor)=0 |
| if !=1, force mostly all the textures (but TextureFonts lightmaps, interfaces etc..) to be divided by Divisor (2, 4, 8...) Default is 1. More...
|
virtual bool | setMonitorColorProperties (const CMonitorColorProperties &properties)=0 |
| Setup monitor color properties. More...
|
|
virtual UShapeBank * | getShapeBank ()=0 |
| Get the global shape bank. More...
|
|
virtual void | profileRenderedPrimitives (CPrimitiveProfile &pIn, CPrimitiveProfile &pOut)=0 |
| Get the number of primitives rendered from the last swapBuffers() call. More...
|
virtual uint32 | profileAllocatedTextureMemory ()=0 |
| Return the amount of Texture memory requested. More...
|
virtual uint32 | profileSetupedMaterials () const=0 |
| Get the number of material setuped from the last swapBuffers() call. More...
|
virtual uint32 | profileSetupedModelMatrix () const=0 |
| Get the number of matrix setuped from the last swapBuffers() call. More...
|
virtual void | enableUsedTextureMemorySum (bool enable=true)=0 |
| Enable the sum of texture memory used since last swapBuffers() call. More...
|
virtual uint32 | getUsedTextureMemory () const=0 |
| Return the amount of texture video memory used since last swapBuffers() call. More...
|
|
virtual void | setupAsyncTextureLod (uint baseLevel, uint maxLevel)=0 |
| setup the mipMap levels. More...
|
virtual void | setupAsyncTextureMaxUploadPerFrame (uint maxup)=0 |
| Setup max texture upload in driver per updateAsyncTexture() call. More...
|
virtual void | setupMaxTotalAsyncTextureSize (uint maxText)=0 |
| Setup max total texture size allowed. Default is 10Mo. More...
|
virtual void | setupMaxHLSColoringPerFrame (uint maxCol)=0 |
| Setup max texture HLS Coloring per update() call (in bytes). Default to 20K. More...
|
virtual void | updateAsyncTexture ()=0 |
| update the manager. More...
|
virtual uint | getTotalAsyncTextureSizeAsked () const=0 |
| get the async texture Size asked (ie maybe bigger than MaxTotalTextureSize). More...
|
virtual uint | getLastAsyncTextureSizeGot () const=0 |
| get what the system really allows. More...
|
virtual void | loadHLSBank (const std::string &fileName)=0 |
| Load a .hlsBank, add it to the HLSManager of the AsyncTextureManager. More...
|
Static Public Methods |
UDriver * | createDriver () |
| This is the static function which build a UDriver, the root for all 3D functions. More...
|
Public Attributes |
NLMISC::CEventServer | EventServer |
| The EventServer of this driver. Init after setDisplay()!! More...
|
NLMISC::CEventListenerAsync | AsyncListener |
| The AsyncListener of this driver. Init after setDisplay()!! More...
|
Detailed Description
Game Interface for window Driver, first object to create.
From UDriver, you can create Scene, and render basic primitives (slow!!)
All function calls are invalid before init() is called!!
NB: there is ONE FontManager per UDriver.
-
Author:
-
Lionel Berenguier , Nevrax France
-
Date:
-
2001
Definition at line 94 of file u_driver.h.
Member Typedef Documentation
typedef std::vector<CMode> NL3D::UDriver::TModeList
|
|
Member Enumeration Documentation
enum NL3D::UDriver::TMessageBoxIcon
|
|
|
-
Enumeration values:
-
noIcon |
|
handIcon |
|
questionIcon |
|
exclamationIcon |
|
asteriskIcon |
|
warningIcon |
|
errorIcon |
|
informationIcon |
|
stopIcon |
|
iconCount |
|
Definition at line 129 of file u_driver.h. |
enum NL3D::UDriver::TMessageBoxId
|
|
|
Message Box enums.
-
Enumeration values:
-
okId |
|
yesId |
|
noId |
|
abortId |
|
retryId |
|
cancelId |
|
ignoreId |
|
idCount |
|
Definition at line 127 of file u_driver.h. |
enum NL3D::UDriver::TMessageBoxType
|
|
|
-
Enumeration values:
-
okType |
|
okCancelType |
|
yesNoType |
|
abortRetryIgnoreType |
|
yesNoCancelType |
|
retryCancelType |
|
typeCount |
|
Definition at line 128 of file u_driver.h. |
enum NL3D::UDriver::TPolygonMode
|
|
|
Polygon Mode.
-
Enumeration values:
-
Definition at line 132 of file u_driver.h. |
Constructor & Destructor Documentation
NL3D::UDriver::UDriver |
( |
|
) |
|
|
NL3D::UDriver::~UDriver |
( |
|
) |
[virtual] |
|
Member Function Documentation
virtual bool NL3D::UDriver::activate |
( |
void |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::clearBuffers |
( |
CRGBA |
col = CRGBA(255, 255, 255, 255) |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::clearRGBABuffer |
( |
CRGBA |
col = CRGBA(255, 255, 255, 255) |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::clearZBuffer |
( |
|
) |
[pure virtual] |
|
virtual U3dMouseListener* NL3D::UDriver::create3dMouseListener |
( |
|
) |
[pure virtual] |
|
|
Create a 3d mouse listener.
-
Returns:
-
a 3d mouse listener.
Implemented in NL3D::CDriverUser. |
UDriver * NL3D::UDriver::createDriver |
( |
|
) |
[static] |
|
virtual UMaterial* NL3D::UDriver::createMaterial |
( |
|
) |
[pure virtual] |
|
virtual UScene* NL3D::UDriver::createScene |
( |
|
) |
[pure virtual] |
|
virtual UTextContext* NL3D::UDriver::createTextContext |
( |
const std::string |
fontFileName, |
|
|
const std::string |
fontExFileName = "" |
|
) |
[pure virtual] |
|
virtual UTextureFile* NL3D::UDriver::createTextureFile |
( |
const std::string & |
file |
) |
[pure virtual] |
|
|
Create a new texture file, searching in CPath.
NB: by default a textureFile created with this method has a setAllowDegradation() at false. -
Parameters:
-
file |
filename, local to CPath paths. |
Implemented in NL3D::CDriverUser. |
virtual UTextureRaw* NL3D::UDriver::createTextureRaw |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::delete3dMouseListener |
( |
U3dMouseListener * |
listener |
) |
[pure virtual] |
|
|
Delete a 3d mouse listener.
-
Parameters:
-
listener |
a 3d mouse listener. |
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::deleteMaterial |
( |
UMaterial * |
mat |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::deleteScene |
( |
UScene * |
scene |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::deleteTextContext |
( |
UTextContext * |
textContext |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::deleteTextureFile |
( |
UTextureFile * |
textfile |
) |
[pure virtual] |
|
|
Delete a texture file. This one will be really deleted in memory when no material point to it.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::deleteTextureRaw |
( |
UTextureRaw * |
textraw |
) |
[pure virtual] |
|
|
Delete a Raw texture. This one will be really deleted in memory when no material point to it.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::disableHardwareTextureShader |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::disableHardwareVertexArrayAGP |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::disableHardwareVertexProgram |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::drawBitmap |
( |
float |
x, |
|
|
float |
y, |
|
|
float |
width, |
|
|
float |
height, |
|
|
class UTexture & |
texture, |
|
|
bool |
blend = true, |
|
|
CRGBA |
col = CRGBA(255, 255, 255, 255) |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::drawLine |
( |
float |
x0, |
|
|
float |
y0, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
CRGBA |
col = CRGBA(255, 255, 255, 255) |
|
) |
[pure virtual] |
|
|
Draw the Line, taking color from primitive. With UV for texture.
Implemented in NL3D::CDriverUser. |
|
Draw the Line, taking color from material. With UV for texture.
Implemented in NL3D::CDriverUser. |
|
Draw the Line, taking color from material.
NB: If you set a texture to your material, the primitives are textured, even if no Uvs are provided.
NB: All rendering are done in current viewport / current matrix context.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::drawQuad |
( |
float |
xcenter, |
|
|
float |
ycenter, |
|
|
float |
radius, |
|
|
CRGBA |
col |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::drawQuad |
( |
float |
x0, |
|
|
float |
y0, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
CRGBA |
col |
|
) |
[pure virtual] |
|
|
Draw the Quad, taking color from primitive. With UV for texture.
Implemented in NL3D::CDriverUser. |
|
Draw the Quad, taking color from material. With UV for texture.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::drawTriangle |
( |
float |
x0, |
|
|
float |
y0, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
float |
x2, |
|
|
float |
y2, |
|
|
CRGBA |
col |
|
) |
[pure virtual] |
|
|
Draw the Triangle, taking color from primitive. With UV for texture.
Implemented in NL3D::CDriverUser. |
|
Draw the Triangle, taking color from material. With UV for texture.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::drawWiredQuad |
( |
float |
xcenter, |
|
|
float |
ycenter, |
|
|
float |
radius, |
|
|
CRGBA |
col |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::drawWiredQuad |
( |
float |
x0, |
|
|
float |
y0, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
CRGBA |
col |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::enableFog |
( |
bool |
enable |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::enableLight |
( |
uint8 |
num, |
|
|
bool |
enable = true |
|
) |
[pure virtual] |
|
|
Enable / disable a low level keyboard.
This returns a interface to some parameters when it is supported, or NULL otherwise. The interface pointer is valid as long as the low level keyboard is enabled. A call to disable the keyboard returns NULL, and restore the default keyboard behaviour.
Implemented in NL3D::CDriverUser. |
|
Enable / disable low level mouse.
This allow to take advantage of some options (speed of the mouse, automatic wrapping) It returns a interface to these parameters when it is supported, or NULL otherwise The interface pointer is valid as long as the low level mouse is enabled. A call to disable the mouse returns NULL, and restore the default mouse behaviour NB : - In this mode the mouse cursor isn't drawn.
- Calls to showCursor have no effects
- Calls to setCapture have no effects
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::enableUsedTextureMemorySum |
( |
bool |
enable = true |
) |
[pure virtual] |
|
virtual TModeList NL3D::UDriver::enumModes |
( |
|
) |
[pure virtual] |
|
virtual bool NL3D::UDriver::fillBuffer |
( |
CBitmap & |
bitmap |
) |
[pure virtual] |
|
|
fill the RGBA back buffer.
-
Parameters:
-
bitmap |
will be written in the buffer. no-op if bad size. |
-
Returns:
-
true if success
Implemented in NL3D::CDriverUser. |
virtual bool NL3D::UDriver::fogEnabled |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::forceDXTCCompression |
( |
bool |
dxtcComp |
) |
[pure virtual] |
|
|
if true force all the uncompressed RGBA 32 bits and RGBA 24 bits texture to be DXTC5 compressed.
Default is false. NB: this is done only on TextureFile, with format Automatic
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::forceTextureResize |
( |
uint |
divisor |
) |
[pure virtual] |
|
|
if !=1, force mostly all the textures (but TextureFonts lightmaps, interfaces etc..) to be divided by Divisor (2, 4, 8...) Default is 1.
NB: this is done only on TextureFile
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::getBuffer |
( |
CBitmap & |
bitmap |
) |
[pure virtual] |
|
|
get the RGBA back buffer.
-
Parameters:
-
bitmap |
the buffer will be written in this bitmap |
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::getBufferPart |
( |
CBitmap & |
bitmap, |
|
|
NLMISC::CRect & |
rect |
|
) |
[pure virtual] |
|
|
get a part of the RGBA back buffer NB: 0,0 is the bottom left corner of the screen.
-
Parameters:
-
bitmap |
the buffer will be written in this bitmap |
rect |
the in/out (wanted/clipped) part of Color buffer to retrieve. |
Implemented in NL3D::CDriverUser. |
virtual const char* NL3D::UDriver::getDriverInformation |
( |
|
) |
[pure virtual] |
|
|
Get driver informations.
get the nel name of the driver (ex: "Opengl 1.2 NeL Driver")
Implemented in NL3D::CDriverUser. |
virtual std::string NL3D::UDriver::getFontManagerCacheInformation |
( |
|
) |
const [pure virtual] |
|
virtual CFrustum NL3D::UDriver::getFrustum |
( |
|
) |
[pure virtual] |
|
virtual uint32 NL3D::UDriver::getImplementationVersion |
( |
|
) |
const [pure virtual] |
|
|
Get the driver version.
Not the same than interface version. Incremented at each implementation change.
-
See also:
-
InterfaceVersion
Implemented in NL3D::CDriverUser. |
virtual uint NL3D::UDriver::getLastAsyncTextureSizeGot |
( |
|
) |
const [pure virtual] |
|
|
Check wether there is a low level device manager available, and get its interface.
Return NULL if not available. From this interface you can deal with mouse and keyboard as above, but you can also manage game devices (joysticks, joypads ...)
Implemented in NL3D::CDriverUser. |
virtual CMatrix NL3D::UDriver::getModelMatrix |
( |
|
) |
[pure virtual] |
|
virtual sint NL3D::UDriver::getNbTextureStages |
( |
|
) |
[pure virtual] |
|
|
Get the number of texture stage avaliable, for multitexturing (Normal material shaders). Valid only after setDisplay().
Implemented in NL3D::CDriverUser. |
virtual TPolygonMode NL3D::UDriver::getPolygonMode |
( |
|
) |
[pure virtual] |
|
virtual CScissor NL3D::UDriver::getScissor |
( |
|
) |
[pure virtual] |
|
virtual UShapeBank* NL3D::UDriver::getShapeBank |
( |
|
) |
[pure virtual] |
|
virtual uint NL3D::UDriver::getTotalAsyncTextureSizeAsked |
( |
|
) |
const [pure virtual] |
|
|
get the async texture Size asked (ie maybe bigger than MaxTotalTextureSize).
Implemented in NL3D::CDriverUser. |
virtual uint32 NL3D::UDriver::getUsedTextureMemory |
( |
|
) |
const [pure virtual] |
|
virtual const char* NL3D::UDriver::getVideocardInformation |
( |
|
) |
[pure virtual] |
|
|
Get videocard informations.
get the official name of the driver
Implemented in NL3D::CDriverUser. |
virtual CMatrix NL3D::UDriver::getViewMatrix |
( |
|
) |
[pure virtual] |
|
virtual CViewport NL3D::UDriver::getViewport |
( |
|
) |
[pure virtual] |
|
virtual uint NL3D::UDriver::getWindowHeight |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::getWindowSize |
( |
uint32 & |
width, |
|
|
uint32 & |
height |
|
) |
[pure virtual] |
|
virtual uint NL3D::UDriver::getWindowWidth |
( |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::getZBuffer |
( |
std::vector< float > & |
zbuffer |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::getZBufferPart |
( |
std::vector< float > & |
zbuffer, |
|
|
NLMISC::CRect & |
rect |
|
) |
[pure virtual] |
|
|
get a part of the ZBuffer (back buffer).
NB: 0,0 is the bottom left corner of the screen. -
Parameters:
-
zbuffer |
the returned array of Z. size of rec.Width*rec.Height. |
rect |
the in/out (wanted/clipped) part of ZBuffer to retrieve. |
Implemented in NL3D::CDriverUser. |
virtual bool NL3D::UDriver::isActive |
( |
|
) |
[pure virtual] |
|
|
Return true if driver is still active. Return false else. If he user close the window, must return false.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::loadHLSBank |
( |
const std::string & |
fileName |
) |
[pure virtual] |
|
|
Load a .hlsBank, add it to the HLSManager of the AsyncTextureManager.
Use CPath::lookup. throw EPathNotFound if error
Implemented in NL3D::CDriverUser. |
virtual uint32 NL3D::UDriver::profileAllocatedTextureMemory |
( |
|
) |
[pure virtual] |
|
|
Return the amount of Texture memory requested.
taking mipmap, compression, texture format, etc... into account. NB: because of GeForce*, RGB888 is considered to be 32 bits. So it may be false for others cards :).
Implemented in NL3D::CDriverUser. |
|
Get the number of primitives rendered from the last swapBuffers() call.
-
Parameters:
-
pIn |
the number of requested rendered primitive. |
pOut |
the number of effective rendered primitive. pOut==pIn if no multi-pass material is used (Lightmap, Specular ...). |
Implemented in NL3D::CDriverUser. |
virtual uint32 NL3D::UDriver::profileSetupedMaterials |
( |
|
) |
const [pure virtual] |
|
virtual uint32 NL3D::UDriver::profileSetupedModelMatrix |
( |
|
) |
const [pure virtual] |
|
virtual void NL3D::UDriver::release |
( |
|
) |
[pure virtual] |
|
|
Release the window. All components are released (Texture, materials, scene, textcontexts).
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setAmbientColor |
( |
CRGBA |
color |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setCapture |
( |
bool |
b |
) |
[pure virtual] |
|
|
If true, capture the mouse to force it to stay under the window.
NB : If a low level mouse is used, it does nothing
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setDisplay |
( |
const CMode & |
mode |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setFontManagerMaxMemory |
( |
uint |
maxMem |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setFrustum |
( |
const CFrustum & |
frust |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setLight |
( |
uint8 |
num, |
|
|
const ULight & |
light |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setMatrixMode2D |
( |
const CFrustum & |
frust |
) |
[pure virtual] |
|
void NL3D::UDriver::setMatrixMode2D11 |
( |
|
) |
|
|
void NL3D::UDriver::setMatrixMode2D43 |
( |
|
) |
|
|
virtual void NL3D::UDriver::setMatrixMode3D |
( |
UCamera & |
camera |
) |
[pure virtual] |
|
|
Tool function: Setup frustum/viewmatrix/modelmatrix for 3D, using parameters of a UCamera.
ModelMatrix setuped to identity. ViewMatrix setuped to the inverse of camera 's LocalMatrix. Frustum setuped to UCamera frustum.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setModelMatrix |
( |
const CMatrix & |
mat |
) |
[pure virtual] |
|
|
Set the active ModelMatrix for rendering.
NB: UScene ignore this function (use camera parameters instead).
Implemented in NL3D::CDriverUser. |
virtual bool NL3D::UDriver::setMonitorColorProperties |
( |
const CMonitorColorProperties & |
properties |
) |
[pure virtual] |
|
|
Setup monitor color properties.
Return false if setup failed.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setMousePos |
( |
float |
x, |
|
|
float |
y |
|
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setPolygonMode |
( |
TPolygonMode |
mode |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setScissor |
( |
const CScissor & |
|
) |
[pure virtual] |
|
|
Set the active scissor for rendering.
Default to fullscreen.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setupAsyncTextureLod |
( |
uint |
baseLevel, |
|
|
uint |
maxLevel |
|
) |
[pure virtual] |
|
|
setup the mipMap levels.
\baseLevel When the texture is first added, it is loaded skipping the baseLevel first mipmap \maxLevel During time, furhter mipmap are loaded, according to instance position etc... maxLevel tells where to stop. If 0, the texture will finally be entirely uploaded. Default is 3,1.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setupAsyncTextureMaxUploadPerFrame |
( |
uint |
maxup |
) |
[pure virtual] |
|
virtual void NL3D::UDriver::setupFog |
( |
float |
start, |
|
|
float |
end, |
|
|
CRGBA |
color |
|
) |
[pure virtual] |
|
|
setup fog parameters. fog must enabled to see result. start and end are in [0,1] range.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setupMaxHLSColoringPerFrame |
( |
uint |
maxCol |
) |
[pure virtual] |
|
|
Setup max texture HLS Coloring per update() call (in bytes). Default to 20K.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setupMaxTotalAsyncTextureSize |
( |
uint |
maxText |
) |
[pure virtual] |
|
|
Setup max total texture size allowed. Default is 10Mo.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setViewMatrix |
( |
const CMatrix & |
mat |
) |
[pure virtual] |
|
|
Set the active ViewMatrix for rendering.
NB: this is the view matrix, which is the inverse of camera matrix.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::setViewport |
( |
const CViewport & |
|
) |
[pure virtual] |
|
|
Set the active viewport for rendering.
Default to fullscreen.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::showCursor |
( |
bool |
b |
) |
[pure virtual] |
|
|
show cursor if b is true, or hide it if b is false NB: This has no effects if a low level mouse is used.
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::swapBuffers |
( |
|
) |
[pure virtual] |
|
|
This swap the back and front buffer (ALL the buffer :) ).
Implemented in NL3D::CDriverUser. |
|
Output a system message box and print a message with an icon.
This method can be call even if the driver is not initialized. This method is used to return internal driver problem when string can't be displayed in the driver window. If the driver can't open a messageBox, it should not override this method and let the IDriver class manage it with the ASCII console. -
Parameters:
-
message |
This is the message to display in the message box. |
title |
This is the title of the message box. |
type |
This is the type of the message box, ie number of button and label of buttons. |
icon |
This is the icon of the message box should use like warning, error etc... |
Implemented in NL3D::CDriverUser. |
virtual void NL3D::UDriver::updateAsyncTexture |
( |
|
) |
[pure virtual] |
|
|
update the manager.
New loaded texture are uploaded. Instances are updated to know if all their pending textures have been uploaded.
Implemented in NL3D::CDriverUser. |
Member Data Documentation
The documentation for this class was generated from the following files:
|
|