Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bend-n/enginesound
Procedural engine sound generator for godot!
https://github.com/bend-n/enginesound
Last synced: about 2 months ago
JSON representation
Procedural engine sound generator for godot!
- Host: GitHub
- URL: https://github.com/bend-n/enginesound
- Owner: bend-n
- License: mit
- Fork: true (DasEtwas/enginesound)
- Created: 2023-03-04T13:52:08.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-06-16T12:53:49.000Z (5 months ago)
- Last Synced: 2024-09-17T13:10:38.644Z (about 2 months ago)
- Language: Rust
- Homepage:
- Size: 25.3 MB
- Stars: 6
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# enginesound
[![version](https://img.shields.io/badge/4.2+-blue?logo=godot-engine&logoColor=white&label=godot&style=for-the-badge)](https://godotengine.org "Made with godot")
[![package](https://img.shields.io/npm/v/@bendn/enginesound?label=version&style=for-the-badge)](https://www.npmjs.com/package/@bendn/enginesound)Extension for godot used to generate purely synthetic engine sounds in real-time.
Based on [DasEtwas/enginesound](https://github.com/DasEtwas/enginesound).
## installation
- use the [gpm](https://github.com/godot-package-manager/cli) to install
- make a `engine.gdextention` file: [^1]
```toml
[configuration]
entry_symbol = "gdext_rust_init"
compatibility_minimum = "4.2.0"[libraries]
linux.release.x86_64 = "res://addons/@bendn/enginesound/libenginesound.so"
linux.debug.x86_64 = "res://addons/@bendn/enginesound/libenginesound.so"
macos.release = "res://addons/@bendn/enginesound/libenginesound.dylib"
macos.debug = "res://addons/@bendn/enginesound/libenginesound.dylib"
windows.debug.x86_64 = "res://addons/@bendn/enginesound/libenginesound.dll"
windows.release.x86_64 = "res://addons/@bendn/enginesound/libenginesound.dll"
```[^1]: i could include it in the addon but godot doesnt like non toplevel `.gdextension` files.
## usage
- make a `AudioStreamPlayer` (2d, 3d, or global)
- put a `EngineStream` in the `AudioStreamPlayer`
- call `play()` on the `AudioStreamPlayer`
- call `set_stream()` on the `EngineStream` with the `AudioStreamPlayers`'s stream playback (`stream.set_stream(get_stream_playback())`)
- make a `_process` function that calls `update()` on the `EngineStream`