Twinklebear / ChameleonRT

An example path tracer that runs on multiple ray tracing backends (Embree/DXR/OptiX/Vulkan/Metal/OSPRay)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add 3rdParty libraries?

Hearwindsaying opened this issue · comments

Hello Dr. Usher,

Would you consider adding third party files to the repository or adding as external modules?
So that we could find these packages ourselves. :)

Hi @Hearwindsaying , I think adding the compiled libraries or sources of the dependencies to build from source will add too much bloat to the repository, and some 3rd party dependencies I don't think I can redistribute (e.g, OptiX) or are (I think) things that need to be installed on the system through Visual Studio or Xcode (DXR SDK/Windows SDK & MetalRT SDK).

What I can do though is put together better instructions for each platform explaining how to get the dependencies together and build the repository. I'll leave this issue open til I get that done. Another thing that's become more common is a "CMake Superbuild" like we do in OSPRay: https://github.com/ospray/ospray/tree/master/scripts/superbuild . That's a single CMake file that takes care of downloading/building all the dependencies the project needs which does simplify the process of getting it built quite a bit. I can put together something like that to take care of the dependencies that I can manage that way (Embree, TBB, ISPC, glm, SDL2 maybe) to simplify this process a bit.

Will or @Twinklebear is fine, no need for formalities 😄

A small update here: to make the build process a bit easier I've set up CMake to download GLM and include it automatically.

These updates make things more clear and easier to build. Thanks!

The github actions pipelines will now package up binaries of the application which you can grab if you just need to run the application for some testing: https://github.com/Twinklebear/ChameleonRT/actions