Files
Bullosseum/tests/web_probe.gd
T
richard 09d4a60f43 Reorganize into role-based folders and consolidate art
Move every script and scene into role-based directories (actors/, systems/, ui/,
levels/, props/) and all raw art under art/ (grouped by role, snake_case,
Extract-Textures GLBs), dropping Blender version-suffix noise. Filenames are
snake_case (PascalCase reserved for class_name) to avoid case-insensitive
filesystem aliasing on the web/macOS targets. Routes the bull's hits through the
typed DamageEvent pipeline and wires the bull's abilities to the Fx library.
Updates CLAUDE.md's folder-layout overview to match.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CCyaJPTHCH9EDthpf4A5Sj
2026-09-08 14:56:22 +03:00

33 lines
1.1 KiB
GDScript

extends Node3D
## Minimal skinned-mesh probe for the web/mobile invisibility repro. Boots straight to a
## single bull (Skeleton3D-skinned) framed by a camera + light, no menus, no autoload deps.
## Set as main_scene, exported to web, and screenshotted in a browser to test whether the
## skinned mesh draws under a given engine build.
func _ready() -> void:
var bull := (load("res://art/characters/bull.fbx") as PackedScene).instantiate() as Node3D
bull.scale = Vector3(100.0, 100.0, 100.0)
add_child(bull)
var key := DirectionalLight3D.new()
key.rotation_degrees = Vector3(-50.0, -40.0, 0.0)
key.light_energy = 1.5
add_child(key)
var we := WorldEnvironment.new()
var env := Environment.new()
env.background_mode = Environment.BG_COLOR
env.background_color = Color(0.15, 0.35, 0.65)
env.ambient_light_source = Environment.AMBIENT_SOURCE_COLOR
env.ambient_light_color = Color(0.6, 0.6, 0.6)
env.ambient_light_energy = 1.0
we.environment = env
add_child(we)
var cam := Camera3D.new()
cam.position = Vector3(0.0, 2.0, 6.0)
cam.fov = 55.0
add_child(cam)
cam.look_at(Vector3(0.0, 1.2, 0.0), Vector3.UP)
cam.current = true