BT410 5.3.80: joint articulation is live -- 22 nodes, and the twist reaches the board
RecurseSKLFile now builds a joint renderable for any node whose page name resolves to a live skeleton Joint: HingeX/Y/Z -> HingeRenderable (watching Joint::GetHinge), Ball -> BallJointRenderable (watching GetEulerAngles), otherwise the static path. Each holds the rest offset in one DCS and the live rotation in a child DCS, and its Execute diffs the watched value and calls DPL_FLUSH_DCS -- the engine's own mechanism (L4VIDRND.CPP:1026+). The value comes from the mech's JointSubsystem via ResolveJoint, so sim and renderer read one source. Gated on BT_JOINTS while it proves out. [skl] video\max.skl -> 26 nodes, 1 objects, 1 eye, 22 articulated The bridge reported anim_abs=1 joints=0 twist=+0.00 before; it now reports joints=1 twist=-0.86, matching the game's [torso] twist=-0.856. With the mech stationary, frames that differed by 0.0% now differ by 62-80%. A crash it exposed: Mech::ResolveJoint passed segment->GetJointIndex() straight to GetJoint unchecked, and a segment with no joint reports -1 -- GetNthImplementation then indexes [base + -1*4] and dies (guest 00426A1D). Torso never hit it because it only asks for its own authored joint name; the walk asks for every page. Now bounds-checked against GetJointCount. Open: the canopy does not stay rigid in the view, though it and the eye hang off the same articulated node. Cancelling the bridge's cage compensation (CAGE_TWIST_SIGN=0) did not close it. Leading hypothesis: SetupCull builds worldToEyeMatrix from GetSegmentToWorld(siteeyepoint) -- the SIMULATION's segment transform -- independent of the render tree, so the canopy follows our render chain and the eye follows the sim's, and they diverge whenever one carries the twist and the other does not. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
LOG: Early LOG Init complete
|
||||
LOG: CONFIG: Loaded config file: C:/VWE/TeslaRel410/emulator/render-bridge/pod_render_rec.conf
|
||||
LOG: CONFIG: Loaded config file: C:/VWE/TeslaRel410/emulator/render-bridge/pod_render_twist.conf
|
||||
LOG: DOSBox-X's working directory: C:\VWE\TeslaRel410\emulator\src\src
|
||||
LOG: Logging init: beginning logging proper. This is the end of the early init logging
|
||||
LOG: Logging: No logfile was given. All further logging will be discarded.
|
||||
@@ -65,14 +65,15 @@ LOG: COMMAND.COM stack: 0x0749
|
||||
LOG: pixratio 1.350, dw false, dh false
|
||||
LOG: Aspect ratio: 720 x 540 xToY=1.333 yToX=0.750
|
||||
LOG: SHELL:Redirect output to COM3
|
||||
LOG: VPXLOG: fifosock client connected
|
||||
VPX lights@f1: type6=0 typeE=0 decoded=0 dir=0 amb(0.00,0.00,0.00)
|
||||
LOG: 170637927 ERROR MOUSE:Unhandled videomode 79 on reset
|
||||
LOG: 267953636 ERROR MOUSE:Unhandled videomode 79 on reset
|
||||
LOG: pixratio 1.000, dw false, dh false
|
||||
LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750
|
||||
VPX lightnode t=6 nb=52: [8]00000000/0 [12]00000000/0 [16]00000001/1.4013e-45 [20]3f800000/1 [24]3f800000/1 [28]3f800000/1 [32]64078678/1e+22 [36]64078678/1e+22 [40]00000000/0 [44]3cc82385/0.024431 [48]ffffffff/nan
|
||||
VPX lightnode t=6 nb=52: [8]00000000/0 [12]00000000/0 [16]00000001/1.4013e-45 [20]3f800000/1 [24]3f800000/1 [28]3f800000/1 [32]64078678/1e+22 [36]64078678/1e+22 [40]cd00d703/-1.35098e+08 [44]cb00d809/-8.44391e+06 [48]ffffffff/nan
|
||||
VPX lights@f121: type6=2 typeE=6 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f241: type6=2 typeE=7 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
VPX lights@f241: type6=2 typeE=6 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f361: type6=2 typeE=7 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
@@ -178,255 +179,3 @@ VPX lights@f6361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
BattleTech v4.10
|
||||
BTL4Application::BTL4Application
|
||||
Reference to a page you don't own
|
||||
PF cr2= 7000 FA64 at 00FF 0000 66D9
|
||||
Unhandled exception 000E at 00FF 66D9 ErrCode 0004
|
||||
@@ -0,0 +1,432 @@
|
||||
LOG: Early LOG Init complete
|
||||
LOG: CONFIG: Loaded config file: C:/VWE/TeslaRel410/emulator/render-bridge/pod_render_rec.conf
|
||||
LOG: DOSBox-X's working directory: C:\VWE\TeslaRel410\emulator\src\src
|
||||
LOG: Logging init: beginning logging proper. This is the end of the early init logging
|
||||
LOG: Logging: No logfile was given. All further logging will be discarded.
|
||||
LOG: DOSBox-X version 2026.06.02 Commit d75a57c (MinGW SDL2 64-bit)
|
||||
LOG: Prevent capture: 0
|
||||
LOG: SDL: version 2.32.10, Video windows, Audio directsound
|
||||
LOG: EXPERIMENTAL: Debugger enabled for MinGW build, DOSBox-X crashes depending on the terminal software you use. Launching from command prompt (cmd.exe) is recommended.
|
||||
LOG: Windows keyboard layout ID is 0x0409
|
||||
LOG: Host keyboard layout is now us (US English)
|
||||
LOG: Mapper keyboard layout is now us (US English)
|
||||
LOG: SDL2 reports desktop display mode 3440 x 1440
|
||||
LOG: OpenGL Version : 4.6.0 NVIDIA 610.47
|
||||
LOG: Configured windowposition: -
|
||||
LOG: SDL: Current window pixel format: SDL_PIXELFORMAT_RGB888
|
||||
LOG: SDL: You are running in 24 bpp mode, this will slow down things!
|
||||
LOG: Releasing keyboard
|
||||
LOG: SDL: Windows 11 round corners will be disabled.
|
||||
LOG: Screen report: Method 'Win98base' (3440.000 x 1440.000 pixels) at (0.000 x 0.000) (910.167 x 381.000 mm) (35.833 x 15.000 in) (96.000 x 96.000 DPI)
|
||||
LOG: ISA BCLK: 8333333.333Hz (25000000/3)
|
||||
LOG: monopal: green,
|
||||
LOG: Active save slot: 1 [Empty]
|
||||
LOG: USING AVI+ZMBV
|
||||
LOG: Pentium CMPXCHG8B emulation is enabled
|
||||
LOG: Max 1073741824 sz 32768
|
||||
LOG: Final 32768
|
||||
LOG: Final arrangement: Below 4GB = 32768KB, Above 4GB = 0KB
|
||||
LOG: VPXLOG: fifosock listening on 127.0.0.1:8621
|
||||
LOG: VPXLOG: live render backend started
|
||||
LOG: VPXLOG: base 0x150 respond=1 handshakes=3 log='C:\Users\cyd\AppData\Local/Temp/vwe-pod/vpxresp.txt'
|
||||
LOG: MIDI:Opened device:win32
|
||||
LOG: mic_input: Selected microphone device: Microphone (Steam Streaming Microphone)
|
||||
LOG: One joystick reported, initializing with 4axis
|
||||
LOG: Using joystick Xbox One Controller with 6 axes, 16 buttons and 1 hat(s)
|
||||
LOG: VOODOO LFB now at d0000000
|
||||
LOG: Serial1: BASE 3f8h
|
||||
LOG: Serial1: namedpipe client of \\.\pipe\vrio (poll 0.10ms burst x16)
|
||||
LOG: Serial1: namedpipe connected to \\.\pipe\vrio
|
||||
LOG: Serial2: BASE 2f8h
|
||||
LOG: Serial2: namedpipe client of \\.\pipe\vplasma (poll 1.00ms burst x1)
|
||||
LOG: Serial2: namedpipe connected to \\.\pipe\vplasma
|
||||
LOG: Serial3: BASE 3e8h
|
||||
LOG: Serial: port 3 will write to file C:\VWE\TeslaRel410\emulator\render-bridge\podlog.txt
|
||||
LOG: Parallel1: BASE 378h
|
||||
LOG: MPU-401 Registering I/O ports as if IBM PC MPU-401 at base 330h
|
||||
LOG: Memory I/O complexity optimization enabled aka option 'memory io optimization 1'. If the game or demo is unable to draw to the screen properly, set the option to false.
|
||||
LOG: The 'scanline render on demand' option is available and may provide a modest boost in video render performance if set to true.
|
||||
LOG: Allocated APM BIOS pm entry point at f000:ce40
|
||||
LOG: Writing code to fce40
|
||||
LOG: Writing code to fce60
|
||||
LOG: Windows: IID_ITaskbarList3 is available
|
||||
LOG: ISA Plug & Play BIOS enabled
|
||||
LOG: VGA ROM BIOS init callback
|
||||
LOG: pixratio 1.000, dw false, dh false
|
||||
LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750
|
||||
LOG: WARNING: No translation support (to host) for code page 0
|
||||
LOG: DOS keyboard layout loaded with main language code US for layout us
|
||||
LOG: XMS: 50 handles allocated for use by the DOS environment
|
||||
LOG: EMS page frame at 0xe000-0xefff
|
||||
LOG: COMMAND.COM env size: 720 bytes
|
||||
LOG: COMMAND.COM environment block: 0x0701 sz=0x002d
|
||||
LOG: COMMAND.COM main body (PSP): 0x072f sz=0x009a
|
||||
LOG: COMMAND.COM stack: 0x0749
|
||||
LOG: pixratio 1.350, dw false, dh false
|
||||
LOG: Aspect ratio: 720 x 540 xToY=1.333 yToX=0.750
|
||||
LOG: SHELL:Redirect output to COM3
|
||||
VPX lights@f1: type6=0 typeE=0 decoded=0 dir=0 amb(0.00,0.00,0.00)
|
||||
LOG: 170637927 ERROR MOUSE:Unhandled videomode 79 on reset
|
||||
LOG: pixratio 1.000, dw false, dh false
|
||||
LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750
|
||||
VPX lightnode t=6 nb=52: [8]00000000/0 [12]00000000/0 [16]00000001/1.4013e-45 [20]3f800000/1 [24]3f800000/1 [28]3f800000/1 [32]64078678/1e+22 [36]64078678/1e+22 [40]00000000/0 [44]3cc82385/0.024431 [48]ffffffff/nan
|
||||
VPX lights@f121: type6=2 typeE=6 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f241: type6=2 typeE=7 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f361: type6=2 typeE=7 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f1921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f2881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f3961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f4921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f5881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f6961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f7921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f8881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f9961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f10921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f11881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f12961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f13921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f14881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f15961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f16921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f17881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18721: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18841: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f18961: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19081: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19201: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19321: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19441: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19561: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19681: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19801: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f19921: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20041: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20161: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20281: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20401: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20521: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20641: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20761: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f20881: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21001: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21121: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21241: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21361: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21481: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f21601: type6=2 typeE=8 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
@@ -0,0 +1,80 @@
|
||||
LOG: Early LOG Init complete
|
||||
LOG: CONFIG: Loaded config file: C:/VWE/TeslaRel410/emulator/render-bridge/pod_render_twist.conf
|
||||
LOG: DOSBox-X's working directory: C:\VWE\TeslaRel410\emulator\src\src
|
||||
LOG: Logging init: beginning logging proper. This is the end of the early init logging
|
||||
LOG: Logging: No logfile was given. All further logging will be discarded.
|
||||
LOG: DOSBox-X version 2026.06.02 Commit d75a57c (MinGW SDL2 64-bit)
|
||||
LOG: Prevent capture: 0
|
||||
LOG: SDL: version 2.32.10, Video windows, Audio directsound
|
||||
LOG: EXPERIMENTAL: Debugger enabled for MinGW build, DOSBox-X crashes depending on the terminal software you use. Launching from command prompt (cmd.exe) is recommended.
|
||||
LOG: Windows keyboard layout ID is 0x0409
|
||||
LOG: Host keyboard layout is now us (US English)
|
||||
LOG: Mapper keyboard layout is now us (US English)
|
||||
LOG: SDL2 reports desktop display mode 3440 x 1440
|
||||
LOG: OpenGL Version : 4.6.0 NVIDIA 610.47
|
||||
LOG: Configured windowposition: -
|
||||
LOG: SDL: Current window pixel format: SDL_PIXELFORMAT_RGB888
|
||||
LOG: SDL: You are running in 24 bpp mode, this will slow down things!
|
||||
LOG: Releasing keyboard
|
||||
LOG: SDL: Windows 11 round corners will be disabled.
|
||||
LOG: Screen report: Method 'Win98base' (3440.000 x 1440.000 pixels) at (0.000 x 0.000) (910.167 x 381.000 mm) (35.833 x 15.000 in) (96.000 x 96.000 DPI)
|
||||
LOG: ISA BCLK: 8333333.333Hz (25000000/3)
|
||||
LOG: monopal: green,
|
||||
LOG: Active save slot: 1 [Empty]
|
||||
LOG: USING AVI+ZMBV
|
||||
LOG: Pentium CMPXCHG8B emulation is enabled
|
||||
LOG: Max 1073741824 sz 32768
|
||||
LOG: Final 32768
|
||||
LOG: Final arrangement: Below 4GB = 32768KB, Above 4GB = 0KB
|
||||
LOG: VPXLOG: fifosock listening on 127.0.0.1:8621
|
||||
LOG: VPXLOG: live render backend started
|
||||
LOG: VPXLOG: base 0x150 respond=1 handshakes=3 log='C:\Users\cyd\AppData\Local/Temp/vwe-pod/vpxresp.txt'
|
||||
LOG: MIDI:Opened device:win32
|
||||
LOG: mic_input: Selected microphone device: Microphone (Steam Streaming Microphone)
|
||||
LOG: One joystick reported, initializing with 4axis
|
||||
LOG: Using joystick Xbox One Controller with 6 axes, 16 buttons and 1 hat(s)
|
||||
LOG: VOODOO LFB now at d0000000
|
||||
LOG: Serial1: BASE 3f8h
|
||||
LOG: Serial1: namedpipe client of \\.\pipe\vrio (poll 0.10ms burst x16)
|
||||
LOG: Serial1: namedpipe connected to \\.\pipe\vrio
|
||||
LOG: Serial2: BASE 2f8h
|
||||
LOG: Serial2: namedpipe client of \\.\pipe\vplasma (poll 1.00ms burst x1)
|
||||
LOG: Serial2: namedpipe connected to \\.\pipe\vplasma
|
||||
LOG: Serial3: BASE 3e8h
|
||||
LOG: Serial: port 3 will write to file C:\VWE\TeslaRel410\emulator\render-bridge\podlog.txt
|
||||
LOG: Parallel1: BASE 378h
|
||||
LOG: MPU-401 Registering I/O ports as if IBM PC MPU-401 at base 330h
|
||||
LOG: Memory I/O complexity optimization enabled aka option 'memory io optimization 1'. If the game or demo is unable to draw to the screen properly, set the option to false.
|
||||
LOG: The 'scanline render on demand' option is available and may provide a modest boost in video render performance if set to true.
|
||||
LOG: Allocated APM BIOS pm entry point at f000:ce40
|
||||
LOG: Writing code to fce40
|
||||
LOG: Writing code to fce60
|
||||
LOG: Windows: IID_ITaskbarList3 is available
|
||||
LOG: ISA Plug & Play BIOS enabled
|
||||
LOG: VGA ROM BIOS init callback
|
||||
LOG: pixratio 1.000, dw false, dh false
|
||||
LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750
|
||||
LOG: WARNING: No translation support (to host) for code page 0
|
||||
LOG: DOS keyboard layout loaded with main language code US for layout us
|
||||
LOG: XMS: 50 handles allocated for use by the DOS environment
|
||||
LOG: EMS page frame at 0xe000-0xefff
|
||||
LOG: COMMAND.COM env size: 720 bytes
|
||||
LOG: COMMAND.COM environment block: 0x0701 sz=0x002d
|
||||
LOG: COMMAND.COM main body (PSP): 0x072f sz=0x009a
|
||||
LOG: COMMAND.COM stack: 0x0749
|
||||
LOG: pixratio 1.350, dw false, dh false
|
||||
LOG: Aspect ratio: 720 x 540 xToY=1.333 yToX=0.750
|
||||
LOG: SHELL:Redirect output to COM3
|
||||
LOG: VPXLOG: fifosock client connected
|
||||
VPX lights@f1: type6=0 typeE=0 decoded=0 dir=0 amb(0.00,0.00,0.00)
|
||||
LOG: 185492430 ERROR MOUSE:Unhandled videomode 79 on reset
|
||||
LOG: pixratio 1.000, dw false, dh false
|
||||
LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750
|
||||
VPX lightnode t=6 nb=52: [8]00000000/0 [12]00000000/0 [16]00000001/1.4013e-45 [20]3f800000/1 [24]3f800000/1 [28]3f800000/1 [32]64078678/1e+22 [36]64078678/1e+22 [40]00000000/0 [44]bea8079a/-0.328183 [48]ffffffff/nan
|
||||
LOG: Serial1: Errors: Framing 0, Parity 0, Overrun RX:1 (IF0:1), TX:0, Break 0
|
||||
VPX lights@f121: type6=2 typeE=6 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
VPX lights@f241: type6=2 typeE=6 decoded=2 dir=1 amb(0.55,0.50,0.65)
|
||||
L0 dir(0.11,0.77,0.63) col(1.10,0.90,1.00)
|
||||
LOG: 568654483 ERROR INT10:PutPixel unhandled mode type 7
|
||||
LOG: SHELL:Redirect output to RC.TXT
|
||||
@@ -0,0 +1,371 @@
|
||||
BattleTech v4.10
|
||||
BTL4Application::BTL4Application
|
||||
GaugeInterpreter: undefined label 'Initialization'
|
||||
[exp] master player experience=2 simLive=1 heatModelOn=1 advDamage=1
|
||||
[role] 'Role::Default' lives=1000 killBonus=500 dmgMod=1
|
||||
[torso] horizJoint 'jointtorso' -> 0x00bf7968 type=1 enabled=1
|
||||
[weap] 'AFC100' seg=13 mount=sitelgunport rear=0
|
||||
[proj] 'AFC100' ammoBinIndex=21 -> AmmoBinAFC100 (rounds=20)
|
||||
[weap] 'ERLLaser' seg=7 mount=siterugunport rear=0
|
||||
[weap] 'ERSLaser_1' seg=13 mount=sitelgunport rear=0
|
||||
[weap] 'ERSLaser_2' seg=8 mount=siterdgunport rear=0
|
||||
[weap] 'LRM15_1' seg=18 mount=sitelmissleport rear=0
|
||||
[proj] 'LRM15_1' ammoBinIndex=26 -> AmmoBinLRM15_1 (rounds=16)
|
||||
[weap] 'LRM15_2' seg=19 mount=sitermissleport rear=0
|
||||
[proj] 'LRM15_2' ammoBinIndex=28 -> AmmoBinLRM15_2 (rounds=16)
|
||||
[mech] segment walk done: subsystemCount=32 weaponCount=6
|
||||
[skel] jointSubsystem=0x00c04450 jointCount=25
|
||||
[mech] model params: walkTR=65 runTR=40 maxAcc=20 throttleAdj=0.8 (deg,deg,u/s^2,scale)
|
||||
[mech] look angles: L=50 R=-50 F=-15 B=0 (deg)
|
||||
[mech] damage zones streamed: 22 [dz_dtorso,dz_hip,dz_larm,dz_ldleg,dz_ldoor,dz_lfoot,dz_lgun,dz_ltorso,dz_luleg,dz_rarm,dz_rdleg,dz_rdoor,dz_reardtorso,dz_rearltorso,dz_rearrtorso,dz_rearutorso,dz_rfoot,dz_rgun,dz_rtorso,dz_ruleg,dz_searchlight,dz_utorso]
|
||||
[cyl] table 'madcat' LOADED rows=7
|
||||
[valve] 'Condenser1' valve=1 flow=0.166667
|
||||
[valve] 'Condenser2' valve=1 flow=0.166667
|
||||
[valve] 'Condenser3' valve=1 flow=0.166667
|
||||
[valve] 'Condenser4' valve=1 flow=0.166667
|
||||
[valve] 'Condenser5' valve=1 flow=0.166667
|
||||
[valve] 'Condenser6' valve=1 flow=0.166667
|
||||
[mapper] ctor id=0 throttleAttr=0x009c2ef0 controlModeAttr=0x009c2f2c
|
||||
[map] 109 streamed mappings for 'L4'
|
||||
[map] dir sub=0 cls=2012 id=3 grp=1 elem=0
|
||||
[map] dir sub=0 cls=2012 id=4 grp=0 elem=0
|
||||
[map] dir sub=0 cls=2012 id=6 grp=3 elem=63
|
||||
[map] dir sub=17 cls=3013 id=14 grp=3 elem=66
|
||||
[map] dir sub=0 cls=2012 id=10 grp=3 elem=68
|
||||
[map] dir sub=0 cls=2012 id=11 grp=3 elem=67
|
||||
[map] dir sub=0 cls=2012 id=12 grp=3 elem=65
|
||||
[map] dir sub=22 cls=3021 id=19 grp=3 elem=64
|
||||
[map] dir sub=23 cls=3016 id=19 grp=3 elem=64
|
||||
[map] dir sub=24 cls=3016 id=19 grp=3 elem=64
|
||||
[map] dir sub=25 cls=3016 id=19 grp=3 elem=64
|
||||
[map] dir sub=27 cls=3024 id=19 grp=3 elem=71
|
||||
[map] dir sub=29 cls=3024 id=19 grp=3 elem=71
|
||||
[gau2] cluster slot=14 classID=3011 auxScreen=5 name=Avionics
|
||||
[gau2] cluster slot=15 classID=3014 auxScreen=6 name=Myomers
|
||||
[gau2] cluster slot=22 classID=3021 auxScreen=1 name=AFC100
|
||||
[gau2] cluster slot=23 classID=3016 auxScreen=10 name=ERLLaser
|
||||
[gau2] cluster slot=24 classID=3016 auxScreen=3 name=ERSLaser_1
|
||||
[gau2] cluster slot=25 classID=3016 auxScreen=12 name=ERSLaser_2
|
||||
[gau2] cluster slot=27 classID=3024 auxScreen=2 name=LRM15_1
|
||||
[gau2] cluster slot=29 classID=3024 auxScreen=9 name=LRM15_2
|
||||
ColorMapperArmor warning: damage zone dz_missle not found
|
||||
ColorMapperArmor warning: damage zone dz_missle not found
|
||||
ColorMapperArmor warning: damage zone dz_lmissle not found
|
||||
ColorMapperArmor warning: damage zone dz_rmissle not found
|
||||
ColorMapperArmor warning: damage zone dz_ftorso not found
|
||||
ColorMapperArmor warning: damage zone dz_btorso not found
|
||||
[link] InitializePlayerLink -> vehicle playerLink=0x00adfaf8
|
||||
[launch] state=11 minPriorityEmpty=0 ticks=10906
|
||||
[queues] p0=BUSY p1=BUSY p2=BUSY p3=BUSY p4=- nextReady=1
|
||||
[posts] id3=416
|
||||
[launch] state=11 minPriorityEmpty=0 ticks=11918
|
||||
[queues] p0=BUSY p1=BUSY p2=BUSY p3=BUSY p4=- nextReady=1
|
||||
[posts] id3=502
|
||||
[launch] state=11 minPriorityEmpty=0 ticks=12928
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[launch] state=11 minPriorityEmpty=0 ticks=13937
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[launch] state=11 minPriorityEmpty=0 ticks=14946
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 1 class=3035 view=0 res=0
|
||||
[mer] 2 class=42 view=0 res=1
|
||||
[mer] 3 class=42 view=0 res=1
|
||||
[mer] 4 class=42 view=0 res=1
|
||||
[mer] 5 class=42 view=0 res=1
|
||||
[mer] 6 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=16047
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 7 class=42 view=0 res=1
|
||||
[mer] 8 class=42 view=0 res=1
|
||||
[mer] 9 class=42 view=0 res=1
|
||||
[mer] 10 class=42 view=0 res=1
|
||||
[mer] 11 class=42 view=0 res=1
|
||||
[mer] 12 class=42 view=0 res=1
|
||||
[mer] 13 class=42 view=0 res=1
|
||||
[mer] 14 class=42 view=0 res=1
|
||||
[mer] 15 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=17156
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 16 class=42 view=0 res=1
|
||||
[mer] 17 class=42 view=0 res=1
|
||||
[mer] 18 class=42 view=0 res=1
|
||||
[mer] 19 class=42 view=0 res=1
|
||||
[mer] 20 class=42 view=0 res=1
|
||||
[mer] 21 class=42 view=0 res=1
|
||||
[mer] 22 class=42 view=0 res=1
|
||||
[mer] 23 class=42 view=0 res=1
|
||||
[mer] 24 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=18267
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 25 class=42 view=0 res=1
|
||||
[mer] 26 class=42 view=0 res=1
|
||||
[mer] 27 class=42 view=0 res=1
|
||||
[mer] 28 class=42 view=0 res=1
|
||||
[mer] 29 class=42 view=0 res=1
|
||||
[mer] 30 class=42 view=0 res=1
|
||||
[mer] 31 class=42 view=0 res=1
|
||||
[mer] 32 class=42 view=0 res=1
|
||||
[mer] 33 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=19376
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 34 class=42 view=0 res=1
|
||||
[mer] 35 class=42 view=0 res=1
|
||||
[mer] 36 class=42 view=0 res=1
|
||||
[mer] 37 class=42 view=0 res=1
|
||||
[mer] 38 class=94 view=0 res=1
|
||||
[mer] 39 class=94 view=0 res=1
|
||||
[mer] 40 class=42 view=0 res=1
|
||||
[mer] 41 class=94 view=0 res=1
|
||||
[mer] 42 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=20485
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 43 class=94 view=0 res=1
|
||||
[mer] 44 class=94 view=0 res=1
|
||||
[mer] 45 class=94 view=0 res=1
|
||||
[mer] 46 class=94 view=0 res=1
|
||||
[mer] 47 class=94 view=0 res=1
|
||||
[mer] 48 class=94 view=0 res=1
|
||||
[mer] 49 class=42 view=0 res=1
|
||||
[mer] 50 class=42 view=0 res=1
|
||||
[mer] 51 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=21596
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 52 class=42 view=0 res=1
|
||||
[mer] 53 class=42 view=0 res=1
|
||||
[mer] 54 class=94 view=0 res=1
|
||||
[mer] 55 class=94 view=0 res=1
|
||||
[mer] 56 class=94 view=0 res=1
|
||||
[mer] 57 class=94 view=0 res=1
|
||||
[mer] 58 class=42 view=0 res=1
|
||||
[mer] 59 class=42 view=0 res=1
|
||||
[mer] 60 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=22705
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 61 class=42 view=0 res=1
|
||||
[mer] 62 class=94 view=0 res=1
|
||||
[mer] 63 class=94 view=0 res=1
|
||||
[mer] 64 class=94 view=0 res=1
|
||||
[mer] 65 class=94 view=0 res=1
|
||||
[mer] 66 class=94 view=0 res=1
|
||||
[mer] 67 class=94 view=0 res=1
|
||||
[mer] 68 class=42 view=0 res=1
|
||||
[mer] 69 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=23814
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 70 class=94 view=0 res=1
|
||||
[mer] 71 class=94 view=0 res=1
|
||||
[mer] 72 class=94 view=0 res=1
|
||||
[mer] 73 class=94 view=0 res=1
|
||||
[stack] frame at 0x12dee7 drift=0 over 1001 frames ticks=24293 pump=352/1499
|
||||
[mer] 74 class=94 view=0 res=1
|
||||
[mer] 75 class=94 view=0 res=1
|
||||
[mer] 76 class=42 view=0 res=1
|
||||
[mer] 77 class=94 view=0 res=1
|
||||
[mer] 78 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=24926
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 79 class=94 view=0 res=1
|
||||
[mer] 80 class=94 view=0 res=1
|
||||
[mer] 81 class=94 view=0 res=1
|
||||
[mer] 82 class=94 view=0 res=1
|
||||
[mer] 83 class=94 view=0 res=1
|
||||
[mer] 84 class=94 view=0 res=1
|
||||
[mer] 85 class=42 view=0 res=1
|
||||
[mer] 86 class=94 view=0 res=1
|
||||
[mer] 87 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=26035
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 88 class=42 view=0 res=1
|
||||
[mer] 89 class=42 view=0 res=1
|
||||
[mer] 90 class=42 view=0 res=1
|
||||
[mer] 91 class=94 view=0 res=1
|
||||
[mer] 92 class=94 view=0 res=1
|
||||
[mer] 93 class=42 view=0 res=1
|
||||
[mer] 94 class=94 view=0 res=1
|
||||
[mer] 95 class=94 view=0 res=1
|
||||
[mer] 96 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=27144
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 97 class=94 view=0 res=1
|
||||
[mer] 98 class=94 view=0 res=1
|
||||
[mer] 99 class=42 view=0 res=1
|
||||
[mer] 100 class=42 view=0 res=1
|
||||
[mer] 101 class=42 view=0 res=1
|
||||
[mer] 102 class=94 view=0 res=1
|
||||
[mer] 103 class=42 view=0 res=1
|
||||
[mer] 104 class=42 view=0 res=1
|
||||
[mer] 105 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=28255
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 106 class=42 view=0 res=1
|
||||
[mer] 107 class=42 view=0 res=1
|
||||
[mer] 108 class=42 view=0 res=1
|
||||
[mer] 109 class=42 view=0 res=1
|
||||
[mer] 110 class=42 view=0 res=1
|
||||
[mer] 111 class=42 view=0 res=1
|
||||
[mer] 112 class=42 view=0 res=1
|
||||
[mer] 113 class=42 view=0 res=1
|
||||
[mer] 114 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=29364
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 115 class=42 view=0 res=1
|
||||
[mer] 116 class=42 view=0 res=1
|
||||
[mer] 117 class=42 view=0 res=1
|
||||
[mer] 118 class=42 view=0 res=1
|
||||
[mer] 119 class=42 view=0 res=1
|
||||
[mer] 120 class=94 view=0 res=1
|
||||
[mer] 121 class=42 view=0 res=1
|
||||
[mer] 122 class=42 view=0 res=1
|
||||
[mer] 123 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=30473
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 124 class=42 view=0 res=1
|
||||
[mer] 125 class=42 view=0 res=1
|
||||
[mer] 126 class=42 view=0 res=1
|
||||
LBE4ControlsManager::Execute, lost RIO analog request
|
||||
iThinkIRQIsOn =1, actual state =1, characters sent =304
|
||||
[mer] 127 class=42 view=0 res=1
|
||||
[mer] 128 class=42 view=0 res=1
|
||||
[mer] 129 class=42 view=0 res=1
|
||||
[mer] 130 class=42 view=0 res=1
|
||||
[mer] 131 class=42 view=0 res=1
|
||||
[mer] 132 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=31585
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 133 class=42 view=0 res=1
|
||||
[mer] 134 class=42 view=0 res=1
|
||||
[mer] 135 class=42 view=0 res=1
|
||||
[mer] 136 class=42 view=0 res=1
|
||||
[mer] 137 class=42 view=0 res=1
|
||||
[mer] 138 class=42 view=0 res=1
|
||||
[mer] 139 class=42 view=0 res=1
|
||||
[mer] 140 class=42 view=0 res=1
|
||||
[mer] 141 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=32694
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 142 class=42 view=0 res=1
|
||||
[mer] 143 class=94 view=0 res=1
|
||||
[mer] 144 class=94 view=0 res=1
|
||||
[mer] 145 class=94 view=0 res=1
|
||||
[mer] 146 class=42 view=0 res=1
|
||||
[mer] 147 class=94 view=0 res=1
|
||||
[mer] 148 class=42 view=0 res=1
|
||||
[mer] 149 class=94 view=0 res=1
|
||||
[mer] 150 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=33803
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 151 class=94 view=0 res=1
|
||||
[mer] 152 class=42 view=0 res=1
|
||||
[mer] 153 class=42 view=0 res=1
|
||||
[mer] 154 class=42 view=0 res=1
|
||||
[mer] 155 class=94 view=0 res=1
|
||||
[mer] 156 class=42 view=0 res=1
|
||||
[mer] 157 class=42 view=0 res=1
|
||||
[mer] 158 class=94 view=0 res=1
|
||||
[mer] 159 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=34916
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 160 class=42 view=0 res=1
|
||||
[mer] 161 class=42 view=0 res=1
|
||||
[mer] 162 class=42 view=0 res=1
|
||||
[mer] 163 class=42 view=0 res=1
|
||||
[mer] 164 class=94 view=0 res=1
|
||||
[mer] 165 class=94 view=0 res=1
|
||||
[mer] 166 class=42 view=0 res=1
|
||||
[mer] 167 class=94 view=0 res=1
|
||||
[mer] 168 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=36025
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 169 class=94 view=0 res=1
|
||||
[mer] 170 class=94 view=0 res=1
|
||||
[mer] 171 class=42 view=0 res=1
|
||||
[mer] 172 class=42 view=0 res=1
|
||||
[mer] 173 class=42 view=0 res=1
|
||||
[mer] 174 class=94 view=0 res=1
|
||||
[mer] 175 class=42 view=0 res=1
|
||||
[mer] 176 class=42 view=0 res=1
|
||||
[mer] 177 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=37134
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 178 class=94 view=0 res=1
|
||||
[mer] 179 class=94 view=0 res=1
|
||||
[mer] 180 class=42 view=0 res=1
|
||||
[mer] 181 class=42 view=0 res=1
|
||||
[mer] 182 class=42 view=0 res=1
|
||||
[mer] 183 class=94 view=0 res=1
|
||||
[mer] 184 class=94 view=0 res=1
|
||||
[mer] 185 class=42 view=0 res=1
|
||||
[mer] 186 class=94 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=38245
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 187 class=94 view=0 res=1
|
||||
[mer] 188 class=94 view=0 res=1
|
||||
[mer] 189 class=42 view=0 res=1
|
||||
[mer] 190 class=42 view=0 res=1
|
||||
[mer] 191 class=94 view=0 res=1
|
||||
[mer] 192 class=94 view=0 res=1
|
||||
[mer] 193 class=42 view=0 res=1
|
||||
[mer] 194 class=42 view=0 res=1
|
||||
[mer] 195 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=39354
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 196 class=42 view=0 res=1
|
||||
[mer] 197 class=94 view=0 res=1
|
||||
[mer] 198 class=94 view=0 res=1
|
||||
[mer] 199 class=94 view=0 res=1
|
||||
[mer] 200 class=94 view=0 res=1
|
||||
[mer] 201 class=94 view=0 res=1
|
||||
[mer] 202 class=94 view=0 res=1
|
||||
[stack] frame at 0x12dee7 drift=0 over 2002 frames ticks=40165 pump=495/2643
|
||||
[mer] 203 class=94 view=0 res=1
|
||||
[mer] 204 class=42 view=0 res=1
|
||||
[launch] state=2 minPriorityEmpty=0 ticks=40464
|
||||
[queues] p0=BUSY p1=- p2=BUSY p3=- p4=- nextReady=1
|
||||
[posts] id3=530
|
||||
[mer] 205 class=94 view=0 res=1
|
||||
[mer] 206 class=94 view=0 res=1
|
||||
[mer] 207 class=48 view=0 res=0
|
||||
[mer] 208 class=3001 view=1 res=1
|
||||
[vid] type=1 file='mad.skl'
|
||||
|
||||
32loader runtime error: Unhandled exception
|
||||
|
||||
Exception 0E at 00FF:00426A1D error code 00000004
|
||||
|
||||
CS=00FF DS=0107 ES=0107 SS=0107 FS=011F GS=0000
|
||||
EAX=0000006D EBX=00C04534 ECX=FFFFFFFF EDX=FFFFFFFF
|
||||
EBP=0012D9E8 ESP=0012D9E8 EDI=FFFFFFFF ESI=00A3E4F4
|
||||
|
||||
The invalid instruction was executed at 00426A1D
|
||||
|
||||
Module 'C:\REL410\BT\BTL4REC.EXE' section 'CODE' offset 00016A1D
|
||||
|
||||
[00426A15]: 8B CA 8B 40 10 8B 04 88 - 8B 40 08 5D C3 33 C0 5D
|
||||
|
||||
The instruction referenced illegal address 00000075
|
||||
|
||||
@@ -66,6 +66,7 @@ set BT_LAUNCH_LOG=1
|
||||
set BT_STACK_LOG=1
|
||||
set BT_MER_LOG=1
|
||||
set BT_EULER_LOG=1
|
||||
set BT_JOINTS=1
|
||||
set BT_FORCE_TORSO=1
|
||||
set BT_TORSO_LOG=1
|
||||
set BT_FORCE_THROTTLE=0.0
|
||||
|
||||
+1052
-795
File diff suppressed because it is too large
Load Diff
@@ -858,7 +858,22 @@ Joint*
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return joints->GetJoint(segment->GetJointIndex());
|
||||
//
|
||||
// A segment that HAS no joint reports index -1, and GetJoint indexes a
|
||||
// table with it unchecked -- TableIterator::GetNthImplementation walks to
|
||||
// [base + -1*4] and dies (guest 00426A1D, ECX=FFFFFFFF). Torso never hit
|
||||
// this because it only ever asks for its own authored twist-joint name;
|
||||
// the skeleton walk asks for EVERY page, and most .SKL pages are sites or
|
||||
// static segments with no joint at all.
|
||||
//
|
||||
int
|
||||
joint_index = segment->GetJointIndex();
|
||||
if (joint_index < 0 || joint_index >= joints->GetJointCount())
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return joints->GetJoint(joint_index);
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -21,6 +21,15 @@
|
||||
#if !defined(MATRIX_HPP)
|
||||
# include <matrix.hpp>
|
||||
#endif
|
||||
//
|
||||
// Mech::ResolveJoint + the Joint types the articulation path switches on.
|
||||
//
|
||||
#if !defined(MECH_HPP)
|
||||
# include <mech.hpp>
|
||||
#endif
|
||||
#if !defined(JOINT_HPP)
|
||||
# include <joint.hpp>
|
||||
#endif
|
||||
|
||||
//
|
||||
// The engine's damage-zone tagging callback reads this while geometry is
|
||||
@@ -126,11 +135,13 @@ dpl_DCS *
|
||||
dpl_DCS *parent_dcs,
|
||||
const char *skeleton_filename,
|
||||
ViewFrom view_type,
|
||||
int *eye_count)
|
||||
int *eye_count,
|
||||
int *joint_count)
|
||||
{
|
||||
Check(this);
|
||||
Check_Pointer(skeleton_filename);
|
||||
Check_Pointer(eye_count);
|
||||
Check_Pointer(joint_count);
|
||||
|
||||
char
|
||||
path[256];
|
||||
@@ -169,12 +180,13 @@ dpl_DCS *
|
||||
dpl_DCS
|
||||
*root = RecurseSKLFile(
|
||||
entity, parent_dcs, skeleton, "ROOT", 0, view_type,
|
||||
zone, &node_count, &object_count, eye_count);
|
||||
zone, &node_count, &object_count, eye_count, joint_count);
|
||||
|
||||
DEBUG_STREAM << "[skl] " << path
|
||||
<< " -> " << node_count << " nodes, "
|
||||
<< object_count << " objects, "
|
||||
<< *eye_count << " eye\n" << flush;
|
||||
<< *eye_count << " eye, "
|
||||
<< *joint_count << " articulated\n" << flush;
|
||||
|
||||
//
|
||||
// The engine guards this the same way (L4VIDEO.CPP, DPLReadEnvironment):
|
||||
@@ -203,7 +215,8 @@ dpl_DCS *
|
||||
dpl_ZONE *zone,
|
||||
int *node_count,
|
||||
int *object_count,
|
||||
int *eye_count)
|
||||
int *eye_count,
|
||||
int *joint_count)
|
||||
{
|
||||
Check(this);
|
||||
Check(skeleton);
|
||||
@@ -227,11 +240,6 @@ dpl_DCS *
|
||||
return NULL;
|
||||
}
|
||||
|
||||
dpl_DCS
|
||||
*dcs = dpl_NewDCS();
|
||||
Check_Pointer(dcs);
|
||||
dpl_SetDCSZone(dcs, zone);
|
||||
|
||||
//
|
||||
// The node's LOCAL TRANSFORM, in the engine's own terms -- the wire
|
||||
// convention is no longer inferred from captures, it is READ from the
|
||||
@@ -281,35 +289,146 @@ dpl_DCS *
|
||||
node_matrix(3,2) = tran_z;
|
||||
|
||||
//
|
||||
// Write in place and flush -- the same idiom as RootRenderable's ctor
|
||||
// (dpl_GetDCSMatrix + assign), not dpl_SetDCSMatrix.
|
||||
//
|
||||
float32
|
||||
*dcs_matrix = dpl_GetDCSMatrix(dcs);
|
||||
Check_Pointer(dcs_matrix);
|
||||
*(Matrix4x4 *)dcs_matrix = node_matrix;
|
||||
|
||||
if (parent_dcs != NULL)
|
||||
{
|
||||
dpl_AddDCSToDCS(parent_dcs, dcs);
|
||||
}
|
||||
else
|
||||
{
|
||||
dpl_AddDCSToScene(dcs);
|
||||
}
|
||||
++(*node_count);
|
||||
|
||||
//
|
||||
// This node's geometry, if it has any. Entity_Being_Created is already
|
||||
// set by our caller so the library's C callback can tag the geometry with
|
||||
// damage zones (L4VIDEO.CPP:4176).
|
||||
// This node's geometry, if it has any. Loaded BEFORE the node is built,
|
||||
// because a joint renderable takes its object as a ctor argument and
|
||||
// builds/flushes the instance itself (DCSObjectRenderable, L4VIDRND.CPP:
|
||||
// 649). Entity_Being_Created is already set by our caller so the
|
||||
// library's C callback can tag the geometry with damage zones
|
||||
// (L4VIDEO.CPP:4176).
|
||||
//
|
||||
dpl_OBJECT
|
||||
*object = NULL;
|
||||
const char
|
||||
*object_name;
|
||||
if (skeleton->GetEntry(page_name, "Object", &object_name) && object_name)
|
||||
{
|
||||
dpl_OBJECT
|
||||
*object = dpl_LoadObject((char *)object_name, dpl_load_normal);
|
||||
object = dpl_LoadObject((char *)object_name, dpl_load_normal);
|
||||
if (object == NULL)
|
||||
{
|
||||
DEBUG_STREAM << "[skl] couldn't load object " << object_name
|
||||
<< " for '" << page_name << "'\n" << flush;
|
||||
}
|
||||
}
|
||||
|
||||
dpl_DCS
|
||||
*dcs = NULL;
|
||||
|
||||
//
|
||||
// ARTICULATION. A node whose page name resolves to a live skeleton Joint
|
||||
// gets a JOINT RENDERABLE instead of a static DCS, so the board hears
|
||||
// about the joint MOVING.
|
||||
//
|
||||
// Why this is the whole game: a static node's matrix is written and
|
||||
// flushed once at build time. Torso::TorsoSimulation faithfully calls
|
||||
// SetRotation() on its Joint every frame, but nothing carried that back
|
||||
// to the DCS -- measured 5.3.79, twist sweeping the full authored range
|
||||
// with anim_abs=1 joints=0 on the wire and a cockpit view that did not
|
||||
// move by more than 74 pixels. The engine's answer is this family
|
||||
// (L4VIDRND.CPP:1026+): each renderable holds the joint's rest offset in
|
||||
// one DCS and the live rotation in a child DCS, and its Execute compares
|
||||
// the watched Hinge/EulerAngles against a cached copy, writes the axis
|
||||
// and calls DPL_FLUSH_DCS -- which is what puts more than one node into
|
||||
// vr_flush_dcs_artic (0x1f).
|
||||
//
|
||||
// The joint's live value is read straight out of the mech's own
|
||||
// JointSubsystem (Mech::ResolveJoint by segment name -- the .SKL page
|
||||
// names ARE the segment names, which is how Torso already resolves
|
||||
// 'jointtorso'), so the simulation and the render read ONE source.
|
||||
//
|
||||
// Env-gated while it proves out: the static path is a working cockpit
|
||||
// render and this replaces the node construction wholesale.
|
||||
//
|
||||
Joint
|
||||
*joint = NULL;
|
||||
if (
|
||||
getenv("BT_JOINTS") != NULL &&
|
||||
parent_dcs != NULL &&
|
||||
entity->GetClassID() == RegisteredClass::MechClassID
|
||||
)
|
||||
{
|
||||
joint = ((Mech *)entity)->ResolveJoint(page_name);
|
||||
}
|
||||
|
||||
if (joint != NULL)
|
||||
{
|
||||
LinearMatrix
|
||||
offset;
|
||||
offset = EulerAngles(rot_pitch, rot_yaw, rot_roll);
|
||||
offset(3,0) = tran_x;
|
||||
offset(3,1) = tran_y;
|
||||
offset(3,2) = tran_z;
|
||||
|
||||
ChildOffsetRenderable
|
||||
*joint_renderable = NULL;
|
||||
|
||||
switch (joint->GetJointType())
|
||||
{
|
||||
case Joint::HingeXJointType:
|
||||
case Joint::HingeYJointType:
|
||||
case Joint::HingeZJointType:
|
||||
joint_renderable = new HingeRenderable(
|
||||
entity, VideoRenderable::Dynamic, object, zone,
|
||||
dpl_isect_mode_obj, 0, parent_dcs, &offset,
|
||||
&joint->GetHinge());
|
||||
break;
|
||||
|
||||
case Joint::BallJointType:
|
||||
joint_renderable = new BallJointRenderable(
|
||||
entity, VideoRenderable::Dynamic, object, zone,
|
||||
dpl_isect_mode_obj, 0, parent_dcs, &offset,
|
||||
&joint->GetEulerAngles());
|
||||
break;
|
||||
|
||||
default:
|
||||
//
|
||||
// StaticJointType and BallTranslation: the static path below.
|
||||
// (BallTranslate has its own renderable, but no MAD.SKL node
|
||||
// animates a translation -- only jointeye is balltranslate, and
|
||||
// it carries the camera, not geometry.)
|
||||
//
|
||||
break;
|
||||
}
|
||||
|
||||
if (joint_renderable != NULL)
|
||||
{
|
||||
Register_Object(joint_renderable);
|
||||
dcs = joint_renderable->GetDCS();
|
||||
if (object != NULL)
|
||||
{
|
||||
++(*object_count);
|
||||
}
|
||||
++(*joint_count);
|
||||
}
|
||||
}
|
||||
|
||||
if (dcs == NULL)
|
||||
{
|
||||
//
|
||||
// STATIC node: baked matrix, flushed once. Correct for anything the
|
||||
// simulation never moves.
|
||||
//
|
||||
dcs = dpl_NewDCS();
|
||||
Check_Pointer(dcs);
|
||||
dpl_SetDCSZone(dcs, zone);
|
||||
|
||||
//
|
||||
// Write in place and flush -- the same idiom as RootRenderable's ctor
|
||||
// (dpl_GetDCSMatrix + assign), not dpl_SetDCSMatrix.
|
||||
//
|
||||
float32
|
||||
*dcs_matrix = dpl_GetDCSMatrix(dcs);
|
||||
Check_Pointer(dcs_matrix);
|
||||
*(Matrix4x4 *)dcs_matrix = node_matrix;
|
||||
|
||||
if (parent_dcs != NULL)
|
||||
{
|
||||
dpl_AddDCSToDCS(parent_dcs, dcs);
|
||||
}
|
||||
else
|
||||
{
|
||||
dpl_AddDCSToScene(dcs);
|
||||
}
|
||||
|
||||
if (object != NULL)
|
||||
{
|
||||
dpl_INSTANCE
|
||||
@@ -320,14 +439,11 @@ dpl_DCS *
|
||||
dpl_FlushInstance(instance);
|
||||
++(*object_count);
|
||||
}
|
||||
else
|
||||
{
|
||||
DEBUG_STREAM << "[skl] couldn't load object " << object_name
|
||||
<< " for '" << page_name << "'\n" << flush;
|
||||
}
|
||||
|
||||
dpl_FlushDCS(dcs);
|
||||
}
|
||||
|
||||
dpl_FlushDCS(dcs);
|
||||
++(*node_count);
|
||||
|
||||
//
|
||||
// Children. Repeated "joint=" entries: the entry NAME is "joint" and the
|
||||
@@ -352,7 +468,8 @@ dpl_DCS *
|
||||
{
|
||||
RecurseSKLFile(
|
||||
entity, dcs, skeleton, child_page, recursion_depth + 1,
|
||||
view_type, zone, node_count, object_count, eye_count);
|
||||
view_type, zone, node_count, object_count, eye_count,
|
||||
joint_count);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -629,7 +746,8 @@ void
|
||||
// inside the OUTSIDE model staring at torso panels.
|
||||
//
|
||||
int
|
||||
eye_count = 0;
|
||||
eye_count = 0,
|
||||
joint_count = 0;
|
||||
const char
|
||||
*skeleton_name = video_object->GetObjectFilename();
|
||||
char
|
||||
@@ -648,7 +766,8 @@ void
|
||||
(inside_name[2] >= 'a' && inside_name[2] <= 'z')
|
||||
? 'x' : 'X';
|
||||
skl_result = ReadSKLFile(entity, root_DCS,
|
||||
inside_name, view_type, &eye_count);
|
||||
inside_name, view_type, &eye_count,
|
||||
&joint_count);
|
||||
if (skl_result == NULL)
|
||||
{
|
||||
DEBUG_STREAM << "[skl] no cockpit variant '"
|
||||
@@ -660,7 +779,8 @@ void
|
||||
if (skl_result == NULL)
|
||||
{
|
||||
ReadSKLFile(entity, root_DCS,
|
||||
skeleton_name, view_type, &eye_count);
|
||||
skeleton_name, view_type, &eye_count,
|
||||
&joint_count);
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
@@ -79,7 +79,8 @@
|
||||
dpl_DCS *parent_dcs,
|
||||
const char *skeleton_filename,
|
||||
ViewFrom view_type,
|
||||
int *eye_count);
|
||||
int *eye_count,
|
||||
int *joint_count);
|
||||
|
||||
dpl_DCS *
|
||||
RecurseSKLFile(
|
||||
@@ -92,7 +93,8 @@
|
||||
dpl_ZONE *zone,
|
||||
int *node_count,
|
||||
int *object_count,
|
||||
int *eye_count);
|
||||
int *eye_count,
|
||||
int *joint_count);
|
||||
|
||||
protected:
|
||||
int reserved[16];
|
||||
|
||||
@@ -1867,3 +1867,55 @@ hangs off that chain), the LEG GAIT (the 12-joint flurry the real-pod capture
|
||||
shows while walking), and weapon-pod aim. Until then the mech translates
|
||||
through the world as a rigid body -- which is exactly what every frame so far
|
||||
has shown.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
JOINT ARTICULATION IS LIVE -- 22 NODES, AND THE TWIST REACHES THE BOARD
|
||||
--------------------------------------------------------------------------------
|
||||
RecurseSKLFile now builds a JOINT RENDERABLE for any node whose page name
|
||||
resolves to a live skeleton Joint, instead of a static baked DCS:
|
||||
|
||||
HingeX/Y/Z -> HingeRenderable (watches Joint::GetHinge)
|
||||
Ball -> BallJointRenderable (watches Joint::GetEulerAngles)
|
||||
otherwise -> the static path, unchanged
|
||||
|
||||
Each holds the node's rest offset in one DCS and the live rotation in a child
|
||||
DCS, and its Execute compares the watched value against a cached copy and
|
||||
calls DPL_FLUSH_DCS -- the engine's own mechanism (L4VIDRND.CPP:1026+). The
|
||||
joint's value comes from the mech's JointSubsystem via Mech::ResolveJoint, so
|
||||
the simulation and the renderer read ONE source. Env-gated on BT_JOINTS
|
||||
while it proves out; the static path is a working cockpit render.
|
||||
|
||||
[skl] video\max.skl -> 26 nodes, 1 objects, 1 eye, 22 articulated
|
||||
|
||||
and the bridge, which reported `anim_abs=1 joints=0 twist=+0.00` before, now
|
||||
reports `joints=1 twist=-0.86` -- matching the game's own
|
||||
[torso] twist=-0.856 to two decimals. The board is hearing the joint move.
|
||||
|
||||
VISUALLY: with the mech stationary, frames that differed by 0.0%% now differ
|
||||
by 62-80%%. The view swings with the torso. That is the brick landing.
|
||||
|
||||
A CRASH IT EXPOSED, worth keeping: Mech::ResolveJoint passed
|
||||
segment->GetJointIndex() straight to GetJoint with NO validity check, and a
|
||||
segment that HAS no joint reports -1 -- TableIterator::GetNthImplementation
|
||||
then indexes [base + -1*4] and dies (guest 00426A1D, ECX=FFFFFFFF). Torso
|
||||
never hit it because it only ever asks for its own authored twist-joint name;
|
||||
the skeleton walk asks for every page, and most .SKL pages are sites or
|
||||
static segments. Now bounds-checked against GetJointCount.
|
||||
|
||||
OPEN, and the next thing to chase: the canopy does not stay rigid in the
|
||||
view. Both the canopy (Object on jointtorso) and the eye (site on jointeye,
|
||||
whose parent is jointtorso) hang off the SAME articulated node, so they
|
||||
should move together and the world alone should pan. Instead the canopy
|
||||
silhouette varies 144k-207k px across a sweep. Cancelling the bridge's own
|
||||
cage compensation (CAGE_TWIST_SIGN=0 -- it exists because the SHIPPED game
|
||||
links the cage under the vehicle root and never touches it, which is no
|
||||
longer true of ours) did not close it.
|
||||
|
||||
Leading hypothesis: the eye is not actually driven by our DCS chain at all.
|
||||
DPLRenderer::SetupCull builds worldToEyeMatrix from
|
||||
GetSegmentToWorld(siteeyepoint) -- the SIMULATION's segment transform --
|
||||
independent of the render tree. So the canopy follows our render chain while
|
||||
the eye follows the sim's segment chain, and they diverge exactly like this
|
||||
whenever one carries the twist and the other does not. Test: log both
|
||||
per frame and compare; if that is it, the fix is making the segment chain and
|
||||
the render chain agree about which node owns the twist.
|
||||
|
||||
Reference in New Issue
Block a user