Skip to content
Ali Brooks edited this page Apr 1, 2025 · 2 revisions

Getting Started

To get started with Kinesis Engine, clone this repository, and set up your project with your prefered method of building with CMAKE. We use Visual Studio Code, however anything will do.

GameFiles

This is the heart of your game, where you will call various Kinesis functions. Here is the initial setup, and a breakdown of what it means:

#include "../kinesis/kinesis.h"

int main(int /*argc*/, char **/*argv*/)
{
    Kinesis::initialize();
    while(Kinesis::run()){
        //Your Game Loop Here.
    }
}

The two main functions are:

Kinesis::initialize();

Sets up Kinesis. Must be run before any other function calls. 

Kinesis::Run()

Returns true while game is running, keep in a while or do while loop.

(More to be added as implemented, info on functions, namespaces, etc.)

Kinesis Engine Files

Kinesis is built such that it is easy for anyone to pop open the hood and modify the engine to their liking. Here are the major files, and their primary functions.

Kinesis.h, Kinesis.cpp

The only cpp file within Kinesis. This is the core of Kinesis, as it manages, initializes, and calls every component of the engine (Window, GUI, etc).

GUI.h

This is the manager of the IMGUI interface for Kinesis.

Kinesis::GUI::toolbar()

This is the function that defines the overarching toolbar for Kinesis.

pipeline.h

This file handles the entire rendering pipeline (Vertex, Fragment, Rasterization, Depth Buffer, etc). Can be modified to add additional steps to the pipeline, new passes, etc.

swapchain.h

This file handles the swapchain of the engine. Swapchain is how the GPU stabilizes framerate, by displaying one frame, while rendering another, and then "swaping" them and clearing the old frame buffer.

window.h

Window handles all intitilization and display of IMGUI and Vulkan. This is the heart of all functions related to displaying things on the screen.