00001 #pragma once
00002
00003 #include <d3d10.h>
00004
00005
00006 class GeometryBuffer
00007 {
00008
00009
00010 protected:
00011 unsigned int numIndices;
00012 unsigned int numUndrawnIndices;
00013 ID3D10Buffer* vertexBuffer;
00014 ID3D10Buffer* indexBuffer;
00015 ID3D10Device* device;
00016 UINT stride;
00017
00018 public:
00019 GeometryBuffer(ID3D10Device* device);
00020 virtual bool create( unsigned int numIndices, UINT vertexSize, const D3D10_BUFFER_DESC *vertexBufferDesc, const D3D10_BUFFER_DESC *indexBufferDesc, const D3D10_SUBRESOURCE_DATA *initialVertexData, const D3D10_SUBRESOURCE_DATA *initialIndexData);
00021 virtual void bind();
00022 virtual ~GeometryBuffer();
00023 bool hasContents() const;
00024 virtual void draw();
00025 virtual void newFrame();
00026 };