urt-rs / docs /research /QVM_VECTOR_ANGLES.md
nmarshall's picture
qvm: vector angle conversion
f3ff093
|
Raw History Blame Contribute Delete
1.12 kB

Complete vector-to-angle helper and alias behavior

RE-661. Reproduce with python3 scripts/analyze_qvm_vector_angles.py; check with python3 scripts/test_qvm_vector_angles.py. The machine report retains source identity and bounded fixtures.

Complete62945–63119 writes negative pitch, yaw and zero roll. Zero horizontal input bypasses all native math and selects pitch90 for positive z, otherwise270; thus the zero vector writes−270, not a normalized zero angle. General input uses yaw atan2(y,x), a rounded horizontal length and pitch atan2(z,length), with single positive-turn corrections before negating pitch. Exact input/output alias works because the source completes input reads before publication. Finite math.atan2/sqrt are supplied native models and do not establish original library bit parity; partial overlaps and nonfinite domains remain open.

No original executable/full QVM/native collision/physics/rendering executes. Native responses and legal input domains are supplied or unverified where stated; full runtime/macOS/Linux Rust/Bevy/Solari gameplay remains open.