All Projects → maxon887 → Cross

maxon887 / Cross

Licence: gpl-3.0
Cross++ Lightweight Crossplatform Game Engine

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Cross

O2
2D Game Engine with visual WYSIWYG editor
Stars: ✭ 121 (+365.38%)
Mutual labels:  game-engine, lightweight
Godot tutorials
Code and examples for KidsCanCode Godot Tutorials.
Stars: ✭ 119 (+357.69%)
Mutual labels:  game-engine, education
Enduro2d
Yet another 2d game engine of dreams (work in progress)
Stars: ✭ 82 (+215.38%)
Mutual labels:  game-engine, lightweight
tiny-framework
A light wight easy to use RESTful apis framework for education & demo purposes. stripped down framework to the fundamental components that that every one would essentially need to (learn / make a demo application).
Stars: ✭ 13 (-50%)
Mutual labels:  lightweight, education
Space
A 3D Game Engine by creatorlxd.Use DirectX
Stars: ✭ 19 (-26.92%)
Mutual labels:  game-engine
Nya
[WIP] Game Engine written in Crystal
Stars: ✭ 16 (-38.46%)
Mutual labels:  game-engine
Talks
Repository of publicly available talks by Leon Eyrich Jessen, PhD. Talks cover Data Science and R in the context of research
Stars: ✭ 16 (-38.46%)
Mutual labels:  education
Tmingengine
This project begin from my hobby . I want to learn game rendering step by step , but finally to make a useful game engine .
Stars: ✭ 16 (-38.46%)
Mutual labels:  game-engine
Adapt
Advanced Developer Async Programming Toolkit
Stars: ✭ 26 (+0%)
Mutual labels:  game-engine
Lightcomm4j
Yet another lightweight asynchronous network library for java
Stars: ✭ 25 (-3.85%)
Mutual labels:  lightweight
Coord Rs
[deprecated] A simple, ergonomic vector mathematics crate for Rust
Stars: ✭ 18 (-30.77%)
Mutual labels:  game-engine
Aposelene
Experimental 2D Engine in C
Stars: ✭ 16 (-38.46%)
Mutual labels:  game-engine
Cartridge.js
HTML5 retro game engine
Stars: ✭ 23 (-11.54%)
Mutual labels:  game-engine
Arcan
Arcan - [Display Server, Multimedia Framework, Game Engine] -> "Desktop Engine"
Stars: ✭ 885 (+3303.85%)
Mutual labels:  game-engine
Hamexam
这是一个帮助业余无线电技术能力认证考试的软件,用来背题。
Stars: ✭ 25 (-3.85%)
Mutual labels:  education
Errormoji
®️ errors, in emoji
Stars: ✭ 16 (-38.46%)
Mutual labels:  education
Ulnoiot Upy
retired version of ulnoiot based on micropython
Stars: ✭ 17 (-34.62%)
Mutual labels:  education
Larastrator
All in one - admin panel with tailwindcss and vuejs.
Stars: ✭ 25 (-3.85%)
Mutual labels:  lightweight
Excalibur
🎮 An easy to use 2D HTML5 game engine written in TypeScript
Stars: ✭ 892 (+3330.77%)
Mutual labels:  game-engine
Haskell
Recursos de Haskell
Stars: ✭ 17 (-34.62%)
Mutual labels:  education

Cross++

Is a lightweight cross-platform game engine. Written mostly on C++. Main purpose of this engine to be easy to learn, read and understand.

Questions can be asked via facebook

Build Status

Windows iOS Android
Win iOS AND

Demo

Demo project can be found in Demo/Projects/{TargetPlatfor} directory.

Features

  1. Currently supported platforms Windows, iOS, Android.
  2. Entity-Component system and scene management.
  3. Renderer with materials, lighting and model loading.
  4. Lightweight and fast. Distributable binaries and assets weight around 1.5mb.
  5. Crossp-platform input system.
  6. Audio system.
  7. Documented most part of code.
  8. Base scene editor
  9. Many useful interesting features like: Event System, Assert System, Memory Manager.

Screenshot Gallery

Alt text Alt text Alt text Alt text Alt text

1.0 New Game Creation

In order to create new game you must do 3 things.

  1. Create inherit class from Screen which will be reflection of you current game screen like "Menu", "Level 1", "Monkey Boss" etc. Every game needs at leas one screen to display. Most likely you will override virtual Screen function void Update(float sec); to provide game drawing or state updating mechanism or any your custom stuff.
  2. Create inherit class from Game which will be reflection of you game. You must override one pure virtual function called virtual Screen* GetStartScreen() = 0; to lets Game know which Screen you want to play first. This class usually contains general game information. Like saves, configuration available screens etc.
  3. Last thing to do is Create template function that returns you game to engine environment. This function declaration contains in Cross.h. Example of this function may looks like this:
Game* CrossMain(Launcher* launcher){
	Game* superCoolGame = new YourSuperCoolGame(launcher);
	return superCoolGame;
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].