https://github.com/fabioardis/1158engine
3D OpenGL engine with ImGui Editor written in C++
https://github.com/fabioardis/1158engine
3d 3d-graphics cpp engine imgui imgui-glfw opengl shaders
Last synced: 6 months ago
JSON representation
3D OpenGL engine with ImGui Editor written in C++
- Host: GitHub
- URL: https://github.com/fabioardis/1158engine
- Owner: FabioArdis
- License: apache-2.0
- Created: 2024-10-27T17:35:35.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-11-30T12:44:51.000Z (10 months ago)
- Last Synced: 2025-04-05T11:14:26.238Z (6 months ago)
- Topics: 3d, 3d-graphics, cpp, engine, imgui, imgui-glfw, opengl, shaders
- Language: C++
- Homepage:
- Size: 1.46 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 1158engine
1158engine is an ongoing project for a 3D engine built using OpenGL. The engine is designed to provide a flexible framework for rendering 3D graphics and managing game objects through a component-based architecture. While the engine is still in development, it currently supports basic functionalities such as scene management and various components that can be attached to game objects.
Note: The engine is not yet complete; it can handle some fundamental tasks, but it does not currently support the full development of a modern 3D software.
## Table of Contents
- [Features](#features)
- [Getting Started](#getting-started)
- [Usage](#usage)
- [Wiki](#wiki)
- [Contribution](#contribution)## Features
- **Basic Scene Management**: Create and manage scenes.
- **Component System**: Attach various components to `GameObject` entities for enhanced functionality.
- **Rendering**: Render 3D objects and text using OpenGL
- **Shader Support**: Write and use custom shaders for advanced rendering.## Getting Started
To get started with this project, follow these steps:
1. **Clone the repository**:
```bash
git clone https://github.com/FabioArdis/1158engine.git
cd 1158engine
```
2. **Install the required dependencies**:
Ensure you have the following dependencies installed on your system:
- [CMake](https://cmake.org/): Build system
- [GLM](https://github.com/g-truc/glm): Mathematics library for graphics software.
- [GLFW](https://www.glfw.org/): Window management and input handling.
- [FreeType](https://freetype.org/): Font rendering library.
- Although already included in this repo, check out the Docking branch of [dear ImGui](https://github.com/ocornut/imgui/tree/docking) (Editor UI) and [GLAD](https://glad.dav1d.de/) (OpenGL function loader)
3. **Build the project**:
```bash
mkdir build
cd build
cmake ..
make
```
4. **Run the application**:
```bash
./1158engine
```## Usage
Simply execute the engine binary generated in the root directory. At this stage of development you can use the demo scene to start testing functionalities and components.## Wiki
A wiki will be released once the project reaches a more presentable stage. This will provide detailed guides, tutorials, and API references to assist users in understanding and utilizing the engine effectively.## Contribution
Contribuitions are welcome, feel free to submit issues or pull requests.