Per-pilot mech paint: wire the color/badge/patch substitution end-to-end
- Mech::resourceNameA/B/C -> real CString members (the binary's 16-byte CStringRepresentation; deep-copy bind from the MakeMessage = FUN_00402a98, implicit member dtors) + paint-name accessors - SetupMaterialSubstitutionList reads the real egg names ([paint] log); TearDown clears the callback first (FUN_004d11e8) - dpl_SetMaterialNameCallback is real now (L4VIDEO registry); bgfload MaterialResolver::resolve() applies it to every material name -- the port analogue of the dpl board rewriting names at load - MP_BHMC.EGG: color=Red -> Crimson (vehicletable has no Red; binary Fail()ed) Verified live 2-node MP: crimson MadCat with hip hazard stripes + yellow VGL leg emblems; white Blackhawk + emblems; replicants painted on both nodes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
dda517b65c
commit
e0474ff92a
@@ -247,17 +247,11 @@ LWord BT_GetSegmentFlags(Mech *owner)
|
||||
return owner ? owner->simulationFlags : 0;
|
||||
}
|
||||
|
||||
//===========================================================================//
|
||||
// Legacy libDPL material-name callback.
|
||||
//---------------------------------------------------------------------------//
|
||||
// The dpl2d_ 2D display-list API (NewDisplayList/Begin/SetColor/Circle/
|
||||
// PushMatrix/PopMatrix/MoveTo/End/Compile) was MOVED OUT of this file and
|
||||
// reimplemented over Direct3D 9 in decomp/reconstructed/dpl2d.cpp (the HUD/
|
||||
// reticle 2D layer). Only the 3D material-name-substitution hook -- which is
|
||||
// part of the world renderer, not the 2D HUD -- remains stubbed here.
|
||||
// TODO(bring-up): wire the material substitution table (FUN_00459eb8).
|
||||
//===========================================================================//
|
||||
void dpl_SetMaterialNameCallback(char *(*)(char *)) {}
|
||||
// dpl_SetMaterialNameCallback is now REAL (per-pilot mech paint): it lives in
|
||||
// engine/MUNGA_L4/L4VIDEO.cpp next to substituteMaterial, and the BGF loader
|
||||
// (bgfload.cpp MaterialResolver::resolve) applies the installed callback to
|
||||
// every material name -- the port analogue of the dpl board rewriting names
|
||||
// at dpl_LoadObject time (FUN_0049664c / FUN_00459eb8).
|
||||
|
||||
//===========================================================================//
|
||||
// BTL4VideoRenderer helper methods whose bodies were not reconstructed.
|
||||
|
||||
Reference in New Issue
Block a user