Home

Awesome

vxr engine logo version 0.7.0

What is vxr?

vxr is a project that emerged from the desire to build a general purpose rendering tool that I could use to implement anything I was curious about or wanted to learn about.

As it stands now, it is a multithreaded 3D game development engine written in C++ and oriented to support different rendering backends. It has its own PBR material model based on the standard microfacet BRDF, but extended to support other visual properties of materials such as iridescence or clear coat. The engine has two different APIs for development:

Project webpage: https://avilapa.github.io/vxr-engine/

material model Material Model (from left to right): std, std + clear coat, std + iridescence, std + iridescence + clear coat.

Building

[A vs2017 + opengl Solution is provided by default]

This project uses GENie.lua to create the project solution. Open a CMD in the root directory and execute the following commands to re-create a solution:

cd project
..\tools\genie [parameters] <vs2017|vs2015>

The solution will be located in project/vs/VXR-Engine.sln.

A list of example projects are provided within the solution to showcase the engine's capabilities. To create a new project, add a call to the function 'makeProject("yourProjectName");' at the end of the file project/genie.lua and build.

Parameters

Examples

01-HelloWorld

01-HelloWorld

02-Instancing

02-Instancing

03-Framebuffers

03-Framebuffers

04-Mesh

04-Mesh

05-Materials

05-Material

06-Procedural

06-Procedural

07-Physics

07-Physics

Features

Support

Platforms

Backends

Dependencies

The project includes some 3rd party dependencies, but not all of them are necessary (e.g. you won't need GLEW if you generate the project to use DirectX3D 11, you won't need minitrace if you don't want trace debugging, etc).

Optional Dependencies

Contributing

This is the first project I have made open source, therefore I am wide open to feedback from the community and contributions :^)

Acknowledgements

MIT License

Contact

Mail: victorap97@gmail.com

Twitter: https://twitter.com/97torvic

Portfolio: https://avilapa.github.io/portfolio