point: getting to know simple interactions from GodotXR ))
game kinda works already — user can explore a small room, mess with objects, and actually break through a wall if the correct chemical is applied.
logic behind lvl:
➡️ user starts in a sealed room
➡️ has access to several pickable items (hammer, ball, etc.)
➡️ needs to figure out which chemical to apply to the breakable wall
➡️ if correct: wall becomes breakable (TREATED)
➡️ after break: can walk through and hit a teleport
➡️ teleport as a transition to another lvl (no transition yet because kinda no other lvl there XD)
used interactions:
- Physics-based pickables (interact via VR hands/controllers)
- Wall reacts ONLY after correct chemical
- Animations triggered by user collision or object proximity (Area3D)
- GPUParticles on some actions (e.g. chemical splash, wall breaking additional effect)
- Breakable wall is a Blender import with fracture animation
Pj assets:
- gameAssets / roomAssets
- audio used in scene anims
- chems/ = chemical interaction animation
- elements by name/ = wall type-specific animations
- GVAssets/ = environment stuff
gd -> scripts tscn -> separate scenes (modular setup, some obsolete stuff there too)
Absolute essential scripts here:
- ChemicalsState (should be autoloaded in godot, otherwise is could not be reachable from different scripts)
- each interacctable asset is releted to some script with an animation
- breackableWall.gd - changing states of breakable walls
- every animation player - for interactable objects and scenes changes
** pj setup also needs Godot XR Tools plugin to run. Couldn't upload the plugin here due to size(( easy to set up in ide
awaiting fixes: 🔻 broken fragment physics (some wall pieces fall through lol — Blender/weight issue) 🔻 replacement await() delays with fade effect 🔻 proper transition/fade screen after teleport aka transition to another lvl 🔻 large files optimization for web/itch idk
GodescSample.mp4
very much used tutorials:
very cool stuff to add_on: portals