Searchlight beam: the btfx brighten material class + BT_SPOT_SELF rig
SPOT.BGF decoded: a 7-vert cone from the mount, ~50u forward and ~35deg DOWN
(a ground-pool lamp, not an air beam), verts tinted cyan-white, material
class 'brighten' smuggling its additive factor in DIFFUSE.r (0.25) with a
warm emissive on the night page. The loader had never met the class -- it
drew as an opaque dark-red blob. Now: brightenFactor parsed (name-gated to
brighten*), batch -> L4DRAWOP.brightenAlpha, drawn in the blend pass as an
additive veil (dest += vertexRGB x factor), unlit. [T3] tint compose
(vertex cyan vs night emissive warm) noted in the draw branch -- field
eyeball accepted the current look.
BT_SPOT_SELF=1 (bench-only): builds the cone on the own-cockpit tree so the
BT_CAM=face view can inspect it solo. KB: view toggle is BACKTICK ('V' is
the rear-view hold since #68 -- the toggle skips bound keys); stale V-toggle
claims swept.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
7d8f109241
commit
b75bb4a04c
@@ -210,7 +210,12 @@ void
|
||||
// is how a night mission starts on nosearchlightfog.
|
||||
tree.searchFogCache[tree.searchLightCount] =
|
||||
(*attrs[sl] == 0);
|
||||
if (!tree.searchIsCockpit)
|
||||
// BT_SPOT_SELF=1 (bench-only): build the cone on the
|
||||
// OWN-cockpit tree too, so the V-chase camera can
|
||||
// eyeball it solo. Authentic builds never cone the
|
||||
// cockpit tree (the 1995 view-1 branch stashes attrs
|
||||
// only) -- keep this env off outside look benches.
|
||||
if (!tree.searchIsCockpit || getenv("BT_SPOT_SELF"))
|
||||
{
|
||||
// NB: the renderer-level LoadObject wrapper (@00498448) is
|
||||
// still a btstubs no-op; load through the d3d route the
|
||||
|
||||
Reference in New Issue
Block a user