2,003
stars
+0+2+94
343
forks
14
watchers
–
prs
–
issues
0
releases
–
discussions
README
Folio 2025 !image info Setup Create .env file based on .env.example Download and install Node.js then run this followed commands: bash Install dependencies npm install --force Serve at localhost:1234 npm run dev Build for production in the dist/ directory npm run build Game loop 0 - Time - Inputs 1 - Player:pre-physics (Inputs) 2 - PhysicalVehicle:pre-physics (Player:pre-physics) 3 - Physics 4 - PhysicsWireframe (Physics) - Objects (Physics) 5 - PhysicalVehicle:post-physics (Player:pre-physics) 6 - Player:post-physics (Physics, PhysicalVehicle:post-physics) 7 - View (Inputs, Player:post-physics) 8 - Intro - DayCycles - YearCycles - Weather (DayCycles, YearCycles) - Zones (Player:post-physics) - VisualVehicle (PhysicalVehicle:post-physics, Inputs, Player:post-physics, View) 9 - Wind (Weather) - Lighting (DayCycles, View) - Tornado (DayCycles, PhysicalVehicle) - InteractivePoints (Player:post-physics) - Tracks (VisualVehicle) 10 - Area++ (View, PhysicalVehicle:post-physics, Player:post-physics, Wind) - Foliage (VisualVehicle, View) - Fog (View) - Reveal (DayCycles) - Terrain (Tracks) - Trails (PhysicalVehicle) - Floor (View) - Grass (View, Wind) - Leaves (View, PhysicalVehicle) - Lightnings (View, Weather) - RainLines (View, Weather, Reveal) - Snow (View, Weather, Reveal, Tracks) - VisualTornado (Tornado) - WaterSurface (Weather, View) - Benches (Objects) - Bricks (Objects) - ExplosiveCrates (Objects) - Fences (Objects) - Lanterns (Objects) - Whispers (Player) 13 - InstancedGroup (Objects, [SpecificObjects]) 14 - Audio (View, Objects) - Notifications - Title (PhysicalVehicle:post-physics) 998 - Rendering 999 - Monitoring Blender Export - Mute the palette texture node (loaded and set in Three.js Material directly) - Use corresponding export presets - Don't use compression (will be done later) Compress Run npm run compress Will do the following GLB - Traverses the static/ folder looking for glb files (ignoring already compressed files) - Compresses embeded texture with etc1s --quality 255 (lossy, GPU friendly) - Generates new files to preserve originals Texture files - Traverses the static/ folder looking for png|jpg files (ignoring non-model related folders) - Compresses with default preset to --encode etc1s --qlevel 255 (lossy, GPU friendly) or specific preset according to path - Generates new files to preserve originals UI files - Traverses the static/ui. folder looking for png|jpg files - Compresses to WebP Resources - https://gltf-transform.dev/cli - https://github.com/KhronosGroup/KTX-Software?tab=readme-ov-file - https://github.khronos.org/KTX-Software/ktxtools/toktx.html