Welcome to the TransmuteCore Game Engine, a high-performance and extensible game engine designed to streamline your pixel-based game development process. This README provides an overview of the engine, its features, installation instructions, and guidelines for contributing.
- Modular Design: Extensible architecture with a modular design for easy customization.
- Efficient Serialization: Advanced serialization techniques to save and load game states efficiently.
- Comprehensive Input Management: Robust input handling for various devices.
- Advanced Graphics Rendering: High-quality graphics rendering capabilities.
The project is organized as follows:
- Input: Handles user input from various devices.
- Serialization: Manages efficient serialization and deserialization of game objects.
- Objects: Contains core game objects and entities.
- Units: Manages game units and their interactions.
- System: Core system functionalities and utilities.
- GameEngine: Main engine classes and logic.
- States: Manages different game states.
- Level: Handles level data and management.
- Graphics: Graphics rendering and related utilities.
Ensure you have the following tools installed:
- Java Development Kit (JDK) 8 or higher
- An Integrated Development Environment (IDE) like IntelliJ IDEA or Eclipse
To install and use this engine, you can make use of the starter-kit found here.
The Input
package provides classes for handling user input from different devices. Customize and extend these classes to fit your game's input requirements.
The Serialization
package includes classes for serializing and deserializing game objects. Use these classes to save and load game states efficiently.
The Graphics
package offers classes and utilities for advanced graphics rendering. Customize these to enhance the visual aspects of your game.
The States
package manages various game states such as menus, gameplay, and pause states. Extend these classes to implement your game's state management logic.
The Level
package contains classes for managing game levels and related data. Use these classes to load, save, and manage levels in your game.
We welcome contributions! If you have suggestions, bug reports, or want to contribute code, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.