beaumanvienna / vulkan

A Vulkan Render Engine
GNU General Public License v3.0
55 stars 7 forks source link

Lucre

A Vulkan Render Engine




Features:

Usage:

How to clone the repository


The repository contains larger 3D files and git may abort its download. If you experience this problem, follow these instructions.

In particular, add these lines to your global git configuration file, which is .gitconfig in your user home directory (~/.gitconfig), in order to fix this problem:

[core] 
    packedGitLimit = 512m 
    packedGitWindowSize = 512m 
[pack] 
    deltaCacheSize = 2047m 
    packSizeLimit = 2047m 
    windowMemory = 2047m

Then run:

git clone --recurse-submodules https://github.com/beaumanvienna/vulkan

Build Instructions

Ubuntu Build Instructions


Open a terminal

(Info: ppa:beauman/marley provides premake5)

sudo add-apt-repository ppa:beauman/marley
sudo add-apt-repository universe
sudo apt-get update
sudo apt install premake5 git build-essential xorg-dev libxrandr-dev libvulkan-dev libpulse-dev
sudo apt install libibus-1.0-dev libglib2.0-dev libsamplerate0-dev libasound2-dev libudev-dev

Get the Vulkan SDK from here:
https://vulkan.lunarg.com/doc/view/latest/linux/getting_started_ubuntu.html

Install the source code:

git clone --recurse-submodules https://github.com/beaumanvienna/vulkan
cd vulkan

Create project files for gcc:

premake5 gmake2



Define the number of CPU cores to be used for compiling
e.g. "-j4"
To use all available CPU cores, say:

export MAKEFLAGS=-j$(nproc)

You may want to add the export MAKEFLAGS=-j$(nproc) command to ~/.bashrc to always use multiple CPU cores for compiling a makefile.


Compile and run debug target:

make verbose=1 && ./bin/Debug/lucre

Compile and run release target:

make config=release verbose=1 && ./bin/Release/lucre


MacOSX Build Instructions

Install Dependencies

Download and install MacOS Vulkan sdk
Download and install Homebrew

Open a terminal

To install Xcode, type git

Install dependencies (note that premake5 is installed as premake, but called in the terminal as premake5):

brew install premake glib gtk+ sfml sdl2 sdl2_mixer libvorbis libogg glfw


Install the source code:

git clone --recurse-submodules https://github.com/beaumanvienna/vulkan
cd vulkan


Create project files for clang:

premake5 gmake2



Define the number of CPU cores to be used for compiling
e.g. "-j8" to use eight CPU cores
To use all available CPU cores, say:

export MAKEFLAGS=-j$(sysctl -n hw.ncpu)

To find out, how many cores your Mac has, say:

sysctl -n hw.ncpu

You may want to add the export MAKEFLAGS=-j8 command to ~/.zshrc to always use multiple CPU cores for compiling a makefile.


Compile and run debug target:

make verbose=1 && ./bin/Debug/lucre

Compile and run release target:

make config=release verbose=1 && ./bin/Release/lucre


Windows Build Instructions


Dependencies: gitbash, premake5, Visual Studio

Download the Vulkan SDK from lunarg.com, install it, then copy "C:\VulkanSDK\1.3.204.1" (path and version may differ) to vendor/VulkanSDK. The version number is omitted in the path.


Open gitbash


Install the source code:

git clone --recurse-submodules https://github.com/beaumanvienna/vulkan
cd vulkan

If you have Visual Studio 2022:

premake5.exe vs2022


If you have Visual Studio 2022, use instead:

premake5.exe vs2022


Open the solution for Vulkan, switch to Release, and hit F5

Clean Instruction


To clean all temporary files (including the spv-files, engine.cfg, imgui.ini, and the scene files in the top directory), use:

premake5 clean


Update Instruction


To pull in the latest changes for the repository, use:

git pull && git submodule update --init --recursive