2 #include "ParaRegion.h" 3 #include "qtransform.h" 4 #include "PaintEngine.h" 5 #include "SpriteRenderer.h" 6 #include "PaintEngineGPUState.h" 11 class CPaintEngineState;
31 static void DestroyInstance();
34 void InitDeviceObjects();
35 void RestoreDeviceObjects();
36 void InvalidateDeviceObjects();
37 void DeleteDeviceObjects();
63 virtual bool IsScissorRectSupported()
const;;
64 virtual bool IsStencilSupported()
const;;
65 virtual void clip(
const QRect & rect, ClipOperation op = ReplaceClip);
75 virtual void drawLines(
const QLine *lines,
int lineCount);
76 virtual void drawLines(
const QLineF *lines,
int lineCount);
77 virtual void drawLines(
const Vector3 *vertices,
int lineCount);
79 virtual void drawPolygon(
const QPointF *points,
int pointCount, PolygonDrawMode mode);
80 virtual void drawPolygon(
const QPoint *points,
int pointCount, PolygonDrawMode mode);
82 virtual void drawTriangles(
const Vector3* vertices,
int nTriangleCount);
87 virtual HRESULT DrawRect(
const RECT* rect,
Color color,
float depth);
91 virtual HRESULT drawText(
SpriteFontEntity* pFont,
const char* strText,
int nCount,
RECT* rect, DWORD dwTextFormat, DWORD textColor);
92 virtual HRESULT drawText(
SpriteFontEntity* pFont,
const char16_t* strText,
int nCount,
RECT* rect, DWORD dwTextFormat, DWORD textColor);;
95 virtual void transformChanged();
97 void SetMatrixDirty();
99 virtual void penChanged();
100 virtual void brushChanged();
101 virtual void brushOriginChanged();
102 virtual void opacityChanged();
103 virtual void clipEnabledChanged();
104 virtual void transformModeChanged();
105 virtual void compositionModeChanged();
107 void RenderMask(
const RECT& rcWindow);
108 void ApplyCompositionMode(CPainter::CompositionMode mode);
109 void regenerateClip();
110 void systemStateChanged();
111 void updateClipScissorTest();
112 float AdjustLineWidth(
float fLineThickness,
const Vector3& vPos);
114 float GetPixelWidthAtPos(
const Vector3& vPos);
117 const Matrix4& GetWorldViewProjectMatrix();
120 const Matrix4& GetWorldViewMatrix();
121 const Vector3& GetWorldScaling();
122 void UpdateWorldViewParams();
126 #ifdef USE_DIRECTX_RENDERER 128 IDirect3DStateBlock9* m_pStateBlock;
133 static bool s_IsScissorRectSupported;
134 static bool s_IsStencilSupported;
135 bool m_bUse3DTransform;
139 bool m_compositionModeDirty;
141 bool m_worldViewProjectMatDirty;
142 bool m_worldViewMatDirty;
Which DXT Compression to Use? Obviously, there are some trade-offs between the different formats whic...
Definition: TextureEntity.h:29
opengl/directX renderer
Definition: PaintEngineGPU.h:24
Definition: ParaPoint.h:203
different physics engine has different winding order.
Definition: EventBinding.h:32
Definition: ManagedDef.h:18
Definition: ParaLine.h:151
Definition: ParaRect.h:517
virtual void Flush()
flush sprite
Definition: PaintEngineGPU.cpp:230
when concerting QRect with QRectF and RECT, we ensure that their left, top and width, height are the same.
Definition: ParaRect.h:16
Standard 3-dimensional vector.
Definition: ParaVector3.h:16
Definition: PainterState.h:25
CSpriteRenderer * GetSprite()
get the global sprite object used to draw texture and images
Definition: PaintEngineGPU.cpp:199
virtual bool IsUse3DTransform()
return false by default.
Definition: PaintEngineGPU.cpp:404
base class for a surface to paint to.
Definition: Painter.h:38
Class encapsulating a standard 4x4 homogeneous matrix.
Definition: ParaMatrix4.h:23
Definition: ParaPoint.h:5
The CPaintEngine class provides an abstract definition of how CPainter draws to a given device on a g...
Definition: PaintEngine.h:34
virtual void SetUse3DTransform(bool bUse3DSpaceTransform)
by default, transforms are in 2d screen space.
Definition: PaintEngineGPU.cpp:399
base class for a surface to paint to.
Definition: PaintDevice.h:10
painter state, such as selected pen, brush, etc.
Definition: PaintEngine.h:178
Definition: ParaColor.h:275
virtual void ApplyStateChanges()
apply transform and blending mode, etc before drawing.
Definition: PaintEngineGPU.cpp:235
Definition: PaintEngineGPUState.h:6
base class for sprite renderer
Definition: SpriteRenderer.h:55
Definition: SpriteFontEntity.h:26