GPUOpen-LibrariesAndSDKs / RadeonProRenderSDK

AMD Radeon™ ProRender is a powerful physically-based path traced rendering engine that enables creative professionals to produce stunningly photorealistic images.
https://gpuopen.com/radeon-prorender-suite/
Other
221 stars 47 forks source link

Curves with emission are rendered in black #60

Open jkrumbiegel opened 1 year ago

jkrumbiegel commented 1 year ago

I'm using RadeonProRender.jl in Julia, and can't get emission working on a curve object. I'm not sure if it's a bug in the Julia implementation, a limitation of the SDK, or something else. I can't post a minimal example because this is all WIP Julia code, but here's an image showing the result:

grafik

This is a line segment primitive which the RPRMakie package transforms into RPR Curves, roughly like this:

curve = RPR.Curve(context, points, indices, radius, Vec2f.(0.0, LinRange(0, 1, nsegments)),
                      fill(1, nsegments))
    material = RPR.UberMaterial(matsys)
material.emission_color = to_color(:red) # should create red light?
material.emission_weight = 1000 # I tried to make it really strong as well, no effect visible
# I tried to set the double-sided mode to true or false in case the curves had inward normals for some reason
# material.emission_mode = false
set!(curve, material.node)
ARozghon commented 1 year ago

Thank you for your request, a ticket for devs has already been created could you share the scene to do the correct issue reproduce?

jkrumbiegel commented 1 year ago

could you share the scene to do the correct issue reproduce?

Not really, as the Julia code was moving fast and it might not work anymore (plus your devs probably don't want to deal with Julia). But as far as I could see, any curves object with emission didn't work, so one should be able to construct a minimal example using that info :)

ARozghon commented 1 year ago

thank you, for your response. will check it issues