diff options
author | Nikolay Korolev <nickvnuk@gmail.com> | 2020-05-04 14:58:12 +0300 |
---|---|---|
committer | Nikolay Korolev <nickvnuk@gmail.com> | 2020-05-04 14:58:12 +0300 |
commit | 20ffccbe2a4d021c5c40f32ac1af43ba470e302a (patch) | |
tree | 1ce414638dbbd09f2da139479dc67be793471eba /src | |
parent | d1a46c35ce4012e74b8a9955d8e6e4dcc562b57d (diff) | |
parent | f027c3afed0dd273cfb8607df3084c1588a3e814 (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src')
-rw-r--r-- | src/fakerw/fake.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/fakerw/fake.cpp b/src/fakerw/fake.cpp index 9cee41c7..76d7865c 100644 --- a/src/fakerw/fake.cpp +++ b/src/fakerw/fake.cpp @@ -450,6 +450,7 @@ RwBool RwIm3DRenderPrimitive(RwPrimitiveType primType); RwBool RwRenderStateSet(RwRenderState state, void *value) { uint32 uival = (uintptr)value; + uint32 fog; switch(state){ case rwRENDERSTATETEXTURERASTER: SetRenderState(TEXTURERASTER, uival); return true; case rwRENDERSTATETEXTUREADDRESS: SetRenderState(TEXTUREADDRESS, uival); return true; @@ -465,7 +466,14 @@ RwBool RwRenderStateSet(RwRenderState state, void *value) case rwRENDERSTATEVERTEXALPHAENABLE: SetRenderState(VERTEXALPHA, uival); return true; case rwRENDERSTATEBORDERCOLOR: return true; case rwRENDERSTATEFOGENABLE: SetRenderState(FOGENABLE, uival); return true; - case rwRENDERSTATEFOGCOLOR: SetRenderState(FOGCOLOR, uival); return true; + case rwRENDERSTATEFOGCOLOR: + // have to swap R and B here + fog = (uival>>16)&0xFF; + fog |= (uival&0xFF)<<16; + fog |= uival&0xFF00; + fog |= uival&0xFF000000; + SetRenderState(FOGCOLOR, fog); + return true; case rwRENDERSTATEFOGTYPE: return true; case rwRENDERSTATEFOGDENSITY: return true; case rwRENDERSTATEFOGTABLE: return true; |