mirror of
https://github.com/mitch030504/Wiicompiled_VR_Frame.git
synced 2026-10-06 01:00:14 +02:00
Added First Person VR item management
- Implemented DVDReadVrAsset function to read mapped disc paths for VR assets. - Created HeldItem structure and ReadHeldItem function for managing held items in the game. - Developed unit tests for ReadHeldItem to ensure correct functionality and edge case handling. - Added cockpit item data tests to validate model indexing and parsing of archives.
This commit is contained in:
1 parent
75f075b234
commit
db30945f4c
26 files changed
+1598
-19
No files matched your search
@@ -189,13 +189,20 @@ class SettingsPage(
|
||||
write = { c, value -> c.setBool("vr", "hand_steering", value) },
|
||||
enabledIf = cockpit,
|
||||
)
|
||||
// The hands follow the headset's hand tracking; kVrHandTrackingDefault is off. The
|
||||
// hands are only drawn while they can steer, so it goes with hand steering.
|
||||
choice(
|
||||
R.string.vr_cockpit_item_hand, R.string.vr_cockpit_item_hand_helper,
|
||||
listOf(R.string.vr_item_left, R.string.vr_item_right, R.string.vr_item_off),
|
||||
read = { stringIndex(it, "vr", "cockpit_item_hand", ITEM_HANDS) },
|
||||
write = { c, index -> c.setString("vr", "cockpit_item_hand", ITEM_HANDS[index]) },
|
||||
enabledIf = cockpit,
|
||||
)
|
||||
// Tracked hands can show the item with stick steering as well.
|
||||
toggle(
|
||||
R.string.vr_hand_tracking, R.string.vr_hand_tracking_helper,
|
||||
read = { it.bool("vr", "hand_tracking") ?: false },
|
||||
write = { c, value -> c.setBool("vr", "hand_tracking", value) },
|
||||
enabledIf = { c -> cockpit(c) && (c.bool("vr", "hand_steering") ?: true) },
|
||||
enabledIf = { c -> cockpit(c) && ((c.bool("vr", "hand_steering") ?: true) ||
|
||||
stringIndex(c, "vr", "cockpit_item_hand", ITEM_HANDS) != 2) },
|
||||
)
|
||||
slider(
|
||||
R.string.vr_lean_back, R.string.vr_lean_back_helper, -45.0, 45.0, 1.0,
|
||||
@@ -755,6 +762,7 @@ class SettingsPage(
|
||||
val ROTATION_DEFAULT = ROTATIONS.indexOf("yaw_pitch")
|
||||
// The runtime's default ("cockpit") first.
|
||||
val SEATS = listOf("cockpit", "custom")
|
||||
val ITEM_HANDS = listOf("left", "right", "off")
|
||||
// The runtime's default ("boost") first: an absent key reads as index 0.
|
||||
val PERFORMANCE_LEVELS = listOf("boost", "sustained_high", "sustained_low", "power_savings", "default")
|
||||
// runtime_config.h's kVrFoveationLevels, and its Quest default.
|
||||
|
||||
@@ -535,6 +535,11 @@
|
||||
<string name="vr_seat_custom">Custom</string>
|
||||
<string name="vr_hand_steering">Hand steering</string>
|
||||
<string name="vr_hand_steering_helper">In the cockpit, squeeze a grip near the steering wheel or handlebar to grab it, and turn it to steer. Releasing both grips gives steering back to the stick. Hand steering by heurazy.</string>
|
||||
<string name="vr_cockpit_item_hand">Item in cockpit hand</string>
|
||||
<string name="vr_cockpit_item_hand_helper">Show Player 1\'s settled inventory item above the selected palm. Triple items show the remaining count. Using or losing the item hides it.</string>
|
||||
<string name="vr_item_left">Left</string>
|
||||
<string name="vr_item_right">Right</string>
|
||||
<string name="vr_item_off">Off</string>
|
||||
<string name="vr_hand_tracking">Tracked hands</string>
|
||||
<string name="vr_hand_tracking_helper">The cockpit hands follow your own. Holding the controllers, the fingers follow their touch sensors; put one down and the cameras track that hand at once. Put the controllers down to drive with bare hands: close a hand on the wheel to hold it, which also holds the gas; pinch with a free hand to use an item; flick your hands up for a trick; pinch with your left palm facing you to pause. In menus, a right pinch is A. Choose Automatic drift. Needs hand tracking on in the headset\'s settings.</string>
|
||||
<string name="vr_lean_back">Lean back angle</string>
|
||||
|
||||
Reference in new issue
Block a user