General Category > Anim8or v0.98 Discussion Forum
Feature Request Thread
Steve:
This concept, or a very similar one, is called Instancing in OpenGL and D3D. At first glance it may seem simple, but there are a lot of nuances. If you allow editing of the per face properties in an instance (materials, texture coordinates, etc.), updating then when the geometry of the base shape changes is very complex. Vertex, edge, face, normal, tex-coord numbers often change throughout the mesh when just one small part is edited. This is the same, fundamental complexity with mirrored meshes.
What would be fairly easy to support: position, orientation, scale, materials (substituting different ones for the ones in the base model), and all global properties shown in the Properties editors such as subdivision level, parametric parameters, layer, smooth angle, etc.
Would that be useful enough? I had planned to add something like this at some point.
Raxx:
--- Quote from: Steve on March 04, 2016, 12:26:21 pm ---This concept, or a very similar one, is called Instancing in OpenGL and D3D. At first glance it may seem simple, but there are a lot of nuances. If you allow editing of the per face properties in an instance (materials, texture coordinates, etc.), updating then when the geometry of the base shape changes is very complex. Vertex, edge, face, normal, tex-coord numbers often change throughout the mesh when just one small part is edited. This is the same, fundamental complexity with mirrored meshes.
What would be fairly easy to support: position, orientation, scale, materials (substituting different ones for the ones in the base model), and all global properties shown in the Properties editors such as subdivision level, parametric parameters, layer, smooth angle, etc.
--- End quote ---
As I described in the post above, clones shouldn't be editable meshes unless they're converted into their own independant shapes (and thus not being clones/instances anymore), so there wouldn't be any editing of materials (besides the base material), texture coords, or anything else p/e/f on these active instances. Thus this complexity is avoided. So yes, what you described as fairly easy to support is what I described, and therefore useful enough ;)
Steve:
Thanks, I understand better now.
Raxx:
A small but important ASL request: A system time function to retrieve the timestamp and maybe a date function to accompany it. There are many obvious uses for this (evaluating script performance, timing out functions, timers, saving files with date, etc.) and I've always wondered why it hasn't been implemented.
Steve:
I can see how they could be useful. I should probably add them.
But, since you asked, here's why :): Functions like this allow non repeatable scripts. As it stands things like parametric shapes are guaranteed to do exactly the same thing on any run with the same environment (other meshes, user attributes, etc.). Functions like irand() and frand() always return the same values when called in the same sequence. So you're free to use them without worrying about inconsistencies from run to run.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version