Skip to content

ALanovaya/kotiki-engine

Repository files navigation

Kotiki Engine

Kotiki Engine is an educational project for the "Computer Graphics" course. It simulates and illustrates the behavior of cats on a 2D plane.

Installation (Ubuntu)

Follow these steps to install and run Kotiki Engine:

  1. Clone the repository:
    git clone https://github.com/ALanovaya/kotiki-engine.git
    cd kotiki-engine
  2. Install dependencies:
    • Install boost
    sudo apt update
    sudo apt install libboost-all-dev
    • Install Qt and OpenGL
    sudo apt-get update
    sudo apt-get install -y qt6-base-dev qt6-tools-dev libglu1-mesa-dev freeglut3-dev
  3. Build the project
    cmake -B build -S .
    cmake --build build
  4. Run the application
    cd build/kotiki-engine
    ./kotiki-engine

Features

  • There can be up to 50,000 cats on the map at the same time. User can set their number.
  • Cats can try to start a fight, hiss and walk quietly, depending on the distance between them and the maximum distance at which they can start a fight (set by the user).
  • Distance can be measured using various metrics - Euclidean, Manhattan, Chebyshev and their generalizations - the Minkowski metric.
  • User can choose how the cats will move - either randomly or along a trajectory that can be specified by a parametric equation. The user must specify a parameter (let's say t) and describe the equations x(t), y(t). Otherwise, the trajectory will not be recognized.
  • To determine the state of the cats, a grid lookup algorithm is used.
  • It is possible to flexibly control the space and movement of the goths - change the size of the scene on which cats walk, change the step at which cats can move, and others.

Example

An example of what the scene and panel with parameters look like. Scene and panel example

Authors

  • Alexandra Lanovaya (Telegram: @winxpopp)
  • Ilya Syresenkov (Telegram: @maybenotilya)
  • Rafik Nurmukhametov (Telegram: @nrrafik)_

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •