update docs
This commit is contained in:
parent
7951e08c49
commit
6b7683a143
3 changed files with 43 additions and 10 deletions
2
Cargo.lock
generated
2
Cargo.lock
generated
|
@ -192,7 +192,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "gd-icon-renderer"
|
name = "gd-icon-renderer"
|
||||||
version = "1.0.0"
|
version = "1.0.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"image",
|
"image",
|
||||||
"imageproc",
|
"imageproc",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[package]
|
[package]
|
||||||
name = "gd-icon-renderer"
|
name = "gd-icon-renderer"
|
||||||
description = "A tool to render Geometry Dash icons."
|
description = "A tool to render Geometry Dash icons."
|
||||||
version = "1.0.0"
|
version = "1.0.1"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
license-file = "LICENSE"
|
license-file = "LICENSE"
|
||||||
repository = "https://git.reidlab.online/reidlab/gd-icon-renderer"
|
repository = "https://git.reidlab.online/reidlab/gd-icon-renderer"
|
||||||
|
|
49
readme.md
49
readme.md
|
@ -1,14 +1,47 @@
|
||||||
# gd-icon-renderer
|
# gd-icon-renderer
|
||||||
|
|
||||||
A rust Geometry Dash icon renderer. Shhout out to [gd-icon-renderer](https://github.com/oatmealine/gd-icon-renderer), this project is just a rewrite but not in libvips and crystal
|
A rust Geometry Dash icon renderer. Shout out to [gd-icon-renderer](https://github.com/oatmealine/gd-icon-renderer), this project is just a rewrite but not in [`libvips`](https://www.libvips.org/) and [`crystal-lang`](https://crystal-lang.org/) for mostly personal use.
|
||||||
|
|
||||||
## usage
|
[](https://docs.rs/gd-icon-renderer/latest)
|
||||||
|

|
||||||
|
|
||||||
Provide your `GJ_GameSheet02-uhd`, `GJ_GameSheetGlow-uhd`, `Robot_AnimDesc2`, and `Spider_AnimDesc2` files along with their corresponding `*.plist` files.
|
## Usage
|
||||||
|
|
||||||
## todo
|
Provide your `GJ_GameSheet02-uhd`, `GJ_GameSheetGlow-uhd`, `Robot_AnimDesc2`, and `Spider_AnimDesc2` files along with their corresponding `*.plist` files. Rendering an icon is as follows:
|
||||||
|
|
||||||
- swap to a custom plist parser
|
1. Import the library:
|
||||||
- change zany anim to argument
|
|
||||||
- trim empty alpha space
|
```rs
|
||||||
- i think theres some weird shifting and offsets going on. investigate plz. really big on spider 16 for some reason???? related issue here: [issue #2, oatmealine/gd-icon-renderer](https://github.com/oatmealine/gd-icon-renderer/issues/2)
|
use gd_icon_renderer;
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Load your spritesheets:
|
||||||
|
|
||||||
|
```rs
|
||||||
|
// Replace filepaths for whatever you need for your usecase
|
||||||
|
let game_sheet_02 = gd_icon_renderer::assets::load_spritesheet("assets/GJ_GameSheet02-uhd.plist");
|
||||||
|
let game_sheet_glow = gd_icon_renderer::assets::load_spritesheet("assets/GJ_GameSheetGlow-uhd.plist");
|
||||||
|
let robot_sheet = gd_icon_renderer::assets::load_animations("assets/Robot_AnimDesc2.plist");
|
||||||
|
let spider_sheet = gd_icon_renderer::assets::load_animations("assets/Spider_AnimDesc2.plist");
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Render the icon out:
|
||||||
|
|
||||||
|
```rs
|
||||||
|
let icon_img = gd_icon_renderer::renderer::render_icon("ship", 44, [0.0, 0.0, 0.0], [255.0/255.0, 125.0/255.0, 125.0/255.0], true, game_sheet_02, game_sheet_glow, robot_sheet, spider_sheet);
|
||||||
|
```
|
||||||
|
|
||||||
|
You'll now be given a [`DynamicImage`](https://docs.rs/image/latest/image/enum.DynamicImage.html)
|
||||||
|
|
||||||
|
4. You'll most likely want to save the resulting image somewhere:
|
||||||
|
|
||||||
|
```rs
|
||||||
|
icon_img.save("icon_rendered.png").unwrap();
|
||||||
|
```
|
||||||
|
|
||||||
|
## Todo
|
||||||
|
|
||||||
|
- Add examples to the repo.
|
||||||
|
- Swap to a custom `plist` parser. Current one is **SLOW**.
|
||||||
|
- Trim extra alpha space on the final result.
|
||||||
|
- I think theres some weird shifting and offsets going on, please investigate 🥺. Really big on `spider_16` for some reason?? Related issue on the inspired project [here](https://github.com/oatmealine/gd-icon-renderer/issues/2).
|
Loading…
Add table
Add a link
Reference in a new issue