Welcome to the GFX Game Engine – an open-source framework designed to make game development simple, powerful, and accessible. With version 1.5.0, GFX now takes a big leap into 3D game development while continuing to provide a solid foundation for 2D projects.
GFX Game Engine is a lightweight yet robust framework built in C# for developing 2D and 3D games. Whether you're an indie developer or a hobbyist, GFX empowers you with tools for seamless scene management, rendering, physics simulation, and game logic customization.
Why Choose GFX?
- Simplifies game development with intuitive tools and APIs.
- Combines performance with flexibility for 2D and 3D workflows.
- Open-source with MIT licensing for unlimited creative freedom.
- Dynamic Shadows: Add realism with soft, adjustable shadows.
- Specular Shader: Reflective materials for visually polished 3D environments.
- New 3D Game Elements: Now includes spheres, capsules, and compound mesh colliders.
- Physics Overhaul: Enhanced collision handling, new rigidbodies, and collision groups.
- Performance Boosts: Instanced rendering and raycast accuracy improvements.
For a complete list of features, check the release notes.
GFX leverages OpenGL 4.5 for high-performance rendering, with support for custom shaders and materials. Supported 3D file formats include Wavefront (.obj), FBX, Collada, and GLTF. Future plans include support for Vulkan and DirectX 12.
Physics are powered by BulletSharp, a wrapper for the Bullet Physics library. The framework supports:
- PhysicHandler3D and PhysicHandler2D for seamless simulations.
- Custom physics handlers to suit advanced gameplay needs.
- Fully integrated layer system for managing game elements such as sprites, 3D objects, and empty game objects.
- Support for GameBehaviors to simplify custom game logic implementation.
- Ready-to-use 2D particle emitters and 2D lighting systems to bring your games to life.
Easily manage textures, models, and fonts by placing them in the Resources
folder. The Asset Manager ensures streamlined loading without additional dependencies.
GFX integrates some of the best open-source libraries for game development:
- AssimpNet: Model loading (AssimpNet Repository)
- BulletSharp: Physics simulation (BulletSharp Repository)
- GlmSharp: Vector and matrix operations (GlmSharp Repository)
- NetGL: OpenGL wrapper (NetGL Repository)
- Newtonsoft.Json: JSON parsing (Newtonsoft.Json Repository)
Refer to the LICENSE
folder for detailed library licenses.
git clone https://github.com/Andy16823/GFX.git
- A complete 3D example project is included to help you get started.
- Follow the instructions in the documentation to create your first game!
- Website: gfx-engine.org
- Forum: community.gfx-engine.org
- Docs & Tutorials: docs.gfx-engine.org
GFX Game Engine thrives on community contributions! Whether it’s reporting bugs, submitting feature requests, or contributing code, your input is always welcome. Check out our contribution guidelines to get involved.
The GFX Game Engine is released under the MIT License, ensuring complete freedom for commercial and personal projects. See the LICENSE folder for full terms.