KB: audio Phase 3+4 status -> AUDIO_FIDELITY.md + wintesla-port.md
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
0e2401fb52
commit
a8f14e1c24
@@ -93,9 +93,30 @@ on top of it. Full detail: `docs/PROGRESS_LOG.md §5b, §8`.
|
||||
- **Published `localVelocity` smoothing is authentic** [T1]: `Mech::Execute` (FUN_004ab430) runs
|
||||
the localVelocity components through `AverageOf` running-average filters
|
||||
(part_012.c:15169-15179); the port's ~0.25 s exponential filter in `mech4.cpp` reconstructs it.
|
||||
- Remaining (per `docs/AUDIO_FIDELITY.md` §5): EFX (authored low-pass fc/Q, reverb), F5 footstep
|
||||
contact level, F19 remove the mech2.cpp step broadcast, F6/F7 ReportLeak + missile-lock attrs,
|
||||
Torso attrs, F23 AnimationState numbering audit.
|
||||
- **Phases 3+4 SHIPPED (2026-07-16, commits 0ca7d26..0e2401f).** Phase 3 EFX: `L4AUDEFX`
|
||||
bridge — per-source lowpass (Dyn3D = highFreqCutoffScale×brightness UNGATED, Static/Direct =
|
||||
brightness; AWE 100–8000 Hz → 5 kHz-ref gainhf [T3 curve]), one EAXReverb slot at
|
||||
global_reverb_scale 0.3 (3D wet / cockpit Direct dry), Direct position-enum placement.
|
||||
Phase 4 attributes (all [T1] from binary attribute tables, walked as 16-byte
|
||||
{id,name,off+1,pad} rows): **HeatSink table @0x50e438 (ids 3..12)** confirms every heat
|
||||
binding + adds ReportLeak id 12 @0x138 = coolantActive (serves all 19 leak watchers via
|
||||
PoweredSubsystem⊂HeatSink); **Mech table @0x50c0xx (ids 21..56)**: IncomingLock@0x3fc /
|
||||
DistanceToMissile@0x400 (real members, Missile::MoveAndCollide reports, PerformAndWatch
|
||||
latches; old `maxSpeed@0x400` was a misread of the FLT_MAX far default),
|
||||
CollisionSpeed@0x4B4 (=|impact velocity| at contact-arm), ReduceButton@0x340,
|
||||
FootStep@0x394, RearFiring@0x410 (old `stateFlags` misread); **Torso table (ids 3..15)**:
|
||||
full publish onto existing members (SpeedOfTorsoHorizontal=twistVelocity@0x1E8 abs'd,
|
||||
MotionState=statusFlags@0x20C, ==2 = limit-hit frame). **F5 footStep = CONTACT LEVEL**:
|
||||
(jointlocal.y <= *ANI hdr[2] threshold) per frame, states 0/1 retain (SelectSequence now
|
||||
captures hdr[2]; the 150 ms pulse is retired). **F19**: the authored footstep volume =
|
||||
LocalAcceleration |lin| [0,10]→ctl100 + LocalVelocity |lin| [0,0.6]→ctl101 (ALL motion
|
||||
watchers extract |linearMotion|, motionValue=3); localAcceleration.linear = d(published
|
||||
velocity)/dt (binary part_012.c:15186-15195); the mech2.cpp step broadcast is REMOVED.
|
||||
**attrnull count = 0** — every authored audio attribute binds a real member.
|
||||
- Still deferred: UnstablePercentage@0x3F0 (needs the gyro sway/overspeed model — its live
|
||||
writer is unexported), F21 attack velocity/time (all captured events were default 1),
|
||||
per-zone static filter fc/Q baking (F14 residue), F22 HRTF (user has 2 speakers; enable
|
||||
via alsoft.ini `hrtf=true` for headphones).
|
||||
- **L4 HAL on Windows + the VS build system: DONE.** [T1]
|
||||
- **Red Planet game logic: COMPLETE & buildable** — `VTV/VTVMPPR/WEAPSYS/...`. RP is at/near playable. [T1]
|
||||
- **Multiplayer: the DOS `NETNUB` driver is already replaced by a ~3.5k-line WinSock2 TCP
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
# Audio Fidelity Audit — btl4.exe OpenAL Port vs. Original AWE32/HMI-SOS
|
||||
|
||||
> **STATUS (2026-07-16): Phases 1-4 SHIPPED** (commits fc7f311, 691e885, 0ca7d26,
|
||||
> cc2b109..0e2401f). Fixed: F1-F5, F7, F9-F13, F15, F16, F18-F20, F23, KB items;
|
||||
> F6 fixed (ReportLeak -> coolantActive@0x138, binary table [T1]); F14 partial
|
||||
> (attenuation baked; static fc/Q deferred); F17 partial (CollisionSpeed +
|
||||
> ReduceButton real; UnstablePercentage deferred on the gyro sway model);
|
||||
> F8/F21/F22 open (voice budget unhit / attack polish / HRTF option).
|
||||
> attrnull = 0: every authored audio attribute binds a real member.
|
||||
|
||||
|
||||
**Date:** 2026-07-15
|
||||
**Scope:** Full fidelity audit of the OpenAL audio reconstruction against the original 1995
|
||||
semantics: the authored audio object streams (`content/audit_capture.log` traces), the WinTesla
|
||||
|
||||
Reference in New Issue
Block a user