mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-19 21:42:59 +01:00
Fixed: BGFX_TEXTURE_MSAA_SAMPLE and msaa sampling bugs with gl (#3351)
* fixed: multiple BGFX_TEXTURE_MSAA_SAMPLE attachments could not be present in a framebuffer at once (sample locations were not fixed) I've just set the sample location as always fixed for now, although technically this can be false if only 1 msaa texture attachment is present * fixed: framebuffer with a resolved msaa AND a sample msaa at the same time would result in an invalid framebuffer it would try to also resolve the sample-msaa texture at the same, leading to an invalid target type * fixed: depth attachments could not be sample-msaa this is valid, they don't resolving * fixed: shader error sampking msaa textures in gl parameter duplication on texelFetch(sampler2DMS,*) led to failed shaders
This commit is contained in:
@@ -4594,13 +4594,13 @@ namespace bgfx
|
||||
++depth;
|
||||
|
||||
BGFX_ERROR_CHECK(
|
||||
// if BGFX_TEXTURE_RT_MSAA_X2 or greater than BGFX_TEXTURE_RT_WRITE_ONLY is required
|
||||
// if BGFX_TEXTURE_RT with no MSSA then WRITE_ONLY is not required.
|
||||
// if BGFX_TEXTURE_RT_MSAA_X2 or greater than either BGFX_TEXTURE_RT_WRITE_ONLY or BGFX_TEXTURE_MSAA_SAMPLE is required
|
||||
// if BGFX_TEXTURE_RT with no MSSA then this is not required.
|
||||
(1 == ((tr.m_flags & BGFX_TEXTURE_RT_MSAA_MASK) >> BGFX_TEXTURE_RT_MSAA_SHIFT))
|
||||
|| (0 != (tr.m_flags & BGFX_TEXTURE_RT_WRITE_ONLY))
|
||||
|| (0 != (tr.m_flags & (BGFX_TEXTURE_RT_WRITE_ONLY | BGFX_TEXTURE_MSAA_SAMPLE)))
|
||||
, _err
|
||||
, BGFX_ERROR_FRAME_BUFFER_VALIDATION
|
||||
, "Frame buffer depth MSAA texture cannot be resolved. It must be created with `BGFX_TEXTURE_RT_WRITE_ONLY` flag."
|
||||
, "Frame buffer depth MSAA texture cannot be resolved. It must be created with either `BGFX_TEXTURE_RT_WRITE_ONLY` or `BGFX_TEXTURE_MSAA_SAMPLE` flag."
|
||||
, "Attachment %d, texture flags 0x%016" PRIx64 "."
|
||||
, ii
|
||||
, tr.m_flags
|
||||
|
||||
Reference in New Issue
Block a user