/TaskForJob

Task for my first job

Primary LanguageC++MIT LicenseMIT

TaskForUniver

Test task for the first job.

Download

git clone https://github.com/Retr0Wawe/TaskForUniver --recursive

Requirements:

Linux

pacman:

sudo pacman -S make
sudo pacman -S cmake

apt:

sudo apt-get install make

sudo apt-get install cmake

Windows

download cmake https://github.com/Kitware/CMake/releases/download/v3.23.0-rc1/cmake-3.23.0-rc1-windows-x86_64.msi

Build(on project path!)

Linux

mkdir build && cd build && cmake .. && make

Windows

open terminal and write:

mkdir build && cd build && cmake ..

Architecture

Architecture

The architecture of the application largely lies in the modularity of the code, the principle of class independence, but there is an exception in the form of the Window class, since it is directly integrated with Gui, which, in fact, is also part of the Window. Gui is an interface and by default uses ImGui as a library for rendering the interface, and as a graphics API for rendering OpenGL. Of course, you can inherit from the Gui class and override the graphic api (for example, Vulkan or DirectX). As an XML parser, I use the tinyxml2 library for which I wrote my own wrapper for greater ease of use. For logging, I decided to use the spdlog library, for which I also wrote a wrapper to make it convenient to use and combine simple logging to the console with logging to a file