mirror of
https://github.com/EduApps-CDG/OpenDX
synced 2024-12-30 09:45:37 +01:00
[dxbc] Fixed bug in decoder that would return wrong component masks
This commit is contained in:
parent
5739e2f60f
commit
d941446ca0
@ -168,8 +168,9 @@ namespace dxvk {
|
|||||||
uint32_t numOpcodeTokens = 1;
|
uint32_t numOpcodeTokens = 1;
|
||||||
|
|
||||||
if (token.isExtended()) {
|
if (token.isExtended()) {
|
||||||
while (DxbcOpcodeTokenExt(m_op.getWord(numOpcodeTokens++)).isExtended())
|
numOpcodeTokens += 1;
|
||||||
continue;
|
while (DxbcOpcodeTokenExt(m_op.getWord(numOpcodeTokens)).isExtended())
|
||||||
|
numOpcodeTokens += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_args = m_op + numOpcodeTokens;
|
m_args = m_op + numOpcodeTokens;
|
||||||
|
@ -284,7 +284,8 @@ namespace dxvk {
|
|||||||
* \c DxbcComponentSelectionMode::Select1.
|
* \c DxbcComponentSelectionMode::Select1.
|
||||||
*/
|
*/
|
||||||
DxbcComponentMask componentSelection() const {
|
DxbcComponentMask componentSelection() const {
|
||||||
return DxbcComponentMask(bit::extract(m_token, 4, 5));
|
uint32_t id = bit::extract(m_token, 4, 5);
|
||||||
|
return DxbcComponentMask(id == 0, id == 1, id == 2, id == 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user