and if you do something like that?

private function onLoadComplete(e:LoaderEvent):void 
{
    var merge:Merge = new Merge(false, false, true);
    var tc:ObjectContainer3D = new ObjectContainer3D();
    var copy:Mesh
    var tree:Mesh = Mesh(AssetLibrary.getAsset('obj0', 'treeNS')).clone() as 
Mesh;
        
        var geometry:Geometry = new Geometry();
        var geomTree:Geometry = tree.geometry;
        var vertices.Vector.<Number> = geomTree[0].vertexData.concat();
        var normals.Vector.<Number> = geomTree[0].vertexNormalData.concat();
        var indices.Vector.<uint> = geomTree[0].indexData.concat();
        var uvs.Vector.<Number> = geomTree[0].UVData.concat();
    
        var subGeom:SubGeometry = new SubGeometry();
        geometry.addSubGeometry(subGeom);
        subGeom.autoDeriveVertexNormals = false;
        subGeom.autoDeriveVertexTangents = true;
        subGeom.updateVertexData(vertices);
        subGeom.updateIndexData(indices);
        subGeom.updateUVData(uvs);
        subGeom.updateVertexNormalData(normals);
        
    for (var i:int = 1; i <= 5; i++)
    {
        copy = new Mesh(tree.material,geometry);
        copy.z  = -750 + i * 250;
        tc.addChild(copy);
    }
    
    view.scene.addChild(merge.applyToContainer(tc))
    
    trace(copy.subMeshes.length); //traces1
    trace (view.scene.numChildren) //traces 1
}



fabrice

On May 17, 2011, at 4:40 PM, John Brookes wrote:

> Apply version works 
> ApplyToContainer is same as the problem above.
> 
> private function onLoadComplete(e:LoaderEvent):void 
> {
>     var merge:Merge = new Merge(false, false, false);
>     
>     var tree:Mesh = Mesh(AssetLibrary.getAsset('obj0', 'treeNS')).clone() as 
> Mesh;
>     var base:Mesh = new Plane(tree.material);
>     
>     for (var i:int = 1; i <= 5; i++)
>     {
>         
>         tree.z  = -750 + i * 250;
>         merge.apply(base, tree);
>     }
>     
>     view.scene.addChild(base)
>     
>     trace(base.subMeshes.length); //traces1
>     trace (view.scene.numChildren) //traces 1
> }
> 
> I see 5
> 
> ######
> 
> 
> private function onLoadComplete(e:LoaderEvent):void 
> {
>     var merge:Merge = new Merge(false, false, true);
>     var tc:ObjectContainer3D = new ObjectContainer3D();
>     var copy:Mesh
>     var tree:Mesh = Mesh(AssetLibrary.getAsset('obj0', 'treeNS')).clone() as 
> Mesh;
>     
>     
>     for (var i:int = 1; i <= 5; i++)
>     {
>         copy = new Mesh(tree.material,tree.geometry);
>         copy.z  = -750 + i * 250;
>         tc.addChild(copy);
>     }
>     
>     
>     view.scene.addChild(merge.applyToContainer(tc))
>     
>     trace(copy.subMeshes.length); //traces1
>     trace (view.scene.numChildren) //traces 1
> }
> 
> I see 11

Reply via email to