OpenEnroth cf228e9
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
BaseRenderer Class Reference

#include <BaseRenderer.h>

Inheritance diagram for BaseRenderer:
Renderer NullRenderer OpenGLRenderer

Public Member Functions

 BaseRenderer (std::shared_ptr< GameConfig > config, DecalBuilder *decal_builder, SpellFxRenderer *spellfx, std::shared_ptr< ParticleEngine > particle_engine, Vis *vis)
 
virtual bool Initialize () override
 
virtual void TransformBillboards () override
 
virtual bool AddBillboardIfVisible (Sprite *spr, int palette, const Vec3f &pos, const Vec2f &scale, BillboardFlags flags, Pid id, int sector=0) override
 
virtual void DrawSpriteObjects () override
 
virtual void PrepareDecorationsRenderList_ODM () override
 
virtual void MakeParticleBillboardAndPush (const Particle &p) override
 
virtual float GetGamma () override
 
virtual void BillboardSphereSpellFX (SpellFX_Billboard *a1, Color diffuse) override
 
virtual void DrawMonsterPortrait (const Recti &rc, SpriteFrame *Portrait_Sprite, int Y_Offset) override
 
virtual void DrawSpecialEffectsQuad (GraphicsImage *texture, int palette) override
 
virtual void DrawBillboards_And_MaybeRenderSpecialEffects_And_EndScene () override
 
virtual std::vector< Actor * > getActorsInViewport (int pDepth) override
 
bool Reinitialize (bool firstInit) override
 
virtual Sizei GetRenderDimensions () override
 
virtual Sizei GetPresentDimensions () override
 
virtual Pointi MapToRender (Pointi position) override
 
virtual Pointi MapToPresent (Pointi position) override
 
- Public Member Functions inherited from Renderer
 Renderer (std::shared_ptr< GameConfig > config, DecalBuilder *decal_builder, SpellFxRenderer *spellfx, std::shared_ptr< ParticleEngine > particle_engine, Vis *vis)
 
virtual ~Renderer ()
 
virtual bool Initialize ()=0
 
virtual RgbaImage ReadScreenPixels ()=0
 
virtual void ClearTarget (Color uColor)=0
 
virtual void Present ()=0
 
virtual void BeginLines2D ()=0
 
virtual void EndLines2D ()=0
 
virtual void RasterLine2D (Pointi a, Pointi b, Color acolor, Color bcolor)=0
 
void RasterLine2D (Pointi a, Pointi b, Color color)
 
virtual void BeginScene3D ()=0
 
virtual void MakeParticleBillboardAndPush (const Particle &p)=0
 
virtual float GetGamma ()=0
 
virtual void DrawBillboards_And_MaybeRenderSpecialEffects_And_EndScene ()=0
 
virtual void BillboardSphereSpellFX (SpellFX_Billboard *a1, Color diffuse)=0
 
virtual void TransformBillboards ()=0
 
virtual bool AddBillboardIfVisible (Sprite *spr, int palette, const Vec3f &pos, const Vec2f &scale, BillboardFlags flags, Pid id, int sector=0)=0
 
virtual void DrawProjectile (float srcX, float srcY, float a3, float a4, float dstX, float dstY, float a7, float a8, GraphicsImage *texture)=0
 
virtual TextureRenderId CreateTexture (RgbaImageView image)=0
 
virtual void DeleteTexture (TextureRenderId id)=0
 
virtual void BeginScene2D ()=0
 
virtual void ScreenFade (Color color, float t)=0
 
virtual void SetUIClipRect (const Recti &rect)=0
 
virtual void ResetUIClipRect ()=0
 
virtual void DrawQuad2D (GraphicsImage *texture, const Recti &srcRect, const Recti &dstRect, Color color=colorTable.White)=0
 
void DrawQuad2D (GraphicsImage *texture, const Recti &srcRect, Pointi dstPoint, Color color=colorTable.White)
 
void DrawQuad2D (GraphicsImage *texture, Pointi dstPoint, Color color=colorTable.White)
 
void FillRect (const Recti &rect, Color color)
 
virtual void DrawImage (GraphicsImage *, const Recti &rect, int paletteid=0, Color colourmask32=colorTable.White)=0
 
virtual void BlendTextures (int a2, int a3, GraphicsImage *a4, GraphicsImage *a5, int t, int start_opacity, int end_opacity)=0
 
virtual void DrawMonsterPortrait (const Recti &rc, SpriteFrame *Portrait_Sprite, int Y_Offset)=0
 
virtual void BeginTextNew (GraphicsImage *main, GraphicsImage *shadow)=0
 
virtual void EndTextNew ()=0
 
virtual void DrawTextNew (const Recti &srcRect, const Recti &dstRect, bool isShadow, Color color)=0
 
virtual void DrawOutdoorBuildings ()=0
 
virtual void DrawIndoorSky (int uNumVertices, int uFaceID=0)=0
 
virtual void DrawOutdoorSky ()=0
 
virtual void PrepareDecorationsRenderList_ODM ()=0
 
virtual void DrawSpriteObjects ()=0
 
virtual void DrawOutdoorTerrain ()=0
 
virtual RgbaImage MakeViewportScreenshot (int width, int height)=0
 
virtual RgbaImage MakeFullScreenshot ()=0
 
virtual std::vector< Actor * > getActorsInViewport (int pDepth)=0
 
virtual void BeginDecals ()=0
 
virtual void EndDecals ()=0
 
virtual void DrawDecal (Decal *pDecal, float z_bias)=0
 
virtual void DrawSpecialEffectsQuad (GraphicsImage *texture, int palette)=0
 
virtual void DrawIndoorFaces ()=0
 
virtual void ReleaseTerrain ()=0
 
virtual void ReleaseBSP ()=0
 
