mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-05-01 08:38:59 +02:00
[vulkan] BindVertexBuffers2EXT reset per pipeline configuration
This commit is contained in:
parent
47d6360038
commit
a2d830e51b
2 changed files with 11 additions and 0 deletions
|
|
@ -168,6 +168,10 @@ bool Scheduler::UpdateGraphicsPipeline(GraphicsPipeline* pipeline) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pipeline->UsesExtendedDynamicState() && !pipeline->HasDynamicVertexInput()) {
|
||||||
|
state_tracker.InvalidateVertexBufferState();
|
||||||
|
}
|
||||||
|
|
||||||
if (!pipeline->UsesExtendedDynamicState()) {
|
if (!pipeline->UsesExtendedDynamicState()) {
|
||||||
state.needs_state_enable_refresh = true;
|
state.needs_state_enable_refresh = true;
|
||||||
} else if (state.needs_state_enable_refresh) {
|
} else if (state.needs_state_enable_refresh) {
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,13 @@ public:
|
||||||
(*flags)[Dirty::StateEnable] = true;
|
(*flags)[Dirty::StateEnable] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void InvalidateVertexBufferState() {
|
||||||
|
(*flags)[Dirty::VertexBuffers] = true;
|
||||||
|
for (int index = Dirty::VertexBuffer0; index <= Dirty::VertexBuffer31; ++index) {
|
||||||
|
(*flags)[index] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool TouchViewports() {
|
bool TouchViewports() {
|
||||||
const bool dirty_viewports = Exchange(Dirty::Viewports, false);
|
const bool dirty_viewports = Exchange(Dirty::Viewports, false);
|
||||||
const bool rescale_viewports = Exchange(VideoCommon::Dirty::RescaleViewports, false);
|
const bool rescale_viewports = Exchange(VideoCommon::Dirty::RescaleViewports, false);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue