awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
godot-rust avatar

godot-rust/gdext

0
View on GitHub↗
bsky.app/profile/godot-rust.bsky.social↗

Gdext

gdext provides a set of language bindings for writing high-performance native game logic in Rust for the Godot 4 engine. It serves as a framework for creating native engine extensions and custom classes via the GDExtension library, allowing developers to extend core engine functionality without recompiling the engine source code.

The project includes a dedicated Rust WebAssembly toolchain to compile native logic into modules for execution in web browsers. This system supports WebAssembly-compatible compilation with specific configurations for web threading and module debugging.

The toolkit covers a broad range of engine integration capabilities, including custom class definitions, scene tree node management, and type-safe signal handling. It provides utilities for physics simulation, procedural content generation, and the development of custom editor plugins.

Development is supported by automation tools for project setup, native extension testing, and logic unit testing.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Native Engine Extensions - Provides a framework for creating native engine extensions and custom classes without recompiling the core engine source.
  • GDExtension Implementations - Provides a framework for creating native engine extensions and custom classes using the GDExtension API.
  • Macro-Based Type Registrations - Uses compile-time macros to automatically generate the boilerplate code required for registering classes and methods with the engine.
  • Godot Rust Bindings - Provides high-performance Rust language bindings for writing native game logic in Godot 4.
  • Native Engine Extensions - Provides a toolkit for developing high-performance native extensions, physics simulations, and editor plugins.
  • Scene Tree Manipulations - Provides utilities for initializing and accessing child nodes within the scene tree to manipulate objects and UI.
  • C API Rust Bindings - Provides language bindings that expose low-level C APIs to allow Rust to extend core engine classes.
  • Class Method Overrides - Implements a mechanism to override core engine class functions to customize default behaviors via a stable interface.
  • Data Type Conversions - Provides utilities for transforming native Rust types into specialized Godot data structures like vectors and packed arrays.
  • Variant-Based Conversions - Translates between Rust types and the engine's universal data container for seamless property and argument passing.
  • Dynamic Dispatch Mechanisms - Manages runtime polymorphism and class inheritance through smart pointers and dynamic casting logic.
  • Foreign Function Interfaces - Implements binding layers for low-overhead communication and data exchange between Rust and the engine's C-compatible signatures.
  • Type-Safe Pointer Wrappers - Manages native pointers with casting logic to maintain type safety during runtime class inheritance in the engine.
  • Rust WebAssembly Integrations - Includes a dedicated toolchain for compiling native game logic into WebAssembly modules for browser execution.
  • Inheritance-Aware Smart Pointers - Wraps native pointers in smart pointers with casting logic to maintain type safety during runtime class inheritance.
  • Custom Signal Definitions - Provides a mechanism to create typed event signals that emit notifications to listeners with controlled visibility.
  • Type-Safe Event Contracts - Implements type-safe callbacks for connecting to engine events to trigger native logic during state changes.
  • Engine Event Listeners - Implements type-safe listeners that trigger native logic in response to built-in engine signals.
  • Scripting Interop - Implements a registration system that makes native Rust functions callable from the Godot scripting environment.
  • Engine Loop Callbacks - Provides hooks to execute custom native logic on every frame or physics tick within the primary engine loop.
  • WebAssembly Exports - Provides toolchains to compile native game logic into WebAssembly modules for execution in web browsers.
  • Interactive Narratives - Integrates local large language models to generate dynamic, AI-driven narratives and interactive storytelling.
  • Inspector Variable Exposure - Provides attributes to mark Rust fields as editable within the visual property inspector for real-time tuning.
  • Editor Plugins - Provides a framework for creating custom tools and extensions that integrate directly into the game engine editor.
  • Physics Simulations - Integrates with 2D and 3D physics engines to calculate complex collision and movement dynamics.
  • Infinite Terrain Generators - Provides algorithmic tools for creating deterministic 3D terrains and landscapes using procedural noise.
  • Type-Safe Remote Calls - Implements remote procedure calls with strong typing for coordinated logic execution across networked game clients.
  • Asynchronous Processing - Enables non-blocking execution of event signal processing using asynchronous syntax to maintain engine responsiveness.
  • Multi-threaded Execution - Provides concurrency support and synchronization mechanisms for managing shared instance access during logic execution.
  • Web Threading Models - Supports separate single-threaded and multi-threaded builds to ensure compatibility across different browser environments.
  • Wasm Development Toolchains - Provides a toolchain for compiling native game logic into WebAssembly modules for execution in web browsers.
  • Asynchronous Task Managers - Supports non-blocking operations using coroutines and runtime environments to maintain application responsiveness.
  • Node-Attached Scripting Systems - Allows binding native Rust scripts directly to engine nodes to implement custom behavior without recompiling the core.
  • Function Pointer Lazy Loading - Reduces initial memory usage and startup time by deferring the loading of engine function pointers.
  • Singleton Patterns - Implements a system for defining global objects and autoloads to maintain consistent state across the application.
  • Deferred Function Loading - Reduces initial memory usage and startup time by deferring the loading of engine function pointers until they are first used.
  • Procedural Content Generation - Provides algorithmic frameworks for creating dynamic game worlds and environments.
4,912 stars·298 forks·Rust·MPL-2.0·51 views

Star history

Star history chart for godot-rust/gdextStar history chart for godot-rust/gdext

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does godot-rust/gdext do?

gdext provides a set of language bindings for writing high-performance native game logic in Rust for the Godot 4 engine. It serves as a framework for creating native engine extensions and custom classes via the GDExtension library, allowing developers to extend core engine functionality without recompiling the engine source code.

What are the main features of godot-rust/gdext?

The main features of godot-rust/gdext are: Native Engine Extensions, GDExtension Implementations, Macro-Based Type Registrations, Godot Rust Bindings, Scene Tree Manipulations, C API Rust Bindings, Class Method Overrides, Data Type Conversions.

Which projects share features with godot-rust/gdext?

Projects with overlapping indexed features include: godotengine/godot-demo-projects — This repository is a comprehensive collection of functional 2D and 3D demo projects and implementation samples for the… imgui-rs/imgui-rs — This project provides Rust bindings for the Dear ImGui library, enabling the creation of high-performance graphical… godotengine/godot-cpp — godot-cpp is a C++ binding library and development kit for creating high-performance extensions and custom nodes for… rustwasm/wasm-bindgen — wasm-bindgen is a bindings generator and interop layer designed to map data types and functions across the boundary… neon-bindings/neon — Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves… defold/defold — Defold is a cross-platform game engine and integrated development environment used to create 2D and 3D games for…

Projects sharing features with Gdext

These projects share indexed features with Gdext. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • godotengine/godot-demo-projectsgodotengine avatar

    godotengine/godot-demo-projects

    8,250View on GitHub↗

    This repository is a comprehensive collection of functional 2D and 3D demo projects and implementation samples for the Godot Game Engine. It serves as an interactive tutorial and reference library, providing a working codebase to demonstrate how to apply engine features in real-world scenarios. The collection focuses on practical implementation guides, covering a wide array of technical capabilities from basic engine fundamentals to advanced rendering and scripting techniques. It allows users to study the application of node-based composition, asset pipelines, and game logic through direct ex

    GDScript
    View on GitHub↗8,250
  • godotengine/godot-cppgodotengine avatar

    godotengine/godot-cpp

    2,558View on GitHub↗

    godot-cpp is a C++ binding library and development kit for creating high-performance extensions and custom nodes for the Godot engine. It provides the necessary headers and framework to implement complex game logic and low-level systems using native code. The project enables the development of GDExtension plugins, allowing native libraries to be loaded into the engine without requiring a full recompilation of the core software. It facilitates the creation of custom engine extensions through a system of native bindings that map C++ classes and methods to the internal engine database. The fram

    C++
    View on GitHub↗2,558
  • imgui-rs/imgui-rsimgui-rs avatar

    imgui-rs/imgui-rs

    3,019View on GitHub↗

    This project provides Rust bindings for the Dear ImGui library, enabling the creation of high-performance graphical user interfaces using an immediate-mode paradigm. By defining interface elements directly within the application render loop, it eliminates the need for persistent object hierarchies, allowing for rapid prototyping and dynamic visual updates. The library distinguishes itself by wrapping complex native function signatures in type-safe builders, which improves developer ergonomics while maintaining the performance characteristics of the underlying C++ implementation. It utilizes a

    Rustguiimguirust
    View on GitHub↗3,019
  • rustwasm/wasm-bindgenrustwasm avatar

    rustwasm/wasm-bindgen

    9,057View on GitHub↗

    wasm-bindgen is a bindings generator and interop layer designed to map data types and functions across the boundary between WebAssembly and JavaScript. It functions as a foreign function interface that synthesizes the necessary boilerplate to enable bidirectional communication between Rust and the browser runtime. The project generates glue code and wrappers that automate the conversion of complex types, allowing Rust functions to be exported as JavaScript modules and browser APIs to be imported into Rust. It uses procedural macros to define these interfaces and synthesizes bindings based on

    Rust
    View on GitHub↗9,057
  • Compare all 30 related projects→