opencax / GSoC

Google Summer of Code Projects
30 stars 14 forks source link

Physically-Based Rendering (PBR) advanced shaders #71

Open brlcad opened 1 year ago

brlcad commented 1 year ago

Outline

Get BRL-CAD physically-based rendering working with advanced shaders.

Details

BRL-CAD recently integrated with Appleseed which provides physically-based rendering. It's presently a command-line renderer called 'art'. For art rendering to work, a shader and colors are specified on geometry. BRL-CAD has preliminary support for material objects including OSL shaders and MaterialX shaders in art, however their support has only been tested with basic shaders such as the Disney Principled Shader. It's hard-wired to single-file shaders.

Expected Outcome

The goal of this task will be to make art read and work with any OSL or MaterialX shader networks, including ones using texturing, emission, subsurface scattering, etc. applied to BRL-CAD geometry.

Project Properties

Skills

Difficulty

medium

Size

long

Additional Information

dororo-ak commented 3 months ago

Hello, I'm student in computer graphic at Telecom paris (engineerong school in France) and very interrested and motivated to work on your project. I have familiarities in C/C++, shader (GLSL). And I do have some familiarities with PBR. I think I need more context to understand this project. how is managing the shader file? Also can what kind of use do you expect with this project ? For the moment I never use nether appleseed nether other shader language than GLSL but I have the will to learn , is it crippling ?

brlcad commented 3 months ago

Hi @dororo-ak its not crippling, but you do have some knowledge gaps that will have to learn to propose this project. I suggest starting with Appleseed and render something with it. The idea is to do something very similar in BRL-CAD by integrating with Appleseed. That integration is partially working but needs more work.