Coder Social home page Coder Social logo

makma's Introduction

What is Makma?

Makma is a Vulkan benchmark. It features a four-pass deferred renderer, cascaded shadow mapping, metal/roughness material setup, volumetric lighting, bloom, directional, point and spotlights, in-depth performance graphs (per pass) and a large options menu to customize the benchmark on the fly.

Screenshot

How do I run Makma?

Grab the latest build from the releases page.

Here are the system requirements for running Makma:

Category Requirement Notes
Operating System Windows or Linux, 64-bit Tested on Windows 10 and Ubuntu 20.04
Graphics Card 2GB video memory or more Tested on NVIDIA GTX 760 and 1050 Ti Mobile
Graphics Driver Vulkan 1.2 support

How do I build Makma?

In addition to the system requirements for running Makma, you will need the following to build the project:

Category Requirement Notes
Graphics API Vulkan 1.2.170 SDK Other versions may require code changes
C++ Compiler C++17-compatible, 64-bit Tested on MSVC 19.28.29914 and GCC 9.3.0
Build Generator CMake 3.20 or newer

Makma is set up as a standard CMake project. Once the above requirements are installed, you can simply clone this repository and generate build files for your toolchain and platform. All required libraries are provided as binaries in the external folder, the only outside dependency is the Vulkan SDK.

Make sure to build the INSTALL CMake target before running Makma. This is required to copy the required files (shared libraries and program resources) into your build folder.

makma's People

Contributors

christophhaag avatar janhsimon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

makma's Issues

having trouble

MSVCRTD.lib(exe_main.obj) : error LNK2019: unresolved external symbol main referenced in function "int __cdecl invoke_main(void)

Failed to create descriptor

Got this runtime error after successfully build and launch:
Unable to allocate 5 descriptors of type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER from pool 0x205. This pool only has 0 descriptors of the type remaining. The spec valid usage text states 'descriptorPool' must have enough free descriptor capacity remaining to allocate the descriptors sets of the specified layouts

missing sdl headers

sdl2.dll is part of the repository while sdl.h is not.
(building with visual studio 2017)

Dynamic UBOs are too small.

Hi, due to you mentioning that this project renders a black screen with radv, while it works and amdvlk, I took a look, and it seems like the dynamic UBOs are set with size 32, while the matrices that should be in them are 64 bytes big.

In particular in Renderer.cpp, you use sizeof(DynamicUniformBufferData) a number of times, which is just 4 pointers 32 bytes on a 64-bit platform), you really want sizeof(glm::mat4).

With that you at least get a reasonable image on radv, though the shadows look a bit grainy still.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.