Giter Site home page Giter Site logo

uchytilc / rtx-mesh-shaders Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vzout/rtx-mesh-shaders

0.0 0.0 0.0 1.65 GB

Different mesh shading techniques using the NVIDIA RTX (Turing) technology.

Home Page: http://www.vzout.com/

License: GNU General Public License v3.0

C++ 91.31% CMake 2.66% GLSL 5.99% Batchfile 0.04%

rtx-mesh-shaders's Introduction

Release Issues License Stars

Visit meshshading.vzout.com to read the research paper.


This repository demo's mesh shaders introduced by NVIDIA's Turing Architecture and is used for research purposes. To accompany this project I've written a research paper on the topic of mesh shaders where I compare traditional techniques with their mesh shading equivalent.


Features

  • Mesh Shading Pipeline
  • Cook-Torrance Microfacet Specular BRDF
  • Burley Diffuse BRDF
  • Clear Coat Materials
  • Anisotropic Materials
  • Approximated Subsurface Scattering Materials
  • Deferred Rendering
  • Normal and Ambient Occlusion Mapping
  • High Dynamic Range Tonemapping
  • Image-Based Lighting
  • RTX Path Tracing

Building

To build this project you require CMake 3.15 or higher and a C++20 capable compiler. To run the application you need a GPU and driver that supports Vulkan 1.1. To run the application and make use of mesh shaders you need a RTX capable gpu.

and the following operating systems are tested:

  • Windows 10 (version 1903)
  • Ubuntu (18.04 LTS)
  • Arch Linux (Antergos 19.4)

To generate the project files run the following command in your terminal:

mkdir build
cd build
cmake -G "[configuration]" ..

Screenshots





Copyright 2019-2020 Viktor Zoutman

The GNU Affero General Public License is a free, copyleft license for software and other kinds of works,
specifically designed to ensure cooperation with the community in the case of network server software.

The licenses for most software and other practical works are designed to take away your freedom to share
and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free software for all its users.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are
designed to make sure that you have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you want it, that you can change the
software or use pieces of it in new free programs, and that you know you can do these things.

Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright
on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or
modify the software.

A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the
program, if they receive widespread use, become available for other developers to incorporate. Many developers
of free software are heartened and encouraged by the resulting cooperation. However, in the case of software
used on network servers, this result may fail to come about. The GNU General Public License permits making a
modified version and letting the public access it on a server without ever releasing its source code to the public.

The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified
source code becomes available to the community. It requires the operator of a network server to provide the
source code of the modified version running there to the users of that server. Therefore, public use of a modified
version, on a publicly accessible server, gives the public access to the source code of the modified version.

An older license, called the Affero General Public License and published by Affero, was designed to accomplish
similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version
of the Affero GPL which permits relicensing under this license.

rtx-mesh-shaders's People

Contributors

vzout avatar jpvanoosten avatar

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.