https://github.com/xernas78/hydrogen
A full Game Engine in Java from scratch, work in progress
https://github.com/xernas78/hydrogen
2d 3d directx ecs entity-component-system from-scratch game game-engine gamedev glsl graphics graphics-engine jar java linux opengl ui vulkan windows
Last synced: about 2 months ago
JSON representation
A full Game Engine in Java from scratch, work in progress
- Host: GitHub
- URL: https://github.com/xernas78/hydrogen
- Owner: Xernas78
- License: agpl-3.0
- Created: 2025-04-06T16:40:09.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2025-04-24T16:36:51.000Z (about 2 months ago)
- Last Synced: 2025-04-27T09:58:48.247Z (about 2 months ago)
- Topics: 2d, 3d, directx, ecs, entity-component-system, from-scratch, game, game-engine, gamedev, glsl, graphics, graphics-engine, jar, java, linux, opengl, ui, vulkan, windows
- Language: Java
- Homepage:
- Size: 76.2 KB
- Stars: 11
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Hydrogen
Hydrogen is a Java-based game engine developed from scratch, currently in its early stages. The goal is to create a modular, extensible, and performant engine suitable for 2D and 3D game and software development.
It is using my own graphics library which wraps around opengl named [Photon](https://github.com/Xernas78/Photon)## π§ Project Status
This project is a work in progress. Contributions, feedback, and suggestions are welcome!## β¨ Features
- **Core Engine**: Built entirely in Java, providing a solid foundation for game and software development.
- **Modular Architecture**: Designed to be extensible, allowing for easy integration of new features and systems.
- **Rendering System**: Implementation of a rendering pipeline for 2D and 3D graphics.
- **Lighting System**: Basic lighting system + some builtin shaders
- **Input Handling**: Basic input management for keyboard and mouse events.
- **Scene Management**: Support for multiple scenes
- **Customization**: Lots of control and possibilities on every aspect of the app## πTODO
- Some small fixes
- Adding text rendering (Currently working on it)
- Physics## π οΈ Getting Started
### Prerequisites
- Java Development Kit (JDK) 8 or higher
- Apache Mavenβ### Building the Project
Clone the repository:β
```bash
git clone https://github.com/Xernas78/Hydrogen.git
cd Hydrogen
```Build the project using Maven:β
```bash
mvn clean install
```*Then you can finally use it in your projects by including this snippet in the dependencies inside your pom.xml !*
```xmldev.xernas
Hydrogen
1.0.0```
## π License
This project is licensed under the GNU Affero General Public License v3.0.β## π€ Author
**Xernas Dev*****Feel free to reach out for any questions or collaborations! (Discord: .xernas)***