virtual void DrawTwodVerts ()=0
 
virtual Sizei GetRenderDimensions ()=0
 
virtual Sizei GetPresentDimensions ()=0
 
virtual Pointi MapToRender (Pointi position)=0
 
virtual Pointi MapToPresent (Pointi position)=0
 
virtual bool Reinitialize (bool firstInit=false)=0
 
virtual bool ReloadShaders ()=0
 
virtual void DoRenderBillboards_D3D ()=0
 
virtual void flushAndScale ()=0
 
virtual void swapBuffers ()=0
 
virtual void beginOverlays ()=0
 
virtual void endOverlays ()=0
 
GraphicsImagesolidFillTexture ()
 

Protected Member Functions

unsigned int NextBillboardIndex ()
 
void SortBillboards ()
 
void TransformBillboard (const RenderBillboard *pBillboard, int parent)
 

Protected Attributes

Sizei outputRender = {0, 0}
 
Sizei outputPresent = {0, 0}
 
- Protected Attributes inherited from Renderer
DecalBuilderdecal_builder = nullptr
 
SpellFxRendererspell_fx_renderer = nullptr
 
std::shared_ptr< ParticleEngineparticle_engine = nullptr
 
Visvis = nullptr
 

Private Member Functions

void updateRenderDimensions ()
 

Additional Inherited Members

- Public Attributes inherited from Renderer
std::shared_ptr< GameConfigconfig = nullptr
 
Color uFogColor
 
RenderBillboardD3D pBillboardRenderListD3D [MAX_BILLBOARDS_D3D]
 
std::array< RenderBillboardD3D *, MAX_BILLBOARDS_D3DpSortedBillboardRenderListD3D
 
unsigned int uNumBillboardsToDraw
 
int drawcalls
 
- Static Public Attributes inherited from Renderer
static const int MAX_BILLBOARDS_D3D = 5000
 

Constructor & Destructor Documentation

◆ BaseRenderer()

BaseRenderer::BaseRenderer ( std::shared_ptr< GameConfig config,
DecalBuilder decal_builder,
SpellFxRenderer spellfx,
std::shared_ptr< ParticleEngine particle_engine,
Vis vis 
)
inline

Member Function Documentation

◆ AddBillboardIfVisible()

bool BaseRenderer::AddBillboardIfVisible ( Sprite spr,
int  palette,
const Vec3f pos,
const Vec2f scale,
BillboardFlags  flags,
Pid  id,
int  sector = 0 
)
overridevirtual

Implements Renderer.

◆ BillboardSphereSpellFX()

void BaseRenderer::BillboardSphereSpellFX ( SpellFX_Billboard a1,
Color  diffuse 
)
overridevirtual

Implements Renderer.

◆ DrawBillboards_And_MaybeRenderSpecialEffects_And_EndScene()

void BaseRenderer::DrawBillboards_And_MaybeRenderSpecialEffects_And_EndScene ( )
overridevirtual

Implements Renderer.

◆ DrawMonsterPortrait()

void BaseRenderer::DrawMonsterPortrait ( const Recti rc,
SpriteFrame Portrait_Sprite,
int  Y_Offset 
)
overridevirtual

Implements Renderer.

◆ DrawSpecialEffectsQuad()

void BaseRenderer::DrawSpecialEffectsQuad ( GraphicsImage texture,
int  palette 
)
overridevirtual

Implements Renderer.

◆ DrawSpriteObjects()

void BaseRenderer::DrawSpriteObjects ( )
overridevirtual

Implements Renderer.

◆ getActorsInViewport()

std::vector< Actor * > BaseRenderer::getActorsInViewport ( int  pDepth)
overridevirtual

Implements Renderer.

◆ GetGamma()

float BaseRenderer::GetGamma ( )
overridevirtual

Implements Renderer.

◆ GetPresentDimensions()

Sizei BaseRenderer::GetPresentDimensions ( )
overridevirtual

Implements Renderer.

◆ GetRenderDimensions()

Sizei BaseRenderer::GetRenderDimensions ( )
overridevirtual

Implements Renderer.

◆ Initialize()

bool BaseRenderer::Initialize ( )
overridevirtual

Implements Renderer.

Reimplemented in NullRenderer, and OpenGLRenderer.

◆ MakeParticleBillboardAndPush()

void BaseRenderer::MakeParticleBillboardAndPush ( const Particle p)
overridevirtual

Implements Renderer.

◆ MapToPresent()

Pointi BaseRenderer::MapToPresent ( Pointi  position)
overridevirtual

Implements Renderer.

◆ MapToRender()

Pointi BaseRenderer::MapToRender ( Pointi  position)
overridevirtual

Implements Renderer.

◆ NextBillboardIndex()

unsigned int BaseRenderer::NextBillboardIndex ( )
protected

◆ PrepareDecorationsRenderList_ODM()

void BaseRenderer::PrepareDecorationsRenderList_ODM ( )
overridevirtual

Implements Renderer.

◆ Reinitialize()

bool BaseRenderer::Reinitialize ( bool  firstInit)
overridevirtual

Implements Renderer.

Reimplemented in NullRenderer, and OpenGLRenderer.

◆ SortBillboards()

void BaseRenderer::SortBillboards ( )
protected

◆ TransformBillboard()

void BaseRenderer::TransformBillboard ( const RenderBillboard pBillboard,
int  parent 
)
protected

◆ TransformBillboards()

void BaseRenderer::TransformBillboards ( )
overridevirtual

Implements Renderer.

◆ updateRenderDimensions()

void BaseRenderer::updateRenderDimensions ( )
private

Member Data Documentation

◆ outputPresent

Sizei BaseRenderer::outputPresent = {0, 0}
protected

◆ outputRender

Sizei BaseRenderer::outputRender = {0, 0}
protected

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