diff --git a/decompiler/config/jak3/ntsc_v1/inputs.jsonc b/decompiler/config/jak3/ntsc_v1/inputs.jsonc index b8b5cee32..c8043312d 100644 --- a/decompiler/config/jak3/ntsc_v1/inputs.jsonc +++ b/decompiler/config/jak3/ntsc_v1/inputs.jsonc @@ -35,7 +35,7 @@ "DGO/ARENACST.DGO", // // desert // "DGO/DESA.DGO", - // "DGO/DESB.DGO", + "DGO/DESB.DGO", // "DGO/DESBATTL.DGO", // "DGO/DESBCST.DGO", // "DGO/DESBOSS1.DGO", @@ -273,7 +273,7 @@ // "DGO/LJNDKLEV.DGO", // "DGO/LKEIRA.DGO", // "DGO/LKLEEVER.DGO", - // "DGO/LMECH.DGO", + "DGO/LMECH.DGO", // "DGO/LMHCA.DGO", // "DGO/LMHCB.DGO", // "DGO/LNSTCST.DGO", diff --git a/decompiler/level_extractor/extract_merc.cpp b/decompiler/level_extractor/extract_merc.cpp index bbda59d93..37115056c 100644 --- a/decompiler/level_extractor/extract_merc.cpp +++ b/decompiler/level_extractor/extract_merc.cpp @@ -228,8 +228,14 @@ void update_mode_from_alpha1(GsAlpha reg, DrawMode& mode) { reg.c_mode() == GsAlpha::BlendMode::ZERO_OR_FIXED && reg.d_mode() == GsAlpha::BlendMode::DEST) { // Cv = (Cs - Cd) * FIX + Cd - ASSERT(reg.fix() == 64); - mode.set_alpha_blend(DrawMode::AlphaBlend::SRC_DST_FIX_DST); + if (reg.fix() == 64) { + mode.set_alpha_blend(DrawMode::AlphaBlend::SRC_DST_FIX_DST); + } else if (reg.fix() == 128) { + // Cv = (Cs - Cd) + Cd = Cs... no blend. + mode.set_alpha_blend(DrawMode::AlphaBlend::SRC_SRC_SRC_SRC); + } else { + ASSERT_NOT_REACHED(); + } } else if (reg.a_mode() == GsAlpha::BlendMode::DEST && reg.b_mode() == GsAlpha::BlendMode::SOURCE && reg.c_mode() == GsAlpha::BlendMode::ZERO_OR_FIXED && diff --git a/goal_src/jak3/engine/gfx/texture/texture.gc b/goal_src/jak3/engine/gfx/texture/texture.gc index 37da3de8a..b8c68a7ed 100644 --- a/goal_src/jak3/engine/gfx/texture/texture.gc +++ b/goal_src/jak3/engine/gfx/texture/texture.gc @@ -1421,9 +1421,11 @@ ) ) (((tpage-category hfrag)) - (set! (-> lev upload-size 10) - (upload-vram-pages pool (-> pool segment-common) a2-1 (tex-upload-mode seg0-1-2) bucket) - ) + ;; for PC: disable hfrag texture uploads since we're going to rewrite the renderer. + ;; this saves us from creating the bucket renderer and processing uploads. + ; (set! (-> lev upload-size 10) + ; (upload-vram-pages pool (-> pool segment-common) a2-1 (tex-upload-mode seg0-1-2) bucket) + ; ) ) ) ;; added nonzero check. diff --git a/goal_src/jak3/engine/level/level.gc b/goal_src/jak3/engine/level/level.gc index fcc913ac4..392666019 100644 --- a/goal_src/jak3/engine/level/level.gc +++ b/goal_src/jak3/engine/level/level.gc @@ -3820,9 +3820,10 @@ ((or (= (-> this level i status) 'active) (= (-> this level i status) 'alive) (= (-> this level i status) 'loaded)) - (set! (-> lev-names i) (symbol->string (-> this level i nickname))) + ;; using info nickname since desert's bsp nickname is desert-vis, not dst. + (set! (-> lev-names i) (symbol->string (-> this level i info nickname))) (if (-> this level i display?) - (set! (-> active-lev-names i) (symbol->string (-> this level i nickname)))) + (set! (-> active-lev-names i) (symbol->string (-> this level i info nickname)))) ) ) ) diff --git a/goal_src/jak3/game.gp b/goal_src/jak3/game.gp index a9f83a29e..e2a7a40af 100644 --- a/goal_src/jak3/game.gp +++ b/goal_src/jak3/game.gp @@ -119,7 +119,7 @@ (cgo-file "arenacst.gd" common-dep) ; ;; desert ; (cgo-file "desa.gd" common-dep) -; (cgo-file "desb.gd" common-dep) +(cgo-file "desb.gd" common-dep) ; (cgo-file "desbattl.gd" common-dep) ; (cgo-file "desbcst.gd" common-dep) ; (cgo-file "desboss1.gd" common-dep)