mirror of https://github.com/bkaradzic/bgfx
Added submit depth value for sorting.
This commit is contained in:
parent
d4c7545b1e
commit
c5fdfc27a2
|
@ -554,11 +554,11 @@ namespace bgfx
|
|||
///
|
||||
void setTexture(uint8_t _stage, UniformHandle _sampler, RenderTargetHandle _handle, bool _depth = false);
|
||||
|
||||
///
|
||||
void submit(uint8_t _id);
|
||||
/// Submit primitive for rendering into single view.
|
||||
void submit(uint8_t _id, int32_t _depth = 0);
|
||||
|
||||
///
|
||||
void submitMask(uint32_t _viewMask);
|
||||
/// Submit primitive for rendering into multiple views.
|
||||
void submitMask(uint32_t _viewMask, int32_t _depth = 0);
|
||||
|
||||
///
|
||||
void saveScreenShot(const char* _filePath);
|
||||
|
|
15
src/bgfx.cpp
15
src/bgfx.cpp
|
@ -417,7 +417,7 @@ namespace bgfx
|
|||
return PredefinedUniform::Count;
|
||||
}
|
||||
|
||||
void Frame::submit(uint8_t _id)
|
||||
void Frame::submit(uint8_t _id, int32_t _depth)
|
||||
{
|
||||
if (m_discard)
|
||||
{
|
||||
|
@ -432,6 +432,7 @@ namespace bgfx
|
|||
return;
|
||||
}
|
||||
|
||||
m_key.m_depth = _depth;
|
||||
m_key.m_view = _id;
|
||||
m_key.m_seq = s_ctx.m_seq[_id] & s_ctx.m_seqMask[_id];
|
||||
s_ctx.m_seq[_id]++;
|
||||
|
@ -448,7 +449,7 @@ namespace bgfx
|
|||
m_flags = BGFX_STATE_NONE;
|
||||
}
|
||||
|
||||
void Frame::submitMask(uint32_t _viewMask)
|
||||
void Frame::submitMask(uint32_t _viewMask, int32_t _depth)
|
||||
{
|
||||
if (m_discard)
|
||||
{
|
||||
|
@ -463,6 +464,8 @@ namespace bgfx
|
|||
return;
|
||||
}
|
||||
|
||||
m_key.m_depth = _depth;
|
||||
|
||||
for (uint32_t id = 0, viewMask = _viewMask, ntz = uint32_cnttz(_viewMask); 0 != viewMask; viewMask >>= 1, id += 1, ntz = uint32_cnttz(viewMask) )
|
||||
{
|
||||
viewMask >>= ntz;
|
||||
|
@ -1221,14 +1224,14 @@ namespace bgfx
|
|||
s_ctx.m_submit->setTexture(_stage, _sampler, _handle, _depth);
|
||||
}
|
||||
|
||||
void submit(uint8_t _id)
|
||||
void submit(uint8_t _id, int32_t _depth)
|
||||
{
|
||||
s_ctx.m_submit->submit(_id);
|
||||
s_ctx.m_submit->submit(_id, _depth);
|
||||
}
|
||||
|
||||
void submitMask(uint32_t _viewMask)
|
||||
void submitMask(uint32_t _viewMask, int32_t _depth)
|
||||
{
|
||||
s_ctx.m_submit->submitMask(_viewMask);
|
||||
s_ctx.m_submit->submitMask(_viewMask, _depth);
|
||||
}
|
||||
|
||||
void saveScreenShot(const char* _filePath)
|
||||
|
|
|
@ -1187,8 +1187,8 @@ namespace bgfx
|
|||
}
|
||||
}
|
||||
|
||||
void submit(uint8_t _id);
|
||||
void submitMask(uint32_t _viewMask);
|
||||
void submit(uint8_t _id, int32_t _depth);
|
||||
void submitMask(uint32_t _viewMask, int32_t _depth);
|
||||
void sort();
|
||||
|
||||
bool checkAvailTransientIndexBuffer(uint16_t _num)
|
||||
|
|
Loading…
Reference in New Issue