Adds basic camp generation and placement logic to the map generation process.
It attempts to place the camp in a valid location, avoiding paths and water bodies. It also sets the player's spawn point to the center of the generated camp, including some basic camp props like a tent, campfire, and bed.
Additionally, vegetation spawning is now dependent on the `should_spawn_*` methods of the `CellDataResource`, allowing more control over what spawns where.
Implements bush and flower spawning on ground tiles based on vegetation density.
Adds new assets for bushes and flowers, and introduces multi-mesh rendering for optimized performance.
Introduces seasonal color variations for vegetation using a shader for bushes and materials for flowers and grass.
Refactors material application into a MaterialManager to handle material assignments over multiple frames.
Moves ground tile scripts into a subfolder.
Adds floating particles to test scene.
Refactors tree spawning and rendering:
- Adds seasonal color variations for trees via scripts.
- Introduces `ColorStorage` to manage tree and grass colors
- Removes unused code from tree spawning logic.
- Adjusts ground tile color for better visual appeal.
- Hides debug text on ground tiles.
Updates grass and tree spawning to use the parent's RNG,
ensuring consistent random generation based on the seed.
This removes redundant RNG instances and ensures that grass and
trees are generated predictably for a given cell.
Adds procedural ground tile generation with chunking for improved performance.
Includes:
- Ground tile entity with debug text and cell information
- Grass and tree placement based on cell data
- Ground shader for visual representation
- Chunk loading and unloading system based on player position
Changes wind-related shader uniforms to be global.
This allows easier access and modification of these
parameters from other shaders or scripts, improving
the wind effect consistency across the scene.
Adds visual effects, including fire and rain, to the scene.
The VFX are implemented using GPUParticles3D nodes.
Optimizes tile map generation by reducing chunk size and tiles
per frame. This improves performance.
Sets the SubViewport to have a transparent background.
Initializes the Godot project with basic configuration files.
This includes:
- EditorConfig for code style consistency.
- Git attributes for line ending normalization.
- Git ignore for Godot specific files.
- A default project icon.
- Initial project settings.