mirror of
https://github.com/EduApps-CDG/OpenDX
synced 2024-12-30 09:45:37 +01:00
Co-authored-by: Philip Rebohle <philip.rebohle@tu-dortmund.de> Co-authored-by: Robin Kertels <robin.kertels@gmail.com> Co-authored-by: pchome <pchome@users.noreply.github.com> Co-authored-by: Christopher Egert <cme3000@gmail.com> Co-authored-by: Derek Lesho <dereklesho52@Gmail.com> Co-authored-by: Luis Cáceres <lacaceres97@gmail.com> Co-authored-by: Nelson Chen <crazysim@gmail.com> Co-authored-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Co-authored-by: Riesi <riesi@opentrash.com> Co-authored-by: gbMichelle <gbmichelle.dev@gmail.com>
39 lines
870 B
C++
39 lines
870 B
C++
#pragma once
|
|
|
|
#include "dxso_decoder.h"
|
|
|
|
namespace dxvk {
|
|
|
|
struct DxsoIsgnEntry {
|
|
uint32_t regNumber = 0;
|
|
uint32_t slot = 0;
|
|
DxsoSemantic semantic = DxsoSemantic{ DxsoUsage::Position, 0 };
|
|
DxsoRegMask mask = IdentityWriteMask;
|
|
bool centroid = false;
|
|
};
|
|
|
|
struct DxsoIsgn {
|
|
std::array<
|
|
DxsoIsgnEntry,
|
|
2 * DxsoMaxInterfaceRegs> elems;
|
|
uint32_t elemCount = 0;
|
|
};
|
|
|
|
struct DxsoDefinedConstant {
|
|
uint32_t uboIdx;
|
|
|
|
// Only float constants may be indexed.
|
|
// So that's the only ones we care about putting in the UBO.
|
|
float float32[4];
|
|
};
|
|
|
|
using DxsoDefinedConstants = std::vector<DxsoDefinedConstant>;
|
|
|
|
struct DxsoShaderMetaInfo {
|
|
bool needsConstantCopies = false;
|
|
uint32_t maxConstIndexF = 0;
|
|
uint32_t maxConstIndexI = 0;
|
|
uint32_t maxConstIndexB = 0;
|
|
};
|
|
|
|
} |