In addition I noticed whilst testing that the base start up time for Blender no longer matches my original figures. The parallel compilation speed-ups are roughly the same…
You can just set the receiver_index
per surfel. There are already some padding there you can repurpose. But don't use uchar
there as it is an interface struct.
Wrap all this logic in a function bool light_linking_affects_receiver(uvec2 light_set, uchar receiver_index)
.
The UI classes are mostly copied from Cycles; should they be removed from Cycles and only exist here?
@Sergey do you think it is fine to just remove the Cycles UI code? There doesn't seem to…
Indirect lighting does not respect light linking; I'm not sure if this matches how indirect lighting behaves in Cycles or not. They look similar but I'm not sure how it would look if Surfel…
Please run make format. Also, maybe it is better to break these long statement into multiple smaller lines with meaningfully named bool
variables.