PDA

View Full Version : Impossible tech to implement? instancing one object several morphs -random index grad



prometheus
06-26-2015, 07:06 PM
Hi folks!

I donīt think itīs possible today, but just throwing out the question..workarounds maybe by using mdds for some scenarios.

Just thinking, we can give one instanced object multi colors even textures with nodes and random index fed to gradients for instance.
but how about morphs, if I have one head with different deformed changes in several morphs....would be awesome if it actually was possible through nodes to plug a random index and gradient so you only use one or two objects and let the instance info fixed random take care of displaying different morphs on each instance.

so that would be a sort of unique instance shape between the first initial object and the second morph for example..all instances will have a shape morph in between those two.

I bet this canīt be possible....Yet:)

I bet it would also be truly innovative if possible:D

creacon
06-27-2015, 06:21 AM
Modo allows an mdd to be applied to an object and animate the time offset.
Since 701 or 801 if I remember correctly.

HD instance allows the same thing (could be over 10 years).

creacon


creacon


Hi folks!

I donīt think itīs possible today, but just throwing out the question..workarounds maybe by using mdds for some scenarios.

Just thinking, we can give one instanced object multi colors even textures with nodes and random index fed to gradients for instance.
but how about morphs, if I have one head with different deformed changes in several morphs....would be awesome if it actually was possible through nodes to plug a random index and gradient so you only use one or two objects and let the instance info fixed random take care of displaying different morphs on each instance.

so that would be a sort of unique instance shape between the first initial object and the second morph for example..all instances will have a shape morph in between those two.

I bet this canīt be possible....Yet:)

I bet it would also be truly innovative if possible:D

prometheus
06-27-2015, 08:19 AM
Modo allows an mdd to be applied to an object and animate the time offset.
Since 701 or 801 if I remember correctly.

HD instance allows the same thing (could be over 10 years).

creacon


creacon

Yeah..that I knew and thought I mentioned:D that is old tech...but actually getting this to work without mdd scanning is what I was wondering about

so the other part is still unanswered.

Sensei
06-27-2015, 09:08 AM
Impossible tech to implement?

Impossible, if by instancing there is meant changing ray origin and ray direction, and just reusing already existing mesh & kd-tree, without additional memory usage..

Such effect like changing mesh, require memory, to apply these changes, so they're not really memory-saving instances..
They're rather "duplicate object and apply deformation, build kd-tree", taking additional memory.

erikals
06-27-2015, 09:16 AM
https://www.youtube.com/watch?v=YmIRDDnbioI

that is HD instance, DPont instance / DPont instancer can do similar

another trick is to mix 2 parts...
- add 1 body, add instances
- then parent multiple head mdd instances to the bodies

Sensei
06-27-2015, 09:23 AM
that is HD instance, DPont instance / DPont instancer can do similar

But they use additional computer memory to keep all these deformations..

Compare memory usage, when instancer is generating single not deformed object,
and when there are hundred different offsets for thousands clones..

erikals
06-27-2015, 09:26 AM
not sure how Fyffe did it, but he was able to animate 3 billion animated instances, how the memory was used, i'm not sure...
(sorry, have the link info somewhere, but it's a lot of digging...)

Sensei
06-27-2015, 09:38 AM
Full HD has 1920x1080 pixels = 2073600 pixels.
There is generated only such amount of instances at single frame as many there is pixels on screen.
If objects are transparent, then instances behind them also.
It requires dynamic creating instance bounding-box at render-time in middle of frame (LW doesn't do that, generates instance data at initialization).
From bounding-boxes, there is created kd-tree.
Then renderer is analyzing which kd-tree leaf ray passed through, finding which instances are in these leafs, what are their reference items..
And ray-origin and ray-direction are transformed (in not animated version of instancing).
It works very similar way to CCTV shader which is just transforming rays from hit surface, to camera.. And surface is becoming TV screen of that camera.
In animated version, there is needed to actually generate mesh of these objects.
When there is too much used memory, the least used dynamically generated meshes are freed to release memory.
The less memory used, the slower rendering (because of having to regenerate them over and over again).

erikals
06-27-2015, 10:06 AM
ah, found it >
http://forums.newtek.com/showthread.php?94943-instance-objects-request