CommunityNews

CommunityNews

Unreal Rust

TL;DR unreal-rust allows you to write games with Unreal Engine in Rust.

unreal-rust is an opinionated Rust integration for Unreal. Rust cares about ownership, mutability and lifetimes. Mapping Unreal concepts to Rust 1 to 1 would only cause a headache. Instead unreal-rust will be written on top of the Unreal AActor and expose its API in a Rust friendly way.

The first big change is that unreal-rust will use an Entity Component System (ECS). For unreal-rust I decided to use bevy instead of rolling my own. I am just a single developer and I have to pick my battles. Writing and maintaining an ECS would distract me from doing actual work. The folks at bevy have done a wonderful job of making the ECS user friendly :smiling_face_with_three_hearts:.

I want to deeply integrate Rust into Unreal and everything should be accessible. You can add Rust Components to AActor in the editor. For example you can add a CharacterConfigComponent to the PlayerActor, which you can then access from within Rust. This allows to configure your character from Unreal without needing to touch any code. Additionally you can access Rust Components from within Blueprint. This allows you to drive Animation blueprints, or pass data into your UI.

Rust communicates with Unreal through C FFI. Its a bit out of scope for this blog post but I did a small write up to explain how it works in the unreal rust wiki.

Read in full here:

https://maikklein.github.io/unreal-rust-1/

This thread was posted by one of our members via one of our news source trackers.

Where Next?

Popular Game Dev topics Top

AstonJ
Not sure how much I missed but: Anyone else been watching it?
New
AstonJ
Looks really good - the anti-aliasing is awesome. Wonder if it’s temporal and whether they still need checkerboard rendering on the PS5?
New
New
New
First poster: bot
SNKRX is an arcade shooter roguelite where you control a snake of heroes that automatically attack nearby enemies. Combine different hero...
New
AstonJ
I wish they would create an OS or let you run Linux like they did with the PS3…
New
Help
I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New
New
Devmar1
Hi Guys, What is your opinion about geo-distributed testing, do you and use it and why? And which resources do you use for testing pro...
New
AideedGameZ
I make a cafe relax game that is free and WebGL. The challenge is you need to earn as much as possible so you can pay your bills and rent.
New

Other popular topics Top

AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
PragmaticBookshelf
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you’ll go beyond the syntax—and...
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
poll poll Be sure to check out @Dusty’s article posted here: An Introduction to Alternative Keyboard Layouts It’s one of the best write-...
New
PragmaticBookshelf
Use WebRTC to build web applications that stream media and data in real time directly from one user to another, all in the browser. ...
New
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
RobertRichards
Hair Salon Games for Girls Fun Girls Hair Saloon game is mainly developed for kids. This game allows users to select virtual avatars to ...
New
PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New