ext-php-rs
gdnative
ext-php-rs | gdnative | |
---|---|---|
4 | 93 | |
531 | 3,565 | |
- | 0.5% | |
9.2 | 7.2 | |
about 2 months ago | 21 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ext-php-rs
-
PHP-Tokio – Use any async Rust library from PHP
The PHP <-> Rust bindings are provided by https://github.com/Nicelocal/ext-php-rs/ (our fork of https://github.com/davidcole1340/ext-php-rs with a bunch of UX improvements :).
php-tokio's integrates the https://revolt.run event loop with the https://tokio.rs event loop; async functionality is provided by the two event loops, in combination with PHP fibers through revolt's suspension API (I could've directly used the PHP Fiber API to provide coroutine suspension, but it was a tad easier with revolt's suspension API (https://revolt.run/fibers), since it also handles the base case of suspension in the main fiber).
-
OK so whose gonna tell them
Real chads write PHP websites and extend it with Rust
- Bindings for the Zend API to build PHP extensions natively in Rust
- ext-php-rs - Writing PHP extensions in Rust
gdnative
- Can someone explain how exactly are multiple languages supported in a single game engine
- Will rust ever become a first class citizen in Godot?
-
Non web-based crossplatform GUI frameworks focused on security
It's a little less standard use, but Godot has been used to build application guis, which could be paired with rust bindings to implement app logic. I can't speak to reproducibility/scalability, but Godot's ui is extremely solid, and I'd probably choose that over Bevy until Bevy's ui progress matures.
-
What is Rust's potential in game development?
Adding onto this, I successfully written a game in Godot using gdnative / gdext. I started with a split approach using gdscript and rust for CPU intensive but found that the API layer was slow at transferring large amounts of data (serialization?). I ended up rewriting it in all rust and it worked like a charm. I was able to target native and web assembly, the web assembly was much slower but worked on the browser.
-
Why is it so difficult to learn to use Bevy?
Check this: https://github.com/tomuxmon/bevy_roguelike if you are still into bevy. Scheduling is a bit bork and I have not found time to port it to latest bevy. But most of the systems should work fine(if used on latest bevy). But again. If you want faster result go with something like Godot. In fact, just go with Godot. It is mature, easy to start, no lock in(free and MIT license), a lot of learning material. Also with Godot you can also use Rust https://godot-rust.github.io/. Ditch Unity (do not have time to explain 😅). Have fun!
-
GDScript is fine
Bevy Godot-Rust
-
Rust – Are We Game Yet?
> Same for Godot.
While likely true that it's "Unlikely to ever be as supported" as the 4 officially supported languages[0] ("GDScript, C#, and, via its GDExtension technology, C and C++."), Godot's GDExtension technology is specifically intended for use in adding support for other languages.
The most relevant tracking issue for Rust is presumably:
* <https://github.com/godot-rust/gdnative/issues/824>
Which links to:
* <https://github.com/godot-rust/gdextension>
[0] https://docs.godotengine.org/en/4.0/getting_started/step_by_...
-
OK so whose gonna tell them
...Godot v3.x has Rust support via godot-rust and Godot v4.0 is released as of this month?
-
Godot 4.0 is out
I was curious, and looked it up. Nothing built in, but there's an interesting project that works with godot: https://godot-rust.github.io/
-
There's the Rust Player still going wrong subreddit?
There's people working on it: https://godot-rust.github.io/
What are some alternatives?
phanalist - Performant static analyzer for PHP, which is extremely easy to use. It helps you catch common mistakes in your PHP code.
bevy - A refreshingly simple data-driven game engine built in Rust
unixstring - An FFI-friendly null-terminated byte string
Godot - Godot Engine – Multi-platform 2D and 3D game engine
ext-php-rs - Bindings for the Zend API to build PHP extensions natively in Rust.
RG3D - 3D and 2D game engine written in Rust [Moved to: https://github.com/FyroxEngine/Fyrox]
rust-php-ext - Rust library integrated into a PHP extension
macroquad - Cross-platform game engine in Rust.
tomlrs-php - Rust extension to bring fast TOML parsing to PHP
wgpu - Cross-platform, safe, pure-rust graphics api.
linux - Linux kernel source tree
veloren - An open world, open source voxel RPG inspired by Dwarf Fortress and Cube World. This repository is a mirror. Please submit all PRs and issues on our GitLab page.