Yoyobuae came up with the following suggestion on IRC last night:
[code]19:27 < Yoyobuae> i could benefit a lot from a “Duplication Layer” =)
19:27 so that one particle layer could be beneath it
19:27 and it gets automatically duplicated
19:28 since each particle is essentially the same, except
for random parameters
19:30 < dooglus> That’s a good idea, the duplication layer, with just
a single parameter saying how many dups to make.
19:30 < Yoyobuae> yup
19:30 and also a “Count” convert type
19:31 < dooglus> What would it do?
19:31 < genete> dooglus: I would like to discuss about a possible
duplicate layer…
19:31 < Yoyobuae> so you can have a parameter increase like, 1, 2, 3,
4, etc with each duplication
19:32 < dooglus> Ok, so it’s maybe called Index then.
19:32 < Yoyobuae> yeah that makes more sense =)
19:33 < genete> dooglus: if you make a duplicate layer I’ll send you a
ton of spanish wine!
19:34 dooglus: A duplicate layer would simplify my life a lot
19:35 also consider that the preview number of duplicated
layers can be lower than the final render amount of
duplicated layers
19:35 for example you want to have 1000 layers at final
render and only want to see 10 during edition
19:35 so you need two parameters
19:36 < Yoyobuae> yeah, in 3D studio max (3d animation app), when you
apply a duplicate transform only 1% of the
duplicates show on the preview
19:55 < dooglus> This duplicate layer will rerender everything under
it over and over? Even contents of encapsulations?
And what if they’re nested? Can the Index convert
type select which dup layer’s index it uses?
19:56 < genete> the duplicate layer makes sense only if you add
something “random” to the sucesive copies of the
replicated layers/canvases
19:57 render them over and over themselves at the same
position seems to be a little silly, isn’t it?
19:57 < Yoyobuae> it would be nice to have the ability to have an
index as a parameter too
19:59 the thing is that the index could also be used in
manual duplication
19:59 to save some work
20:00 < genete> how do access to the index of the duplicated layer?
remember that in fact you only see one layer and the
duplicated are internally created, not accesible.
20:01 < Yoyobuae> the index could be a convert type, similar to random
20:02 except that it allows a value incremented progresively
20:03 < genete> ok. It is fine. What would represent the original
value of the converted type? the initial value?
20:04 < Yoyobuae> if A has an index param, then its duplicate has that
value plus an step
20:04 A has the original value, and its duplicates the
incremented ones
20:04 < genete> that step can be also a parameter? not neccesary to be
1.0. It could be any value…
20:05 < Yoyobuae> yup =)
20:05 < genete> other parameter needed
20:05
20:05 -1.0 for example
20:05 or 0.001
20:05 or 3.141597
20:06 or 45 DEG
20:06 woah!
20:06 WE could make simmetrical flowers!
20:06 make on petal and place a duplicate layer over it! he he
20:07 < Yoyobuae> yeah, that’s what im going for
20:07 < genete> or repeated textures!
20:08 I think dooglus should think carefully on it before
create that layer. It seems to be the big step!
20:09 I suggest discuss it on the wiki. It is easier to
read.
20:09 < Yoyobuae> i also doubt dooglus can do much in his cellphone, =)
20:10 let just be patient =)
[/code]
I think it’s important to be able to nest these duplications (duplicate a petal 6 times to make the head of a flower; duplicate a flower 20 times to make a field of flowers - we’ll have 120 petals).
So we need to be able to independently address the two different “Index” parameters - which petal are we (0 through 5 - needed for the ‘rotate’ layer) and which flower are we (0 through 19 - needed to position and scale the individual flowers).
I’m thinking that having each “Duplicate” layer create a new exported variable would be one way to handle this. The exported variable would cycle in value from 0 to (dups-1) for each duplicated layer, which can be scaled as required using the various valuenode convert types.