Designed to give you control and not take anything away.
Arctic Engine
Arctic Engine
Getting started from scratch is always the biggest challenge and use of time. Arctic Engine API is so easy to use it makes it fun to learn, just like it ought to be.
Install Visual Studio Community 2019. Make sure to select the 'Desktop development with C++' workload. Run Visual Studio and click the 'Clone or check out code' button. Enter 'https://gitlab.com/seaice/arctic.git' as the Repository location. In the solution explorer open the 'wizard' folder and doubleclick the 'wizard.sln'. Click the green triangle 'Local Windows Debugger'.
A 3-minute videoguide:
Linux
Install some dependencies, clone the source code, make and run the wizard:
cd ~ && sudo apt-get install git cmake clang libasound2-dev libglu1-mesa-dev freeglut3-dev libgles2-mesa-dev && git clone https://gitlab.com/seaice/arctic.git && cd ~/arctic/wizard && cmake . && make -j 4 && ./wizard
MacOS
Install XCode. Run XCode and select 'Souce Control -> Clone' menu option. Enter 'https://gitlab.com/seaice/arctic.git' in the 'Enter repository URL' field and click 'Clone' buttons. Select 'File -> Open' menu option, open the 'arctic/wizard' directory (by default located in your Documents directory). Click the 'Product -> Run' menu option.
Building for the web browser
Instructions for Linux and MacOS users on how to run an Arctic Engine game in a web browser:
Project examples cover a wide range of functionalities, including basic graphic operations, game development, programming education, and event modeling. These examples serve as an excellent starting point for exploring the project's capabilities and inspire the creation of your own applications.
Hello World
This example demonstrates basic text display on the screen. The program loads a font and displays the message "Hello world!" on the screen in a loop until the Escape key is pressed.
Key Features:
Loading and using a font.
Main game loop with input handling.
Rendering text on the screen.
Tetramino game
This example implements a classic falling blocks game where players control various shaped blocks. The program manages falling pieces, processes user input to control blocks, and checks for line completion.
Key Features:
Managing block positioning and rotation.
Handling collisions and filled lines.
Rendering the game field and the current block.
Snake
This example implements the classic Snake game. The program manages snake movement, food collection, and collision detection.
Key Features:
Snake movement and growth mechanics.
Collision detection.
Score tracking.
Coding for Kids
This example is designed to teach the basics of programming. The program provides functions for graphic display of elements, text input, and user interaction.
Simple command input structure for interacting with the program.
Turn-based strategy
This example implements a simple strategy game where players control various types of units. The game includes territory capture mechanics, player turns, and win condition checks.
Key Features:
Defining types of units and their properties.
Main game loop with turn processing and win condition checks.
Rendering game elements on the screen.
Discrete-event simulator
This example demonstrates the basics of discrete event simulation. The program manages time-based events, updates the model, and displays results on the screen.
Key Features:
Managing simulation time and events.
GUI for managing simulation parameters.
Displaying the current state and progress information.
Quick Tutorials
Drawing Text
Text rendering in Arctic Engine is handled by the Font class. Here's a simple example of how to load a font and draw text:
Licenses tell you what the software developers are scared of.
BSD license is for those scared of having their name dragged through the mud.
GPL is for those scared of having their code put into a proprietary piece of software.
We fear not being useful to the community, so Arctic Engine is released under the MIT License.