With the latest build of VRay NEXT 1.2 GPU, my SimpleObject2 plugin is never asked for its I_VRAYGEOMETRY interface, so instances never render.
When rendering in normal mode (not GPU), it is …and so instances render fine.
Any ideas why?
With the latest build of VRay NEXT 1.2 GPU, my SimpleObject2 plugin is never asked for its I_VRAYGEOMETRY interface, so instances never render.
When rendering in normal mode (not GPU), it is …and so instances render fine.
Any ideas why?
V-Ray GPU handles all translation of 3rd party plugins on its own (Forest Pack, RailClone, MultiScatter, Ornatrix, HairFarm etc) and does not rely on the I_VRAYGEOMETRY interface. We will have to teach it to recognize TyFlow instances and extract the instancing information in some way; most plugins allow this by providing some simple API to query the properties of the instances (their count, transformations, velocity information etc).
Best regards,
Vlado
Thanks vlado, tyFlow geometry has 2 parts…the particles themselves (which can be queried with IParticleObjExt interface), and its internal meshes (cloth, actor skin, etc)…which have no direct interface (although I guess with some cheating I could treat them all like a single particle with a giant mesh). What do you think would be the best way to have tyFlow communicate with V-Ray GPU? Do you have a generic interface you send to those devs that they implement? Or they each provide you with their own?
Hey, just bumping this thread…would love to get NEXT GPU support in tyFlow…![]()
We currently don’t have any generic interface for that. The different instancing plugins provide their interface and we use it.
Most of them boil down to something like the following:
Thank you yavor, I’ll try to put something together in the coming weeks.
Few things I forgot:
Hey Yavor/Vlado,
I now have an API for you to use to get tyFlow instancing working with VRay NEXT GPU. I’ve re-written my internal VRay 3.x and 4.x CPU implementations to use this interface, so in that sense I know the relevant parts are working and tested.
Attached is the interface. Really the only relevant function for you to call is CollectInstances. That will return arrays of particle transforms grouped by shared mesh, so the process of converting the data to actual instances on your end should be really straight-forward. You will also see there is a function to get the mesh’s map channel which contains per-frame vertex velocities, allowing deforming meshes to have motion blur computed on their verts.
If you need clarification on anything, I don’t mind answering here in the forum publicly or you can also email me at support@tyflow.com. I’ve also attached a labeled benchmark scene that includes examples of all features in tyFlow that will need to be supported in the renderer. Each example is labeled…once the rendered result matches the labels, you know your implementation is working properly. Included is also an example image (rendered w/VRay 3.x) which you can use as a reference for how the result of VR GPU should look.
Thanks!
tyParticleObjectExt.zip (3.77 KB)
vraybenchmark.zip (319 KB)
Thanks for the API - it looks good. I hope we get to it soon.
The benchmark scene will be very helpful.
Hey Yavor, just curious if any progress was made on this? Especially with VR5 on the horizon ![]()
Hey Tyson,
Sorry unfortunately we haven’t got to this yet but it is in the list.
Best regards,
Yavor
I am sure you guys are super busy, especially with vray 5 etc… but (no offence to vray or chaos ;o) tyflow is the most exciting thing to happen to max in..well.. possibly forever.. So if this could be quite high on the list.. tyflow +vray gpu is a very exciting combination .
We will get to it.
Best regards,
Vlado