30 lines
1.9 KiB
C++
30 lines
1.9 KiB
C++
#pragma once
|
|
class IBaseInterface
|
|
{
|
|
public:
|
|
IBaseInterface();
|
|
virtual ~IBaseInterface();
|
|
|
|
//RENDERER
|
|
virtual void Draw_Polygon(const Elite::Vector2* points, int count, const Elite::Vector3& color, float depth) = 0;
|
|
void Draw_Polygon(const Elite::Vector2* points, int count, const Elite::Vector3& color);
|
|
virtual void Draw_SolidPolygon(const Elite::Vector2* points, int count, const Elite::Vector3& color, float depth, bool triangulate = false) = 0;
|
|
void Draw_SolidPolygon(const Elite::Vector2* points, int count, const Elite::Vector3& color);
|
|
virtual void Draw_Circle(const Elite::Vector2& center, float radius, const Elite::Vector3& color, float depth) = 0;
|
|
void Draw_Circle(const Elite::Vector2& center, float radius, const Elite::Vector3& color);
|
|
virtual void Draw_SolidCircle(const Elite::Vector2& center, float32 radius, const Elite::Vector2& axis, const Elite::Vector3& color, float depth) = 0;
|
|
void Draw_SolidCircle(const Elite::Vector2& center, float32 radius, const Elite::Vector2& axis, const Elite::Vector3& color);
|
|
virtual void Draw_Segment(const Elite::Vector2& p1, const Elite::Vector2& p2, const Elite::Vector3& color, float depth) = 0;
|
|
void Draw_Segment(const Elite::Vector2& p1, const Elite::Vector2& p2, const Elite::Vector3& color);
|
|
virtual void Draw_Direction(const Elite::Vector2& p, Elite::Vector2 dir, float length, const Elite::Vector3& color, float depth = 0.9f) = 0;
|
|
virtual void Draw_Transform(const b2Transform& xf, float depth) = 0;
|
|
void Draw_Transform(const b2Transform& xf);
|
|
virtual void Draw_Point(const Elite::Vector2& p, float size, const Elite::Vector3& color, float depth) = 0;
|
|
void Draw_Point(const Elite::Vector2& p, float size, const Elite::Vector3& color);
|
|
//void Draw_String(int x, int y, const char* string, ...) = 0;
|
|
//virtual void Draw_String(const Elite::Vector2& pw, const char* string, ...) = 0;
|
|
|
|
virtual float NextDepthSlice() = 0;
|
|
};
|
|
|