10#ifndef fsCNativeSpritehdr
11#define fsCNativeSpritehdr
13#include <Magnum/Math/Matrix4.h>
14#include <Magnum/GL/GL.h>
15#include <Magnum/GL/Mesh.h>
16#include <Magnum/Shaders/FlatGL.h>
35 static Magnum::Shaders::FlatGL3D *
mShader;
57 void vertsSetDo(std::vector<fsVec2d>
const& pVerts)
override;
60 void brushSetDo(std::shared_ptr<fsCBrush> pBrush)
override;
73 struct TriangleVertex {
74 Magnum::Vector2 position;
75 Magnum::Vector2 textureCoordinates;
78 std::shared_ptr<fsCBrush> mBrush;
81 Magnum::GL::Texture2D* mTexture;
82 Magnum::GL::Mesh mMesh;
Definition fsAffineMtx2d.h:27
Definition fsCNativeSprite.h:31
friend class fsCNativeSpriteRenderData
Definition fsCNativeSprite.h:32
void vertsSetDo(std::vector< fsVec2d > const &pVerts) override
std::shared_ptr< fsCBrush > brushGet() const
static Magnum::Shaders::FlatGL3D * mShader
Definition fsCNativeSprite.h:35
void alphaBlendModeSetDo(fsS32 pAlphaBlendMode) override
void heightSetDo(fsS32 pHeight) override
void textureWrapSetDo() override
void colourSetDo(const fsSColour4B &pColour) override
void widthSetDo(fsS32 pWidth) override
void uvSetDo(const fsRect &pOffest) override
void polygonInfoSetDo(fsIRenderData::fsSPolyInfo const &pPolyInfo) override
void brushSetDo(std::shared_ptr< fsCBrush > pBrush) override
void matrixApplyDo(const fsAffineMtx2d &pRenderMatrix) override
static Magnum::Matrix4 projectionMatrix
Definition fsCNativeSprite.h:36
fsBool hitTest(const fsPoint &pLocalPos, fsBool pRequireHitMap) const
virtual ~fsCNativeSprite()
Definition fsINative.h:31
fsF32 mRenderMatrix[16]
Definition fsINative.h:68
Definition fsSColour.h:20
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIRenderData.h:44
Definition fsSColour.h:54