Skip to content

Simple project trying to imitate pathfinding.js, but using Raylib, in c++.

Notifications You must be signed in to change notification settings

marttop/Pathfinding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pathfinding

Description

You don't need to install any library for this project, libs are within the project as submodules. This is a simple project trying to implement different kind of pathfinding algorithms in an editor.

Image 1 Image 2
Image 3 Image 4

Project Status

🚧 This project is currently under construction. 🚧

Development Setup on Linux - Debian

Installing Compilers

  • Clang:
    wget https://apt.llvm.org/llvm.sh
    chmod +x llvm.sh
    sudo ./llvm.sh <version number>
  • GNU Compiler (Optional):
    sudo apt install g++
  • CMake:
    sudo apt install cmake
  • Ninja Build System:
    sudo apt install ninja-build

Installing raylib dependecies

For this project raylib will come as a submodule so you don't need to install it on your system, it will be compiled locally within this project.
In order to compile raylib you still need to install some system dependecies:

sudo apt install libasound2-dev libx11-dev libxrandr-dev libxi-dev libgl1-mesa-dev libglu1-mesa-dev libxcursor-dev libxinerama-dev

If you wan't to use your own local raylib installation, you can refer to the raylib installation guide for Linux for detailed instructions.
Keep in mind that if you use your own raylib you will need to tweak the cmake build of this project.

Build the project

  • Clone the submodules:
git submodule update --init --recursive
  • Build the dependencies:
./build_submodules.sh
  • Build the final binary:
mkdir build
cd build
cmake -G "Ninja" ..
cmake --build . --target all

Logging

By default, the LOGGING option is set to ON in the CMake build. This enables logging throughout the game code, which can be useful for debugging and troubleshooting.

If you wish to disable logging, you can set the LOGGING option to OFF when running CMake. For example, if you're using the command line, inside your build folder you can run:

cmake -G "Ninja" -DLOGGING=OFF .

Alternatively, if you're using an IDE such as Visual Studio or CLion, you can configure the LOGGING option in the CMake settings.

Note that disabling logging can improve the performance of the game, but may make it more difficult to diagnose issues if they arise. It's recommended to leave logging enabled during development and testing, and disable it only for production builds.

Used Submodules

About

Simple project trying to imitate pathfinding.js, but using Raylib, in c++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published