Skip to content

Repository files navigation

Game Frame X Logo

GameFrameX Godot

License Version Godot Version Documentation

Discord GitHub Bilibili Gitee

All-in-One Solution for Indie Game Development · Empowering Indie Developers' Dreams


Documentation · Quick Start · QQ Group: 467608841 / 233840761


English | 简体中文 | 繁體中文 | 日本語 | 한국어

Project Overview

GameFrameX Godot is the Godot .NET project and integration sample for the GameFrameX framework. It combines reusable runtime modules, editor plugins, hotfix assemblies, resource-driven UI examples, and verification scenes.

Features

  • Modular components for lifecycle, object pooling, reference pooling, events, FSM, timers, entities, settings, and global configuration.
  • Asset and startup workflows for resource packages, version checks, downloading, procedures, and hotfix assembly loading.
  • Network, Web, Web Protobuf, localization, configuration-table, and channel utilities.
  • Godot GUI and FairyGUI UI adapters with form lifecycle, grouping, depth, and asynchronous loading support.
  • Editor plugins and runtime verification scenes for asset, configuration, protocol, UI, and project workflows.

Quick Start

Installation

Requirements:

  • Godot .NET 4.7.1.
  • .NET 8 SDK. Android builds use .NET 9 according to the project configuration.

Clone the repository, open it in the Godot .NET editor, and wait for .NET dependencies to restore. GameFrameX modules are under addons/ and core modules are enabled through project.godot.

Run one of these scenes:

  • Scenes/Launcher.tscn — scene-configured component chain.
  • Scenes/LauncherAuto.tscn — code-created component chain.
  • Scenes/Verification/AssetSystemRuntimeVerifier.tscn — asset-system runtime check.
  • Scenes/Verification/ProtoMessageRuntimeVerifier.tscn — Protobuf HTTP loopback check.

Usage Examples

Registered runtime components can be retrieved through GameEntry:

using Godot;
using GameFrameX.Runtime;

public partial class GameManager : Node
{
    public override void _Ready()
    {
        var objectPool = GameEntry.GetComponent<ObjectPoolComponent>();
        var ui = GameEntry.GetComponent<GameFrameX.UI.Runtime.UIComponent>();
    }
}

See the README in the corresponding addons/com.gameframex.godot.* directory for module-specific configuration and APIs.

Architecture

  • addons/ contains reusable GameFrameX Godot modules and editor plugins.
  • Scripts/ contains project startup, procedure, UI flow, and verification scripts.
  • Assets/ contains hotfix assemblies, generated configuration code, UI resources, and runtime data.

Scenes/Launcher.tscn serializes the standard component chain. Scenes/LauncherAuto.tscn builds an equivalent chain in C# for code-driven startup validation.

Platform Support

The project targets Godot 4.7 with .NET and declares Mobile rendering features. Project files contain a general .NET 8 target and an Android-specific .NET 9 target. Validate export behavior for each target platform in the Godot .NET editor before shipping.

Dependencies

  • Godot .NET SDK 4.7.1.
  • .NET 8 SDK; Android configuration targets .NET 9.
  • SharpZipLib 1.4.2.
  • GameFrameX modules under addons/, including Asset, AssetSystem, Config, Download, Entity, Event, FSM, Localization, Network, Procedure, Setting, Timer, UI, Web, and Web Protobuf.
  • Optional UI integrations provided by the FairyGUI and GDGUI modules.

Documentation & Resources

Community & Support

Discord GitHub LinkedIn Reddit X YouTube Bluesky Bilibili Gitee QQ

Changelog

See the repository releases and commit history for project changes.

License

See LICENSE for license information.

About

Godot client of the GameFrameX framework: component-based runtime, YooAsset-style asset system with PCK packaging, FairyGUI/GdGUI UI and ProtoBuf networking — connects to the .NET game server out of the box. | GameFrameX 的 Godot 客户端:组件化运行时、YooAsset 式资源系统与 PCK 打包、FairyGUI/GdGUI UI、ProtoBuf 网络,开箱即连 .NET 服务器。

Resources

Stars

13 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages