Cataclysm is a Windows-only, 2D rendering and game development engine written in C++. Included with the Cataclysm Engine is Caterpillar, the visual editor for Cataclysm, as well as the Cataclysm Core Mono Library (CCML);
The default renderer included with Cataclysm is Vesuvius, a 2D renderer that currently supports OpenGL.
Cataclysm supports C# scripting with Mono, an open-source implementation of .NET. Native C++ scripting has been deprecated as of v2.0.0.
Table of Contents
Compiled Cataclysm binaries will be available soon. In the meantime, you can compile Cataclysm from source by following the instructions under Compilation.
Cataclysm is still early in development and will have bugs in distribution builds. Please help contribute to Cataclysm by reporting bugs and suggesting new features!
Cataclysm includes all project dependencies. Cataclysm includes the following libraries:
- Box2D - 2D Physics Library
- entt - ECS Library
- FileWatch - File Watcher
- glad - OpenGL implementation
- glfw - Window & Events Library
- glm - OpenGL Mathematics Library
- ImGui - UI Library
- ImGuizmo - Gizmo Library
- miniaudio - Audio Playback and Capture Library
- Mono - .NET Runtime
- msdf-atlas-gen - MSDF Font Atlas Generation Utility
- spdlog - C++ Logging Library
- stb - Image Loading
- yaml-cpp - YAML Parser & Emitter
After cloning the latest version of Cataclysm, run Scripts/Win-GenProjects.bat to generate project files for Visual Studio 2022. Currently you can test Cataclysm through your IDE, however complete instructions for compiling binaries are coming soon. Thank you for your patience and for helping to improve Cataclysm!
v2.0.0
- Additional Field Serialization Types Supported
- Asset System
- Improved XML Comments
- Project Creation
- Project Resources
- UI Overhaul
- Code Refactor
- Bug Fixes
v1.0.2
- Audio Rendering
- Audio Source Component
- UI Icons
- Bug Fixes
v1.0.1
- Parent/Child
- Local vs Global Transforms
- Profiler
- Per-Entity Font Binding
- Trigger Colliders
- Additional Physics Functions
- Additional Vector Functions
- Additional Entity Functions
- Drag and Drop Scripts and Fonts
- Improved UI
- Documentation
- QOL Features
- Code Refactor
- Bug Fixes
CCML documentation is available at jackpsmith.com/cataclysm/docs.
Cataclysm is open-source under the MIT License. See LICENSE.txt for details.
Cataclysm is based on the Hazel Engine by Studio Cherno. While this repository is not a direct fork of Hazel, it shares much of the same code. Yan "The Cherno" Chernikov, as well as all members of Studio Cherno and all contributors to the Hazel repository are to be considered contributors to this project.
Cataclysm is open source, however this main branch in personally maintained by Jack P Smith.
Author: Jack P Smith
Contributors: Jack P Smith