| Age | Commit message (Collapse) | Author |
|
|
|
|
|
Also update related validation messages to indicate src/dest accessMask
|
|
Don't see any language in the spec saying that sample counts need to be valid at
RP begin time. A PSO with matching MSAA state can be bound after the RP is
started.
|
|
Includes shader_checker messages
|
|
|
|
|
|
Header file changes going to 213 version
|
|
Renamed layers from (for example) xxx_DrawState to xxx_draw_state
Renamed JSON files
Renamed libraries
Renamed object_track.* to object_tracker.*
Renamed apidump.h to api_dump.h
Renamed screen_shot layer to screenshot
Renamed APIDump layer settings file options to ApiDump
Bug fixes here and there from prior renames
|
|
Conflicts:
layers/draw_state.cpp
layers/image.cpp
layers/mem_tracker.cpp
|
|
Remove duplicate dag creation and make sure image is valid if read first
in a subpass dag.
|
|
|
|
At draw time, verify that any dynamic descriptors that are bound and used by the
pipeline do not overflow their buffer. This requires checking the combindation of
the pDynamicOffsets value from vkCmdBindDescriptorSets() for each descriptor
along with its offset and range from vkUpdateDescriptors() to makes sure this
combination doesn't overflow the buffer size.
Also added a test to hit this case along with some additional testing for
incorrect dynamicOffsetCount at vkCmdBindDescriptorSets() time.
Conflicts:
layers/draw_state.cpp
|
|
Add functions to check renderpass compatibility based on spec.
Add check for renderPass compatibility at vkBeginCommandBuffers() for a secondary
command buffer where a framebuffer is included. The renderPass for that framebuffer
must be compatible with the renderPass for the secondary command buffer.
Add checks for renderPass compatibility at time vkCmdExecuteCommands() is called.
If secondary command buffer renderPass is not compatible with active renderPass
from primary command buffer, flag an error.
Also added a check at vkCmdExecuteCommands() time to make sure that framebuffer
from active renderPass matches any framebuffer that was set in secondary command
buffer (if any).
Conflicts:
layers/draw_state.cpp
|
|
For all of the vkCmd* calls, we were checking to make CmdBuffer was in RECORDING
state and adding Cmd to internal tracking struct. It cleans up all of the vkCmd*
functions to do the RECORDING check inside of the addCmd() call.
This also fixes a few holes where we weren't doing the RECORDING state check.
Conflicts:
layers/draw_state.cpp
tests/layer_validation_tests.cpp
|
|
According to the spec, framebuffer parameter can be NULL when vkBeginCommandBuffer()
is called on a secondary command buffer, however it may result in lower performance.
Changed this ERROR to a PERF_WARN.
Conflicts:
layers/draw_state.cpp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Conflicts:
demos/tri.c
layers/device_limits.cpp
layers/draw_state.cpp
layers/image.cpp
layers/mem_tracker.cpp
layers/param_checker.cpp
layers/vk_layer_logging.h
loader/debug_report.c
tests/layer_validation_tests.cpp
|
|
|
|
Need the EnumerateInstanceExtensionProperties to report
support for the debug report extension as well as in
the json file because different platforms will use either
the json file (Windows & Linux) or the Enumerate call (Android).
|
|
|
|
|
|
CmdBindPipeline can be inside OR outside a render pass.
|
|
On win32, was using leading-zero count instead of find-first-set.
Caused random failures on Windows release builds.
|
|
DrawState validate_pipeline_shaders is doing something uncool.
|
|
Validation was throwing errors if a CB had extra VBOs bound, and was not
checking each VBO binding explicitly.
Conflicts:
layers/draw_state.cpp
tests/layer_validation_tests.cpp
|
|
|
|
Conflicts:
layers/shader_checker.cpp
|
|
|
|
VkDebugReportObjectTypeLUNARG fits the extension naming requirements
|
|
Conflicts:
layers/mem_tracker.cpp
Conflicts:
layers/draw_state.cpp
|
|
Can only reset individual CmdBuffers if they are allocated from a pool that
included the VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT. Also need to
intercept vkResetCommandPool() function and make sure that all individual
CmdBuffers allocated from that pool are reset when called. Finally, updated
naming of cmdBuffer states (RECORDING & RECORDED) to more closely match spec.
|
|
PIPELINE_NODE was getting treated as POD with memcpy/memsets.
|
|
|
|
Drawstate will warn if this call is made in a renderpass BEFORE making a draw
call. However, this is OK if only a subset of the attachment is being cleared.
|
|
When PSO is created, gather the group of sets that are actually used by that PSO.
Then, at Draw time, verify that for each set used by the bound PSO, there is a
corresponding valid descriptorSet bound which also matches the associated
setLayout from the PSO's pipelineLayout. Added two more tests to the
DescriptorSetCompatibility test case to verify that these checks correctly fire.
|
|
Cleaned up the merge to share data structs. Both layers had maps of descriptorSetLayouts,
pipelineLayouts and renderPasses so merged those into single map for each.
|
|
This is the initial "dumb" merge where a few data structures are now duplicated
within DrawState. This is intentional to simplify the transition and a follow-on
commit will fix these inefficiencies.
Conflicts:
layers/draw_state.cpp
|
|
Conflicts:
layers/draw_state.cpp
|
|
|
|
Caused too many invalid failure messages
|
|
|
|
|
|
|