Skip to content

Commit

Permalink
Add link to GDExtension repo
Browse files Browse the repository at this point in the history
  • Loading branch information
Bromeon committed Nov 6, 2022
1 parent 51ff12f commit 46baf14
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,16 @@

**godot-rust** is a Rust library that implements native bindings for the [Godot game engine](http://godotengine.org/). This allows you to develop games or other applications in Godot, while benefiting from Rust's strengths, such as its type system, scalability and performance.

> **Note**: if you are looking for a Rust binding for GDExtension (Godot 4), checkout [`gdextension`](https://github.com/godot-rust/gdextension).

## Stability

The bindings cover most of the exposed API of Godot 3.5, and are being used on a number of projects in development, but we still expect non-trivial breaking changes in the API in the coming releases. godot-rust adheres to [Cargo's semantic versioning](https://doc.rust-lang.org/cargo/reference/semver.html).

Minimum supported Rust version (MSRV) is **1.63**. We use the Rust 2021 Edition.


## Engine compatibility

Due to GDNative API not strictly following SemVer and some concepts not mapping 1:1 to Rust (default parameters),
Expand Down Expand Up @@ -63,7 +67,6 @@ gdnative = { git = "https://github.com/godot-rust/godot-rust.git" }
crate-type = ["cdylib"]
```


### Custom builds

To use the bindings with a different Godot version or a custom build of the engine, see
Expand All @@ -73,6 +76,7 @@ To use the bindings with a different Godot version or a custom build of the engi

Async support is a work-in-progress, with a low-level API available in `gdnative::tasks`, if the `async` feature is enabled on `gdnative`. See [this page](https://godot-rust.github.io/book/recipes/async-tokio.html) in the book for an introduction to use the async feature with Tokio.


## Example

A typical use case is to expose your own _Native Class_, a Rust API that can be invoked from the Godot engine. The resulting native script can be attached to the scene tree, just like GDScript (`.gd` files).
Expand Down Expand Up @@ -105,7 +109,6 @@ fn init(handle: InitHandle) {
godot_init!(init);
```


### Further examples

> **Important note:**
Expand All @@ -127,7 +130,6 @@ The [/examples](https://github.com/godot-rust/godot-rust/tree/master/examples) d
- [**rpc**](https://github.com/godot-rust/godot-rust/tree/master/examples/rpc) - Simple peer-to-peer networking.
- [**native-plugin**](https://github.com/godot-rust/godot-rust/tree/master/examples/native-plugin) - Create custom node plugins.


### Third-party projects

To see a list of games and integrations developed on top of godot-rust, have a look at our list of [third-party projects](https://godot-rust.github.io/book/projects.html) in the book.
Expand Down

0 comments on commit 46baf14

Please sign in to comment.