mirror of
https://github.com/beefytech/Beef.git
synced 2025-07-04 23:36:00 +02:00
Additional 3d support
This commit is contained in:
parent
369bb0640c
commit
39c140f44a
27 changed files with 4063 additions and 126 deletions
|
@ -143,6 +143,12 @@ enum CullMode : int8
|
|||
CullMode_Back
|
||||
};
|
||||
|
||||
enum Topology3D : int8
|
||||
{
|
||||
Topology3D_TriangleList,
|
||||
Topology3D_LineLine
|
||||
};
|
||||
|
||||
enum TextureFlag : int8
|
||||
{
|
||||
TextureFlag_Additive = 1,
|
||||
|
@ -183,8 +189,10 @@ public:
|
|||
DepthFunc mDepthFunc;
|
||||
bool mClipped;
|
||||
bool mTexWrap;
|
||||
bool mWireframe;
|
||||
Rect mClipRect;
|
||||
CullMode mCullMode;
|
||||
Topology3D mTopology;
|
||||
|
||||
public:
|
||||
RenderState();
|
||||
|
@ -192,10 +200,12 @@ public:
|
|||
|
||||
virtual void SetShader(Shader* shader) { mShader = shader; }
|
||||
virtual void SetTexWrap(bool wrap) { mTexWrap = wrap; }
|
||||
virtual void SetWireframe(bool wireframe) { mWireframe = wireframe; }
|
||||
virtual void SetClipped(bool clipped) { mClipped = clipped; }
|
||||
virtual void SetClipRect(const Rect& rect) { mClipRect = rect; }
|
||||
virtual void SetWriteDepthBuffer(bool writeDepthBuffer) { mWriteDepthBuffer = writeDepthBuffer; }
|
||||
virtual void SetDepthFunc(DepthFunc depthFunc) { mDepthFunc = depthFunc; }
|
||||
virtual void SetTopology(Topology3D topology) { mTopology = topology; }
|
||||
};
|
||||
|
||||
class PoolData
|
||||
|
@ -241,6 +251,12 @@ public:
|
|||
}
|
||||
};
|
||||
|
||||
enum ModelCreateFlags
|
||||
{
|
||||
ModelCreateFlags_None = 0,
|
||||
ModelCreateFlags_NoSetRenderState = 1
|
||||
};
|
||||
|
||||
class RenderDevice
|
||||
{
|
||||
public:
|
||||
|
@ -272,7 +288,7 @@ public:
|
|||
virtual void RemoveRenderWindow(RenderWindow* renderWindow);
|
||||
|
||||
virtual RenderState* CreateRenderState(RenderState* srcRenderState);
|
||||
virtual ModelInstance* CreateModelInstance(ModelDef* modelDef) { return NULL; }
|
||||
virtual ModelInstance* CreateModelInstance(ModelDef* modelDef, ModelCreateFlags flags) { return NULL; }
|
||||
virtual VertexDefinition* CreateVertexDefinition(VertexDefData* elementData, int numElements);
|
||||
|
||||
virtual void FrameStart() = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue