PDA

View Full Version : instance objects request



erikals
02-07-2009, 08:52 PM
hope NT can add the ability to vary MDD play back based on texture, weight map, deformer, etc... when instancing objects

Sensei
02-08-2009, 01:14 AM
In that case they won't be instances anymore.. ;)

erikals
02-08-2009, 01:42 AM
yes they would, :)
maybe i explained myself a bit bad,
what i mean is instaces using MDD files to vary the playback time
however, instead of all MDDs playing the motion, each individaul MDD could have a tim offset. HDinstance 2.0 does this, only using HDM files instead of MDD.

however, i'd like to drive the offset using a texture, or image sequence or simillar.

dpont
02-08-2009, 01:55 AM
hope NT can add the ability to vary MDD play back based on texture, weight map, deformer, etc... when instancing objects

Speaking of clones, not instances,
In DP Kit you could input a Random node (by ObjectID)
in Start and Speed iputs of MDD Pointer or MDD Cache
of the object before cloning it,
MDD Cache can also have a MDD List
with an Index input, same thing with a Random node
you could get different MDD animation for
each clone.

Denis.

erikals
02-08-2009, 02:09 AM
thanks,
yes, it works in some cases, but when clone numbers are too high, like e.g. in vegetation where millions/billions are required it becomes tricky.

it'd be quite awesome to have this as a feature, as it would help drive e.g. an army of clones using e.g. the MDD node.
(the one you made : ) big thanks :)

discussed on various posts in this thread,
http://www.newtek.com/forums/showthread.php?t=86338

dpont
02-08-2009, 02:18 AM
The simpliest could be to get a different ID
inside a node for each instance.

denis.

Sensei
02-08-2009, 02:27 AM
HDinstance 2.0 does this, only using HDM files instead of MDD.


I am telling you, these objects with offset in HD v2.0 are no longer instances.. ;)

Instance is using exactly the same geometry as source, with the same time, routine is like this:
- if ray pass through instance bounding box, rotate original ray origin and direction using matrix (in total 32 multiply functions or so).
- switch to instance source object ray-tracing routine.
- if source object require doing some illumination for light and shadows, or ray-trace for reflection, refractions etc. go back to original coord space, using reverse matrix..
Simple math, no memory used at all..

HD v2.0 objects with time offset are nice, but they're dynamically loaded triangle data with normal vectors, not instances. They do use memory like regular objects. Maybe not as much as real object, if this HDM file group triangles in KD-Tree/Octree at file data structure level..

erikals
02-08-2009, 02:48 AM
hm,.. i sent fyffe a mail on just how much memory that would be used.
as i wonder now just how many clones an 'instanced' crowd using HDM files can take.
millions? 100K? (depending on ram of course)

got me curious,...

dpont
02-08-2009, 02:57 AM
...Sorry to follow what I meaned
about Instance ID, HD could easily add an InstanceID node,
filled before HD node evaluation,
it doesn't cost too much memory and
remember that in MDD Cache node,
MDD data is loaded only once for multiple
object, time speed etc usage.
this ID could be used in a lot of other
surface/texture or shader purposes.

Denis.

Sensei
02-08-2009, 03:04 AM
That depends when it's loading file.

If it's loaded once per frame, then it's using as much memory as regular object (but it can be reused million times!).. So if you have 10 different offsets, it will use 10x memory as one LW object. But could have instances of 10 variations * 100,000 giving 1 mln objects.

If it's loading HDM file directly in ray-tracing routine/volumetric evaluation function and there is KD-Tree in file structure, it can use even a few hundred bytes to have million instances with million variations - it would just purge unused cache, after detecting out of memory. This method is slower, but more powerful, and would work with real-time renderers like TrueHair Preview or Fprime..

fyffe
02-08-2009, 01:24 PM
HD v2.0 objects with time offset are nice, but they're dynamically loaded triangle data with normal vectors, not instances.

Actually they're both. I did a render a little while back with the elves working in Santa's workshop. Somebody thought 8000 animated elves was not a good test, so I rendered 1,000,000,000,000 animated elves (with animation offsets)

http://www.happy-digital.com/trillion_elves_9m29s.jpg

Original thread here:

http://community.softimage.com/showthread.php?p=5263

So yes, if you use animation offsets it will render a bit slower because there is some dynamic loading going on. But you will not run out of memory with HD Instance. It dynamically loads and unloads so that it never runs out of memory. This is different from Mental Ray in XSI, for example, which will still run out of memory if you have too many instances in one bucket. There is also quite a bit of memory sharing between animated instances to minimize the amount of loading that goes on.

erikals
02-08-2009, 02:07 PM
LOL, shoot, ok, I'm convinced :)
(ey, you should try 6,705,451,100 on day, the population of ppl on earth) :)

mighty cool it is :yoda:

erikals
02-08-2009, 02:57 PM
ThE_JacO
For the sake of testing take a 10000 frames animation and ask HD instance to source your trillion elves by a step of one. Chances are it will have to internally create those masters and you'll see your memory footprint going up by several thousands times. [LINK] (http://community.softimage.com/showthread.php?t=1235&page=3)

is this a drawback?
anyway, still looks very good : )

erikals
02-08-2009, 02:59 PM
Doublepost...

uncleBRY
02-08-2009, 04:56 PM
That is a lot of elves...

praa
02-08-2009, 07:14 PM
hey there Graham! :thumbsup:

happy user of HD instance here !

i hope the volumetrics (hypervoxels) and your plugin will be there in core and that they will be readable by let's say fprime and others

and last, i really hope core opens up new frontiers for your imagination because i really dig HDinstance not only for the memory footprint (or dare i say the absence of) but for the ease of placement and variety it brings to LW

Sensei
02-12-2009, 02:21 AM
i hope the volumetrics (hypervoxels) and your plugin will be there in core and that they will be readable by let's say fprime and others


They're "readable" even now...
http://www2.trueart.pl/Products/Plug-Ins/TrueHair/Graphics/Movies/TrueHair_Preview_HyperVoxels_1.mov
(Save File As.. and watch in off-line player)

tyrot
02-12-2009, 06:15 AM
dear graham

.Till you update HDinstance for NewLightwaveCore...(when it comes out) i ll stay with Lightwave 9 series.....I can live without history, modifiers etc etc..but i cant render without HDinstance..

This plugin is "THE 3D" for me..I won't render anything without it..

BEST

fyffe
02-24-2009, 01:41 AM
I also LOVE HD Instance and use it often. Version 2 is so much more versatile than version 1.

The one thing I would REALLY like to see in HD Instance 2, is the ability to produce the animation on one machine and then render it on another. The last I heard, it would not render unless on a licensed machine and Happy Digital was "considering" the option.

Any word Graham?

Well, LWSN runs fine without a license. So you can do render farms with it.

Sensei
02-24-2009, 01:10 PM
If you can afford buying 10 LW, then it's should be much easier/cheaper to buy also 10 HD_Instances :D