Houdini to V-Ray

Hi

I am being interviewed by Side Effects about our integration of Houdini in our 3DS Max and V-Ray pipeline and I have a few questions about current and future alembic integration with V-Ray.

We have been using Alembic exports and VDB exports from Houdini and rendering these using VRayProxy for Alembic, and Phoenix for VDB. We are using V-Ray 3.0 with 3DS Max 2015.

Here are a few tests:-

I have been using the VRayPointParticle material for alembic particle caches and have found that I can also read the particle color Cd attribute from Houdini which is really useful.

Is there anyway that I can read other custom attributes from the Alembic particle cache? A good way would be to have a V-Ray texture that could read color data from custom attributes.

If I am rendering Alembic geometry is there anyway to read custom point data? for example if I export an ocean surface with vorticity color baked into a vertex channel is there anyway to access this in a V-Ray shader?

Will there be support for rendering VDB volumes in V-ray without using Phoenix?

Thanks

Graham

Pretty impressive stuff :slight_smile:
I haven´t had the chance to test with abc files that much. But it´s possible to get custome attributes with ply2vrmesh. You said you successfully
exported the Cd attribute so I would think other attributes are possible, too. Have you tried all the possible vertex channels in a standard max
VertexColor Map ? Some attributes are “hidden” in channel 10 or beyond. Also you could reroute attributes within Houdini with a VOPSOP. For example
velocity to Cd. So in case no other attributes are possible with abc files for the moment, you could get the most important one as Cd.
This was a test I made where I rerouted the velocity attribute through a “length” and “gradient” node to convert a velocity attribute to a speed attribute
as you would see it in the houdini viewport.
http://sorceress.netfrag.org/optix/s\_houdini\_vrayproxy.mp4
This is a cusp and an UVW attribute from a Ocean surface as vertex color (ply2vrmesh)

cheers


Hi
The Cd attribute comes through as particle colors when using the VRayPointParticle material. I have also found that this attribute gets picked up when using a Vertex Color Texture with the mapping channel set to 1. This would give me the option of assigning the RGB channels custom attributes in Houdini and then use these in a V-Ray shader. I have tried adding extra attributes to see if they get picked up on other mapping channels but it appears that they don’t.

Have you tried SP1? It should list the available attributes in the drop-list of the VertexColor texture, I think. If it doesn’t work, can you email me to vlado@chaosgroup.com an example Alembic file so that we can see how the data is stored in it?

Btw the latest nightly builds of V-Ray include a plugin called VRayVolumeGrid that can read OpenVDB files - so you don’t need to go through Phoenix anymore.

Best regards,
Vlado

Hi Graham,

Wow that’s amazing! when i saw those sand simulations I immediately wanted to buy and learn Houdini and try to find a way to bring it in my 3ds max/vray pipeline without noticing you in fact did exactly that!

Have you look into Stoke MX to import the fields from Houdini and simulate in max?

Btw. Exocortex Crate (Alembic import/export) is now open source.
http://exocortex.com/products/crate
but I can´t seem to import abc sequences,

Hi, Great news about the VRayVolumeGrid I will test this out when we update V-Ray.

I Have SP3 installed on Max 2015. I have been using the V-Ray Proxy Loader with my Alembic files. The available attributes don’t appear with the proxy loader but If I import the alembic file directly into max then I can see some attributes in the drop-list although they don’t render. If I render the Alembic file using the V-Ray Loader and set the vertexColor to 1 then I get the Cd color value from Houdini. I will send you a alembic file to test.

Kind regards,
Graham

Hey thanks :smile: I have not tried Stoke, I have heard its good. I am currently trying to see what data I can get working directly between Houdini Alembic exports and V-Ray without any third party apps :slight_smile:
G

wow, that sand was amazing!

Hi,

I just took a loot at the alembic file. We render the Cd channel correctly. There is a scalar channel named “test”, which we ignore, because it has 0 elements. There is also velocity channel, which we cannot shade currently, but I will fix this soon.

Best regards,
Asen

Hi Asen

Thanks for looking at the alembic file, I just checked it in Houdini and I found that the “test” channel does contain a vector giving you an orange to red color gradient. Which is what I set up. This channel is a Point Attribute, I will try promoting this channel to a vertex, primitive and detail attribute to see if you can then read it.
here is a link to the new alembic files
https://dl.dropboxusercontent.com/u/73974952/attributes%20test.zip

Thanks
Graham

Hi Graham,

I see what is the problem with the channel “test”. In the alembic file it is written as a scalar channel, but not as a vector channel. We have no way of knowing, whether this alembic scalar channel is really a scalar channel, or it is composed of tuples of 2, 3 or 4 elements. Therefore, in alembic files there is a great variety of data types, including many different vector and color types, which we support. So write the vector data into vector channel as it should be. Ask Houdini guys if you don’t know how.

Best regards,
Asen

Thanks Asen, that’s really useful to know, I will check the data types again in Houdini and do some more testing. G

Hi Graham,

from tomorrow’s nightly build we will be able to shade the default alembic velocity of meshes, hair and particles. I tested with the files, that you sent. Please note, that velocities, stored in the default velocity property (your case), are in units/second, while VRay is transforming them in units/frame. This means, that the shaded value, that you render, is the default velocity divided by the fps value.

Best regards,
Asen

Thanks Asen
I have exported another alembic file, this time the channel “test” should be saved as a vector channel. Can you read this one?
https://dl.dropboxusercontent.com/u/73974952/HOTtest\_vector.abc

Best regards,
Graham

Yes, this time everything is working :slight_smile:

Best regards,
Asen

Great :slight_smile: can I now use the “test” channel as a color in a V-Ray shader?
Thanks
G

Yes, you can use the VertexColor texture in 3ds Max.

Best regards,
Vlado

Hi

I have imported this alembic file into 3DS Max 2015 SP3 and I am using the VertexColor map, but when I click on the drop down I only get 1 channel “2:ALL : Cd” and it doesn’t render either.

If I use the V-Ray Proxy loader then the Vertex Color map does not update with any attributes, but if I render with Map Channel 1 then I get the Cd color from Houdini which is great, but I still cant render the “test” channel I have tried channels 2-11 but only get black.

Any ideas?
cheers
Graham

Hi Graham,

I tested with the last file, that you have sent, namely “HOTtest_vector.abc”. As I said, with the latest nightlies I am able to render all Cd, test and velocity channels. What is the build that you are using?

Best regards,
Asen