1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-01-18 11:52:12 +01:00

[dxbc] Consider stream index in signature entry lookup

This commit is contained in:
Philip Rebohle 2018-06-23 20:13:00 +02:00
parent a6c2080156
commit 845c78fd20
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
3 changed files with 6 additions and 3 deletions

View File

@ -952,7 +952,7 @@ namespace dxvk {
for (uint32_t i = 0; i < NumElements; i++) { for (uint32_t i = 0; i < NumElements; i++) {
const DxbcSgnEntry* entry = inputSignature->find( const DxbcSgnEntry* entry = inputSignature->find(
pInputElementDescs[i].SemanticName, pInputElementDescs[i].SemanticName,
pInputElementDescs[i].SemanticIndex); pInputElementDescs[i].SemanticIndex, 0);
if (entry == nullptr) { if (entry == nullptr) {
Logger::debug(str::format( Logger::debug(str::format(

View File

@ -43,9 +43,11 @@ namespace dxvk {
const DxbcSgnEntry* DxbcIsgn::find( const DxbcSgnEntry* DxbcIsgn::find(
const std::string& semanticName, const std::string& semanticName,
uint32_t semanticIndex) const { uint32_t semanticIndex,
uint32_t streamId) const {
for (auto e = this->begin(); e != this->end(); e++) { for (auto e = this->begin(); e != this->end(); e++) {
if (e->semanticIndex == semanticIndex if (e->semanticIndex == semanticIndex
&& e->streamId == streamId
&& compareSemanticNames(semanticName, e->semanticName)) && compareSemanticNames(semanticName, e->semanticName))
return &(*e); return &(*e);
} }

View File

@ -46,7 +46,8 @@ namespace dxvk {
const DxbcSgnEntry* find( const DxbcSgnEntry* find(
const std::string& semanticName, const std::string& semanticName,
uint32_t semanticIndex) const; uint32_t semanticIndex,
uint32_t streamIndex) const;
private: private: