Cycles-X - Volume being implemented, comment about it

This is related to this meeting:

Now that Volumes are being implemented in Cycles-X, could be a good time to add an important feature for them, Masking, what I mean is that volumes are not supported in Cryptomatte or any kind of ID pass, so having Volume support on Cryptomatte or having a new masking pass for volumes could be great, and maybe this is the time to do it since itˋs a new implementation.

This goes mainly to @brecht and @sergey


Volumes render black in actual CyclesX (21 Jun). An improvement but not usable yet.

Yep, I’m not saying that it is usable or not right now.
I’m saying that it could be the right time to insert the required code for masking volumes :slight_smile:

Yes, I understand you. My two cents would be that as Cryptomatte don’t support volumes there is nothing to develop on Blender’s side for it. A volumes render pass (only volumes) with alpha or the master solution: a good deep exr volume render implementation is the way to go.


A volume per ID pass, like Object ID or Material ID, but Volume ID.

Or give support for volumes to the Material ID pass for example :slight_smile:

Solutions already exist in the industry though. DeepIDs are great and not that heavy if correctly used, and you get infinite possibilities with it.

Oh I’d heard they were super heavy. How do they even work ? How do you store depth information in an image file ? Hm, that’s not the subject. Sorry. Yeah I would love to have that kind of flexibility with Cycles.

I don’t know the proper technique, @brecht or @sergey know better for sure, the point here is that since volumes are being implemented from scratch, it may be the best moment to leverage the required development and implement this feature :slight_smile:

At my day job, 95% of how we manage volumes in compositing is via per-light AOVs and not via IDs. My hope is that robust volume rendering will be part of a comprehensive LPE (light path expression) system.

1 Like

Do you know if deep compositing is part of the roadmap for Cycles-X (for fear of linking to something proprietary from a for-profit company, see Deep image compositing - Wikipedia)?

The first priority for volumes is to improve the sampling, but we’ll look at render passes if there is time. Cryptomatte should work fine.

I don’t really see the value in ID passes for volumes, those work poorly with transparency and so also with volumes. There is no clear boundary to delineate the volume by. With deep EXR ID passes would make sense, though that’s not immediately planned.

1 Like

I was mentioning the ID passes as an alternative ot Cryptomatte, but if you say Cryptomatte should work I don’t see a reason to generate an specific ID pass.

Something seems to have broken with the Volume implementation in build: 6193e8181025
Adding lights inside a volume crashes the CUDA drivers.

Not sure where to report it considering there’s no direct channel for Cycles X bugs at the moment. So I guess might as well use this discussion thread.

@sergey Sorry to tag you but thought you might be the best bet to have this looked at or reviewed. Thank you.

I get a lot of strange lines when I have single plane cards (with transparency) embedded inside a volume (see the images) with the current version of Cycles (I have not tried it with Cycles-X yet) I am wondering if this is a sampling issue that can be resolved in the new version.

I already filed a bug for this. The thing is if these (the cards and the volume) are rendered separately there are no lines, so this is clearly something about ray sampling in a mixed situation.