Initial refactoring of gpu/.
Runs too fast - now there are ringbuffer wrapping issues.
This commit is contained in:
@@ -15,3 +15,42 @@ using namespace xe;
|
||||
using namespace xe::gpu;
|
||||
using namespace xe::gpu::xenos;
|
||||
|
||||
|
||||
BufferResource::BufferResource(const MemoryRange& memory_range)
|
||||
: PagedResource(memory_range) {
|
||||
}
|
||||
|
||||
BufferResource::~BufferResource() = default;
|
||||
|
||||
int BufferResource::Prepare() {
|
||||
if (!handle()) {
|
||||
if (CreateHandle()) {
|
||||
XELOGE("Unable to create buffer handle");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (!dirtied_) {
|
||||
return 0;
|
||||
}
|
||||
dirtied_ = false;
|
||||
|
||||
// pass dirty regions?
|
||||
return InvalidateRegion(memory_range_);
|
||||
}
|
||||
|
||||
IndexBufferResource::IndexBufferResource(const MemoryRange& memory_range,
|
||||
const Info& info)
|
||||
: BufferResource(memory_range),
|
||||
info_(info) {
|
||||
}
|
||||
|
||||
IndexBufferResource::~IndexBufferResource() = default;
|
||||
|
||||
VertexBufferResource::VertexBufferResource(const MemoryRange& memory_range,
|
||||
const Info& info)
|
||||
: BufferResource(memory_range),
|
||||
info_(info) {
|
||||
}
|
||||
|
||||
VertexBufferResource::~VertexBufferResource() = default;
|
||||
|
||||
Reference in New Issue
Block a user