DragonNest/Common/EternityEngine/EtPrimitiveDraw.h
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

40 lines
1.6 KiB
C++

#pragma once
#include "EtCamera.h"
class CEtPrimitiveDraw : public CSingleton< CEtPrimitiveDraw >
{
public:
CEtPrimitiveDraw(void);
virtual ~CEtPrimitiveDraw(void);
protected:
CEtCustomMeshStream m_Line2DStream;
CEtCustomMeshStream m_Triangle2DStream;
CEtCustomMeshStream m_QuadTex2DStream;
std::vector < EtBaseTexture * > m_vecQuad2DTexture;
CEtCustomMeshStream m_Point3DApplyZStream;
CEtCustomMeshStream m_Point3DStream;
CEtCustomMeshStream m_Line3DStream;
CEtCustomMeshStream m_Triangle3DStream;
CEtCustomMeshStream m_QuadTex3DStream;
std::vector < EtBaseTexture * > m_vecQuad3DTexture;
public:
void Clear();
void Render( EtCameraHandle hActiveCamera );
void DrawLine2D( EtVector2 &Start, EtVector2 &End, DWORD dwColor );
void DrawTriangle2D( EtVector2 &Point1, EtVector2 &Point2, EtVector2 &Point3, DWORD dwColor );
void DrawPoint3D( EtVector3 &Point, DWORD dwColor, EtMatrix *pWorldMat = NULL, bool bIgnoreZBuffer = true );
void DrawLine3D( EtVector3 &Start, EtVector3 &End, DWORD dwColor, EtMatrix *pWorldMat = NULL );
void DrawTriangle3D( EtVector3 &Point1, EtVector3 &Point2, EtVector3 &Point3, DWORD dwColor, EtMatrix *pWorldMat = NULL );
void DrawTriangle3D( EtVector3 *pBuffer, int dwTriangleCount, DWORD dwColor, EtMatrix *pWorldMat = NULL );
void DrawTriangle3D( SPrimitiveDraw3D *pBuffer, int dwTriangleCount );
void DrawQuad3DWithTex( EtVector3 *pVertices, EtVector2 *pTexCoord, EtBaseTexture *pTexture, EtMatrix *pWorldMat = NULL );
void DrawQuad2DWithTex( EtVector4 *pVertices, EtVector2 *pTexCoord, EtBaseTexture *pTexture );
void Flush();
};