feat(gx): stub ffp state syncing in d3d backend

This commit is contained in:
fallenoak 2023-04-15 10:04:29 -05:00 committed by GitHub
parent 36fa30eba8
commit 4a1101bd7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 1 deletions

View File

@ -1580,7 +1580,11 @@ void CGxDeviceD3d::IStateSync() {
this->IShaderConstantsFlush(); this->IShaderConstantsFlush();
this->IRsSync(0); this->IRsSync(0);
// TODO ffp if vertex shader is disabled if (this->m_hwRenderStates[GxRs_VertexShader] == nullptr && this->m_appRenderStates[GxRs_VertexShader].m_value == nullptr) {
this->IStateSyncLights();
this->IStateSyncMaterial();
this->IStateSyncXforms();
}
this->IStateSyncEnables(); this->IStateSyncEnables();
@ -1611,6 +1615,14 @@ void CGxDeviceD3d::IStateSyncIndexPtr() {
} }
} }
void CGxDeviceD3d::IStateSyncLights() {
// TODO
}
void CGxDeviceD3d::IStateSyncMaterial() {
// TODO
}
void CGxDeviceD3d::IStateSyncVertexPtrs() { void CGxDeviceD3d::IStateSyncVertexPtrs() {
if (this->m_primVertexFormat < GxVertexBufferFormats_Last && this->m_d3dVertexDecl[this->m_primVertexFormat]) { if (this->m_primVertexFormat < GxVertexBufferFormats_Last && this->m_d3dVertexDecl[this->m_primVertexFormat]) {
auto d3dVertexDecl = this->m_d3dVertexDecl[this->m_primVertexFormat]; auto d3dVertexDecl = this->m_d3dVertexDecl[this->m_primVertexFormat];
@ -1691,6 +1703,10 @@ void CGxDeviceD3d::IStateSyncVertexPtrs() {
} }
} }
void CGxDeviceD3d::IStateSyncXforms() {
// TODO
}
void CGxDeviceD3d::ITexCreate(CGxTex* texId) { void CGxDeviceD3d::ITexCreate(CGxTex* texId) {
uint32_t width, height, startLevel, endLevel; uint32_t width, height, startLevel, endLevel;
this->ITexWHDStartEnd(texId, width, height, startLevel, endLevel); this->ITexWHDStartEnd(texId, width, height, startLevel, endLevel);

View File

@ -294,7 +294,10 @@ class CGxDeviceD3d : public CGxDevice {
void IStateSync(); void IStateSync();
void IStateSyncEnables(); void IStateSyncEnables();
void IStateSyncIndexPtr(); void IStateSyncIndexPtr();
void IStateSyncLights();
void IStateSyncMaterial();
void IStateSyncVertexPtrs(); void IStateSyncVertexPtrs();
void IStateSyncXforms();
void ITexCreate(CGxTex* texId); void ITexCreate(CGxTex* texId);
void ITexUpload(CGxTex* texId); void ITexUpload(CGxTex* texId);
void IXformSetProjection(const C44Matrix& matrix); void IXformSetProjection(const C44Matrix& matrix);