#pragma once /* This code is the heart of engine. Here is the render and resource manager */ #include "include/Utils/Utils.h" #include "include/SimpleLand/SimpleLand.h" #include "include/Render/SalmonRender/SalmonRenderInterface.h" namespace SE { class TSalmonRenderer : public TSalmonRendererInterface { protected: bool IsCameraTransparentToLand; //To make it work you must setup LandToCalcCollision TSimpleLandClass* LandToCalcCollision; float FogBeginDistance; float FogEndDistance; vec4 FogColor; //Other data: float ShadowClampValue; virtual void DrawQuad(const T2DQuad& quad); public: TSalmonRenderer(); ~TSalmonRenderer(); bool BindOpenGLFunctions(); void SetLandToCalcCollision(TSimpleLandClass* landToCalcCollision); float GetShadowClampValue(); void SetShadowClampValue(float shadowClampValue); float GetFogBeginDistance(); float GetFogEndDistance(); vec4 GetFogColor(); void DrawTriangleList(const TTriangleList& triangleList); }; } //namespace SE