22 #ifndef FIFE_LIGHTRENDERER_H 23 #define FIFE_LIGHTRENDERER_H 48 virtual std::string
getName() = 0;
58 virtual std::vector<uint8_t>
getColor() {
return std::vector<uint8_t>(); };
78 virtual std::string
getName() {
return "image"; };
91 virtual std::string
getName() {
return "animation"; };
102 LightRendererSimpleLightInfo(
RendererNode n,
uint8_t intensity,
float radius, int32_t subdivisions,
float xstretch,
float ystretch,
uint8_t r,
uint8_t g,
uint8_t b, int32_t src, int32_t dst);
106 virtual std::string
getName() {
return "simple"; };
131 virtual std::string
getName() {
return "resize"; };
157 std::string
getName() {
return "LightRenderer"; }
163 void addImage(
const std::string &group,
RendererNode n,
ImagePtr image, int32_t src=-1, int32_t dst=-1);
164 void addAnimation(
const std::string &group,
RendererNode n,
AnimationPtr animation, int32_t src=-1, int32_t dst=-1);
165 void addSimpleLight(
const std::string &group,
RendererNode n,
uint8_t intensity,
float radius, int32_t subdivisions,
float xstretch,
float ystretch,
uint8_t r,
uint8_t g,
uint8_t b, int32_t src=-1, int32_t dst=-1);
166 void resizeImage(
const std::string &group,
RendererNode n,
ImagePtr image, int32_t width, int32_t height, int32_t src=-1, int32_t dst=-1);
167 void addStencilTest(
const std::string &group,
uint8_t stencil_ref=0);
168 void removeStencilTest(
const std::string &group);
169 std::list<std::string> getGroups();
170 std::vector<LightRendererElementInfo*> getLightInfo(
const std::string &group);
171 void removeAll(
const std::string &group);
176 std::map<std::string, std::vector<LightRendererElementInfo*> >
m_groups;
virtual int32_t getSubdivisions()
Abstract interface for all the renderbackends.
virtual std::string getName()
virtual std::string getName()
std::vector< RenderItem * > RenderList
virtual ~LightRendererSimpleLightInfo()
void setStencil(uint8_t stencil_ref)
LightRendererElementInfo(RendererNode n, int32_t src, int32_t dst)
virtual ~LightRendererImageInfo()
virtual std::vector< uint8_t > getColor()
virtual float getXStretch()
Interface to class owning the renderers Used to get correct subclass of renderer in scripting side (v...
Camera describes properties of a view port shown in the main screen Main screen can have multiple cam...
virtual std::string getName()=0
int32_t getSubdivisions()
Base class for all view renderers View renderer renders one aspect of the view shown on screen...
virtual std::string getName()
virtual ~LightRendererElementInfo()
std::map< std::string, std::vector< LightRendererElementInfo * > > m_groups
virtual ~LightRendererResizeInfo()
virtual ~LightRendererAnimationInfo()
virtual float getYStretch()
virtual void render(Camera *cam, Layer *layer, RenderList &instances, RenderBackend *renderbackend)=0
virtual float getRadius()
virtual std::string getName()
std::string getName()
Name of the renderer.