11 Commits

Author SHA1 Message Date
Kai Ninomiya
794d4faece null backend: fix resource usage after cmdbuf transition (#63)
and test it.
2017-07-07 11:47:40 -07:00
Corentin Wallez
fffe6dfa16 Split backend/common in backend/ and common/
This directory used to contain both the state tracking code for the
backends, and the common utilities that could be used both by the
backends and the rest of the code. Things are now:

 - src/common is utility code for the whole repo
 - src/backend contains libNXT's code
 - src/utils is utility code that we don't want in libNXT

This commit also changes all includes to use global paths from src/
bacause it had to touch a bunch of #include statements anyway.
2017-07-06 17:54:52 -04:00
Corentin Wallez
dbb5729e64 Add Device::Tick for periodic work 2017-06-15 13:27:50 -07:00
Austin Eng
459537491b Refactor TransitionUsage to use abstract TransitionUsageImpl 2017-06-14 13:53:52 -04:00
Austin Eng
39c901d3dc Change usage requirements for Buffer::SetSubData to require TransferDst
instead of MapWrite bit
2017-06-14 13:53:52 -04:00
Corentin Wallez
43bfaae340 Null: implement fake async BufferMapRead
We want to test BufferMapRead validation using the null backend. To get
closer to conditions on a real backend, we call the callback only on the
next Queue::Submit. This is because on real backends, we would have to
wait for the GPU to be finished with the buffer, to be sure the correct
data is read.
2017-06-13 08:30:01 -07:00
Corentin Wallez
c863b1c26f ToBackend: Add support for Device 2017-06-13 08:30:01 -07:00
Corentin Wallez
b1c19eeb4f Add Buffer::MapReadAsync state-tracking 2017-06-13 08:30:01 -07:00
Austin Eng
376f1c6a8e fix formatting 2017-06-02 12:13:39 -07:00
Austin Eng
3efcf2172d Add DepthStencilState
Add depth and stencil tests. This is currently only implemented for the
OpenGL API. HelloDepthStencil is a test using the depth and stencil
buffers to do reflections. Currently clearing / stencil clearing is not
working properly.
2017-06-02 12:13:39 -07:00
Corentin Wallez
79a62bf6e3 Create a Null backend.
This will be useful to run validation unittests without using the GPU.
2017-05-24 15:23:53 -04:00