initial commit for standalone rust program
This commit is contained in:
@@ -1,30 +1,30 @@
|
||||
# advanced_erosion_terrain_heightmap_generation
|
||||
|
||||
A krita plugin designed to implement Runevision's (Skovbo Johansen) fast erosion filter on top of noise for realistic looking terrain.
|
||||
A standalone Rust terrain generator using `egui`, inspired by Runevision's fast erosion filter and the reference material in `plan/`.
|
||||
|
||||
See here:
|
||||
|
||||
|
||||
https://www.shadertoy.com/view/wXcfWn
|
||||
https://www.shadertoy.com/view/sf23W1
|
||||
https://blog.runevision.com/2026/03/fast-and-gorgeous-erosion-filter.html
|
||||
|
||||
## Plugin layout
|
||||
## Project layout
|
||||
|
||||
The production Krita plugin lives under `pykrita/advanced_erosion_generator/`.
|
||||
The `tests/` directory remains prototype-only reference code and is not imported by the plugin.
|
||||
- `src/` contains the standalone Rust app and generator implementation.
|
||||
- `tests/erosion_prototype.py` is the Python reference prototype used to guide the Rust port.
|
||||
- `plan/` contains the inspiration and reference documents for the terrain look.
|
||||
|
||||
## Installing in Krita
|
||||
## Running
|
||||
|
||||
Copy `pykrita/advanced_erosion_generator.desktop` and the `pykrita/advanced_erosion_generator/` folder into Krita's `pykrita` directory.
|
||||
The current plugin implementation is pure Python and does not depend on `numpy` or the test virtual environment.
|
||||
```bash
|
||||
cargo run
|
||||
```
|
||||
|
||||
## Current UI
|
||||
|
||||
The plugin adds `Tools > Scripts > Generate Advanced Erosion Terrain` and uses the active document resolution as the terrain output size.
|
||||
The app uses an `egui` desktop interface with:
|
||||
|
||||
Controls:
|
||||
|
||||
- Generation Scale
|
||||
- Erosion Scale
|
||||
- Random Seed with a randomize button
|
||||
- Advanced dropdown with Strength, Gully Weight, Detail, and Octaves
|
||||
- A left control panel with `Generation` and `Advanced` tabs
|
||||
- Generation controls for image width, image height, generation scale, erosion scale, and random seed
|
||||
- Advanced controls for strength, gully weight, detail, and octaves
|
||||
- A right preview area showing both the normalized heightmap and the shaded bumpmap
|
||||
|
||||
Reference in New Issue
Block a user