what if you reuse the mesh during the loop and merge?
base:Mesh
m = assetlib
loop
m.z = some new value
merge(base, m);
or
var copy : Mesh
m = assetlib
loop
copy = new Mesh(m.geometry);
addChild(copy)
merge container
Fabrice
On May 17, 2011, at 2:14 PM, John Brookes wrote:
> private function initObjects():void
> {
> var treecontext:AssetLoaderContext = new AssetLoaderContext(true,
> TREEASSET_URL);
> AssetLibrary.load(new URLRequest(TREE_URL), new OBJParser(), treecontext,
> 'treeNS');
> AssetLibrary.addEventListener(LoaderEvent.RESOURCE_COMPLETE,
> onLoadComplete);
> }
>
> private function onLoadComplete(e:LoaderEvent):void
> {
> var merge:Merge = new Merge(false, true, true);
>
> var tc:ObjectContainer3D = new ObjectContainer3D();
>
> for (var i:int = 1; i <= 5; i++)
> {
> tree = Mesh(AssetLibrary.getAsset('obj0', 'treeNS')).clone() as Mesh;
> tree.z = -750+ i * 250;
> tc.addChild(tree);
> }
>
> var trees:Mesh = merge.applyToContainer(tc,"trees")
> view.scene.addChild(trees)
>
> trace(tc.numChildren) //traces 5
> trace(trees.subMeshes.length); //traces1
> trace (view.scene.numChildren) //traces 1
> }
>
> I see 11 trees on the screen.
> Not 5.
>
> If I set "i" to
> 2 i get 2 trees
> 3 iget 4
> 4 i get 7
> 5 i get 11
>