Public Member Functions | |
| Renderer (int screenW, int screenH, Common::RenderMode renderMode, bool authenticGraphics) | |
| virtual void | init ()=0 |
| virtual void | setViewport (const Common::Rect &rect)=0 |
| virtual void | flipBuffer () |
| virtual void | useColor (uint8 r, uint8 g, uint8 b)=0 |
| virtual void | depthTesting (bool enabled) |
| virtual void | polygonOffset (bool enabled)=0 |
| virtual Texture * | createTexture (const Graphics::Surface *surface, bool is3D=false)=0 |
| Graphics::Surface * | convertImageFormatIfNecessary (Graphics::ManagedSurface *surface) |
| virtual void | freeTexture (Texture *texture)=0 |
| virtual void | drawTexturedRect2D (const Common::Rect &screenRect, const Common::Rect &textureRect, Texture *texture)=0 |
| virtual void | renderSensorShoot (byte color, const Math::Vector3d sensor, const Math::Vector3d player, const Common::Rect &viewPort)=0 |
| virtual void | renderPlayerShootBall (byte color, const Common::Point &position, int frame, const Common::Rect &viewPort)=0 |
| virtual void | renderPlayerShootRay (byte color, const Common::Point &position, const Common::Rect &viewPort)=0 |
| virtual void | renderCrossair (const Common::Point &crossairPosition)=0 |
| virtual void | renderCube (const Math::Vector3d &position, const Math::Vector3d &size, Common::Array< uint8 > *colours, Common::Array< uint8 > *ecolours, float offset=0.0) |
| virtual void | renderRectangle (const Math::Vector3d &position, const Math::Vector3d &size, Common::Array< uint8 > *colours, Common::Array< uint8 > *ecolours, float offset=0.0) |
| virtual void | renderPolygon (const Math::Vector3d &origin, const Math::Vector3d &size, const Common::Array< float > *ordinates, Common::Array< uint8 > *colours, Common::Array< uint8 > *ecolours, float offset=0.0) |
| virtual void | renderPyramid (const Math::Vector3d &origin, const Math::Vector3d &size, const Common::Array< float > *ordinates, Common::Array< uint8 > *colours, Common::Array< uint8 > *ecolours, int type) |
| virtual void | renderFace (const Common::Array< Math::Vector3d > &vertices)=0 |
| void | setColorRemaps (ColorReMap *colorRemaps) |
| virtual void | clear (uint8 r, uint8 g, uint8 b, bool ignoreViewport=false)=0 |
| virtual void | drawFloor (uint8 color)=0 |
| virtual void | drawBackground (uint8 color) |
| void | drawEclipse (uint8 color1, uint8 color2, float difference) |
| virtual void | drawSkybox (Texture *texture, Math::Vector3d camera) |
| virtual void | drawThunder (Texture *texture, Math::Vector3d camera, float size) |
| virtual void | drawCelestialBody (Math::Vector3d position, float radius, uint8 color) |
| Common::Rect | viewport () const |
| virtual Common::Point | nativeResolution () |
| void | readFromPalette (uint8 index, uint8 &r, uint8 &g, uint8 &b) |
| void | setPaletteValue (uint8 index, uint8 r, uint8 g, uint8 b) |
| uint8 | indexFromColor (uint8 r, uint8 g, uint8 b) |
| uint8 | mapEGAColor (uint8 index) |
| bool | getRGBAt (uint8 index, uint8 ecolor, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| bool | getRGBAtC64 (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| bool | getRGBAtCGA (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| bool | getRGBAtCPC (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| bool | getRGBAtEGA (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2) |
| bool | getRGBAtZX (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| bool | getRGBAtHercules (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1, uint8 &r2, uint8 &g2, uint8 &b2, byte *&stipple) |
| void | extractCPCIndexes (uint8 cm1, uint8 cm2, uint8 &i1, uint8 &i2) |
| void | extractC64Indexes (uint8 cm1, uint8 cm2, uint8 &i1, uint8 &i2) |
| void | selectColorFromFourColorPalette (uint8 index, uint8 &r1, uint8 &g1, uint8 &b1) |
| virtual void | setStippleData (byte *data) |
| virtual void | useStipple (bool enabled) |
| void | scaleStipplePattern (byte originalPattern[128], byte newPattern[128]) |
| void | setColorMap (ColorMap *colorMap_) |
| void | clearColorPairArray () |
| void | fillColorPairArray () |
| virtual void | positionCamera (const Math::Vector3d &pos, const Math::Vector3d &interest, float rollAngle=0.0f)=0 |
| virtual void | updateProjectionMatrix (float fov, float aspectRatio, float nearClipPlane, float farClipPlane)=0 |
| Math::Matrix4 | getMvpMatrix () const |
| virtual Graphics::Surface * | getScreenshot ()=0 |
| void | flipVertical (Graphics::Surface *s) |
| bool | computeScreenViewport () |
Public Attributes | |
| Graphics::PixelFormat | _texturePixelFormat |
| bool | _isAccelerated |
| bool | _authenticGraphics |
| byte | _defaultStippleArray [128] |
| byte * | _variableStippleArray |
| float | _skyNormals [16][3] |
| float | _skyUvs1008 [16][2] |
| float | _skyUvs128 [16][2] |
| float | _skyVertices [16][3] |
| unsigned int | _skyIndices [24] |
| byte * | _palette |
| ColorMap * | _colorMap |
| ColorReMap * | _colorRemaps |
| byte | _colorPair [16] |
| int | _keyColor |
| int | _inkColor |
| int | _paperColor |
| int | _underFireBackgroundColor |
| Common::Point | _shakeOffset |
| byte | _stipples [16][128] |
| int | _scale |
| int | _screenW |
| int | _screenH |
| Common::RenderMode | _renderMode |
Protected Member Functions | |
| Math::Matrix4 | makeProjectionMatrix (float fov, float nearClipPlane, float farClipPlane) const |
Protected Attributes | |
| Common::Rect | _screenViewport |
| Common::Rect | _viewport |
| Common::Rect | _unscaledViewport |
| Math::Matrix4 | _projectionMatrix |
| Math::Matrix4 | _modelViewMatrix |
| Math::Matrix4 | _mvpMatrix |
| Math::Frustum | _frustum |
|
inlinevirtual |
Swap the buffers, making the drawn screen visible
Reimplemented in Freescape::OpenGLShaderRenderer, and Freescape::TinyGLRenderer.
|
pure virtual |
Select the window where to render
This also sets the viewport
Implemented in Freescape::OpenGLShaderRenderer, and Freescape::TinyGLRenderer.
| byte Freescape::Renderer::_defaultStippleArray[128] |
| float Freescape::Renderer::_skyNormals[16][3] |
| float Freescape::Renderer::_skyUvs1008[16][2] |
| float Freescape::Renderer::_skyUvs128[16][2] |
| float Freescape::Renderer::_skyVertices[16][3] |
| unsigned int Freescape::Renderer::_skyIndices[24] |