mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-18 13:54:16 +01:00
[dxvk] Don't reset unused bind points
Saves a few CPU cycles when binding resources.
This commit is contained in:
parent
387f41ede5
commit
aaaf2c53e0
@ -120,9 +120,6 @@ namespace dxvk {
|
|||||||
uint32_t slot,
|
uint32_t slot,
|
||||||
const DxvkBufferSlice& buffer) {
|
const DxvkBufferSlice& buffer) {
|
||||||
if (!m_rc[slot].bufferSlice.matches(buffer)) {
|
if (!m_rc[slot].bufferSlice.matches(buffer)) {
|
||||||
m_rc[slot].sampler = nullptr;
|
|
||||||
m_rc[slot].imageView = nullptr;
|
|
||||||
m_rc[slot].bufferView = nullptr;
|
|
||||||
m_rc[slot].bufferSlice = buffer;
|
m_rc[slot].bufferSlice = buffer;
|
||||||
|
|
||||||
m_flags.set(
|
m_flags.set(
|
||||||
@ -138,10 +135,8 @@ namespace dxvk {
|
|||||||
const Rc<DxvkBufferView>& bufferView) {
|
const Rc<DxvkBufferView>& bufferView) {
|
||||||
if (m_rc[slot].imageView != imageView
|
if (m_rc[slot].imageView != imageView
|
||||||
|| m_rc[slot].bufferView != bufferView) {
|
|| m_rc[slot].bufferView != bufferView) {
|
||||||
m_rc[slot].sampler = nullptr;
|
|
||||||
m_rc[slot].imageView = imageView;
|
m_rc[slot].imageView = imageView;
|
||||||
m_rc[slot].bufferView = bufferView;
|
m_rc[slot].bufferView = bufferView;
|
||||||
m_rc[slot].bufferSlice = DxvkBufferSlice();
|
|
||||||
|
|
||||||
m_flags.set(
|
m_flags.set(
|
||||||
DxvkContextFlag::CpDirtyResources,
|
DxvkContextFlag::CpDirtyResources,
|
||||||
@ -155,9 +150,6 @@ namespace dxvk {
|
|||||||
const Rc<DxvkSampler>& sampler) {
|
const Rc<DxvkSampler>& sampler) {
|
||||||
if (m_rc[slot].sampler != sampler) {
|
if (m_rc[slot].sampler != sampler) {
|
||||||
m_rc[slot].sampler = sampler;
|
m_rc[slot].sampler = sampler;
|
||||||
m_rc[slot].imageView = nullptr;
|
|
||||||
m_rc[slot].bufferView = nullptr;
|
|
||||||
m_rc[slot].bufferSlice = DxvkBufferSlice();
|
|
||||||
|
|
||||||
m_flags.set(
|
m_flags.set(
|
||||||
DxvkContextFlag::CpDirtyResources,
|
DxvkContextFlag::CpDirtyResources,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user