excessive time for building collision tree

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 7:10 am

Building a collision tree in debug mode with optimization on is taking an unusually long time. Here's some test results.

vertices: 266
triangles: 528

optimization on
-------------------
debug: NewtonTreeCollision build time: 23.033 seconds
release: NewtonTreeCollision build time: 0.0691934 seconds

optimization off
---------------------
debug: NewtonTreeCollision build time: 0.453699 seconds
releae: NewtonTreeCollision build time: 0.0217953 seconds

I also included PhysX times to process the same mesh. I realize Newton is doing a lot of work to create the mesh but I was wondering if there's any way it can be sped up or offloaded to another thread for processing.

PhysX
--------
debug: PxTriangleMeshGeometry build time: 0.00290725 seconds
release: PxTriangleMeshGeometry build time: 0.00182471 seconds

-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby PJani » Mon Oct 22, 2012 8:18 am

Heh u can't depend on debug build, because there are so many realtime checks that is impossible to get real estimate of usage.
| i7-5930k@4.2Ghz, EVGA 980Ti FTW, 32GB RAM@3000 |
| Dell XPS 13 9370, i7-8550U, 16GB RAM |
| Ogre 1.7.4 | VC++ 9 | custom OgreNewt, Newton 300 |
| C/C++, C# |
User avatar
PJani
 
Posts: 448
Joined: Mon Feb 02, 2009 7:18 pm
Location: Slovenia

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 9:15 am

PJani wrote:Heh u can't depend on debug build, because there are so many realtime checks that is impossible to get real estimate of usage.


Yeah, but 23 seconds to process a few hundred vertices seems a bit extreme to me. :)

-Brid
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 9:40 am

It takes 23 second to build a mesh of 266 vertices in debug? can I see that mesh?
some of the building mesh I have is the demo sandbox have a lot more vertices and face that that.
for example the Sponza building has 31902 vertices and 59892 faces and

debug
optimize time 11.7 second to build;
un optimized time 16.9 second to build;

release
optimize time 1.35 seconds to build;


the reason the optimized is faster is because as the mesh complexity become larges , the optimization reduce the vertex and face count, and the secund part which calculate faces adjacency operates in a much lower face count
that meshes have over 59000 face, that more than a 100 times what you are using.
23 second in one mesh sound to much to me that must be some error in you test.
can I see that mesh ?

as for Phyx being faster, the answer is that the collision mesh in Newton are superior that in Phyx,
Physx and must library take the mesh as vertex list index list, the put the burden of the mesh list construction on the cline application.
new does for the vertex list only.
Physx does not convex the mesh into a convex face list, Newton does.
Newton makes an absolute optimal Delaunay constrained triangulation of the mesh input mesh, the guaranty the each face maximize the area, lead to better collision.
Phyx X simple take the mash as it is give to it.
finally Newton mesh is not a simple vertex list index list, if is a graphs with edge adjacency information.

each and every one of these algorithm are highly optimized, the difference is that Newton run them on the mesh not other physics library does
The final Newton collision mesh is a extremely high quality.
an way to test this will be to save the mesh generated by both library an load then in the visual editor so that you can see why this difference in time. you should see the Newton mesh with few faces, and the face mush well formed that the input triangle list index list.

as for make an of line process it is not that simple because the containers in the engine are no thread safe. Making then thread safe will penalize some of the run time code with unnecessary lock/unlock
someday will extend the containers to make the literature thread safe , but that a long turn project.


The collision tree mesh can be serialized, would that be a solution for you?
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 9:47 am

In the latest demo I am using a mesh I called play ground, it have more than 500 faces, and it takes

debug 0.084 secunds
release 0.006 secunds

you have to have a bug some where, those 23 secudn do no sound right to me.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 10:17 am

Julio Jerez wrote:In the latest demo I am using a mesh I called play ground, it have more than 500 faces, and it takes

debug 0.084 secunds
release 0.006 secunds

you have to have a bug some where, those 23 secudn do no sound right to me.


The mesh is just a sphere. Here's the serialized file.
http://www.hurleyworks.com/downloads/SphereStaticMesh.zip

It takes 23 second to build a mesh of 266 vertices in debug?

Only if optimization is on NewtonTreeCollisionEndBuild(collision, 1);

I'll check my code again but the only change I make is setting optimization on or off and the build times change from .45 secs to 23 secs

So calling NewtonTreeCollisionEndBuild(collision, 1) is 23 seconds
and calling NewtonTreeCollisionEndBuild(collision, 0 ) is .45 seconds

There's no other changes in my code.
-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 10:26 am

A seirialze mesh will no work because ther are simple laded.
I will make a 266 sphere in Max and load it to see if I can reproduce it.

what radius size you use?
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 10:41 am

Julio Jerez wrote:A seirialze mesh will no work because ther are simple laded.
I will make a 266 sphere in Max and load it to see if I can reproduce it.

what radius size you use?


.5 meters

-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 10:52 am

Ok I just made as 24 segment radius 0.5 sphere in Max, (266 vetices and 288 quad faces)
I load the sphere.ngd in the sandbox demo and in debug mode it takes

32 bit mode debug
optimize on: 0.136 secunds
optimize off: 0.164 secunds

in 64 bit mode in debug,
optimize on: 0.153 secunds
optimize off: 0.170 secunds
those figure look nomal to me, no where near 23 secunds

here is the NGD file you can save as "sphere.ngd" and load in the demo snad box, please see if this is what you see.

Code: Select all
<?xml version="1.0" ?>
<NewtonGameDynamnics>
    <header description="Newton Dynamnics 3.00, universal file format" revision="103" />
    <nodes count="6">
        <dRootNodeInfo>
            <dNodeInfo name="rootNode" />
            <childrenNodes count="3" indices="1 2 4" />
        </dRootNodeInfo>
        <dSceneNodeInfo>
            <dNodeInfo name="levelGeometry" />
            <color float4="0.750000 0.750000 0.000000 0.000000" />
            <transform position="-0.007675 0.000000 -0.001208 1.000000" eulerAngles="-0.000000 -0.000000 -0.000000 0.000000" localScale="1.000000 1.000000 1.000000 1.000000" stretchAxis="1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000" />
            <parentNodes count="1" indices="0" />
            <childrenNodes count="1" indices="3" />
        </dSceneNodeInfo>
        <dSceneCacheInfo cacheId="-7649022316178375635">
            <dNodeInfo name="dGeometryCache" />
            <parentNodes count="1" indices="0" />
            <childrenNodes count="1" indices="3" />
        </dSceneCacheInfo>
        <dMeshNodeInfo>
            <dGeometryNodeInfo>
                <dNodeInfo name="levelGeometry_mesh" />
                <pivotMatrix float16="1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000" />
            </dGeometryNodeInfo>
            <points>
                <position float4="266" floats="0.000000 0.000000 -0.508000 1.000000 0.000000 -0.131480 -0.490690 1.000000 -0.127000 -0.131480 -0.473970 1.000000 -0.131480 0.000000 -0.490690 1.000000 -0.127000 0.131480 -0.473970 1.000000 0.000000 0.131480 -0.490690 1.000000 0.127000 0.131480 -0.473970 1.000000 0.131480 0.000000 -0.490690 1.000000 0.127000 -0.131480 -0.473970 1.000000 0.113865 -0.254000 -0.424950 1.000000 0.000000 -0.254000 -0.439941 1.000000 -0.113865 -0.254000 -0.424950 1.000000 -0.219970 -0.254000 -0.381000 1.000000 -0.245345 -0.131480 -0.424950 1.000000 -0.254000 0.000000 -0.439941 1.000000 -0.245345 0.131480 -0.424950 1.000000 -0.219970 0.254000 -0.381000 1.000000 -0.113865 0.254000 -0.424950 1.000000 0.000000 0.254000 -0.439941 1.000000 0.113865 0.254000 -0.424950 1.000000 0.245345 0.131480 -0.424950 1.000000 0.254000 0.000000 -0.439941 1.000000 0.245345 -0.131480 -0.424950 1.000000 0.219970 -0.254000 -0.381000 1.000000 0.219970 0.254000 -0.381000 1.000000 0.179605 -0.359210 -0.311085 1.000000 0.092970 -0.359210 -0.346970 1.000000 0.000000 -0.359210 -0.359210 1.000000 -0.092970 -0.359210 -0.346971 1.000000 -0.179605 -0.359210 -0.311085 1.000000 -0.311085 -0.254000 -0.311085 1.000000 -0.346970 -0.131480 -0.346971 1.000000 -0.359210 0.000000 -0.359210 1.000000 -0.346970 0.131480 -0.346971 1.000000 -0.311085 0.254000 -0.311085 1.000000 0.311085 0.254000 -0.311085 1.000000 0.346970 0.131480 -0.346970 1.000000 0.359210 0.000000 -0.359210 1.000000 0.346970 -0.131480 -0.346970 1.000000 0.311085 -0.254000 -0.311085 1.000000 -0.179605 0.359210 -0.311085 1.000000 -0.092970 0.359210 -0.346970 1.000000 0.000000 0.359210 -0.359210 1.000000 0.092971 0.359210 -0.346970 1.000000 0.179605 0.359210 -0.311085 1.000000 -0.254000 -0.359210 -0.254000 1.000000 -0.254000 0.359210 -0.254000 1.000000 0.254000 0.359210 -0.254000 1.000000 0.254000 -0.359210 -0.254000 1.000000 -0.381000 -0.254000 -0.219971 1.000000 -0.424950 -0.131480 -0.245345 1.000000 -0.439941 0.000000 -0.254000 1.000000 -0.424950 0.131480 -0.245345 1.000000 -0.381000 0.254000 -0.219971 1.000000 0.127000 -0.439941 -0.219971 1.000000 0.065740 -0.439941 -0.245345 1.000000 0.000000 -0.439941 -0.254000 1.000000 -0.065740 -0.439941 -0.245345 1.000000 -0.127000 -0.439941 -0.219971 1.000000 -0.127000 0.439941 -0.219970 1.000000 -0.065740 0.439941 -0.245345 1.000000 0.000000 0.439941 -0.254000 1.000000 0.065740 0.439941 -0.245345 1.000000 0.127000 0.439941 -0.219970 1.000000 0.381000 0.254000 -0.219970 1.000000 0.424950 0.131480 -0.245345 1.000000 0.439941 0.000000 -0.254000 1.000000 0.424950 -0.131480 -0.245345 1.000000 0.381000 -0.254000 -0.219970 1.000000 -0.311085 -0.359210 -0.179605 1.000000 -0.179605 -0.439941 -0.179605 1.000000 0.179605 -0.439941 -0.179605 1.000000 -0.179605 0.439941 -0.179605 1.000000 -0.311085 0.359210 -0.179605 1.000000 0.179605 0.439941 -0.179605 1.000000 0.311085 0.359210 -0.179605 1.000000 0.311085 -0.359210 -0.179605 1.000000 -0.219971 -0.439941 -0.127000 1.000000 -0.219970 0.439941 -0.127000 1.000000 0.219971 -0.439941 -0.127000 1.000000 0.219970 0.439941 -0.127000 1.000000 -0.424950 -0.254000 -0.113865 1.000000 -0.473970 -0.131480 -0.127000 1.000000 -0.490690 0.000000 -0.131480 1.000000 -0.473970 0.131480 -0.127000 1.000000 -0.424950 0.254000 -0.113865 1.000000 0.065740 -0.490690 -0.113865 1.000000 0.034030 -0.490690 -0.127000 1.000000 0.000000 -0.490690 -0.131480 1.000000 -0.034030 -0.490690 -0.127000 1.000000 -0.065740 -0.490690 -0.113865 1.000000 0.424950 0.254000 -0.113865 1.000000 0.473970 0.131480 -0.127000 1.000000 0.490690 0.000000 -0.131480 1.000000 0.473970 -0.131480 -0.127000 1.000000 0.424950 -0.254000 -0.113865 1.000000 -0.065740 0.490690 -0.113865 1.000000 -0.034029 0.490690 -0.127000 1.000000 0.000000 0.490690 -0.131480 1.000000 0.034030 0.490690 -0.127000 1.000000 0.065740 0.490690 -0.113865 1.000000 -0.092971 -0.490690 -0.092971 1.000000 -0.346970 0.359210 -0.092971 1.000000 -0.346970 -0.359210 -0.092971 1.000000 0.092971 -0.490690 -0.092971 1.000000 -0.092970 0.490690 -0.092970 1.000000 0.346970 -0.359210 -0.092970 1.000000 0.346970 0.359210 -0.092970 1.000000 0.092970 0.490690 -0.092970 1.000000 -0.113865 -0.490690 -0.065740 1.000000 -0.245345 -0.439941 -0.065740 1.000000 -0.245345 0.439941 -0.065740 1.000000 0.113865 -0.490690 -0.065740 1.000000 -0.113865 0.490690 -0.065740 1.000000 0.245345 -0.439941 -0.065740 1.000000 0.113865 0.490690 -0.065740 1.000000 0.245345 0.439941 -0.065740 1.000000 -0.439941 -0.254000 -0.000000 1.000000 -0.490690 -0.131480 -0.000000 1.000000 -0.508000 0.000000 -0.000000 1.000000 -0.490690 0.131480 -0.000000 1.000000 -0.439941 0.254000 -0.000000 1.000000 -0.127000 -0.490690 -0.034030 1.000000 -0.000000 -0.508000 -0.000000 1.000000 -0.127000 0.490690 -0.034030 1.000000 0.127000 -0.490690 -0.034030 1.000000 0.439941 0.254000 -0.000000 1.000000 0.490690 0.131480 -0.000000 1.000000 0.508000 0.000000 -0.000000 1.000000 0.490690 -0.131480 -0.000000 1.000000 0.439941 -0.254000 -0.000000 1.000000 0.000000 0.508000 0.000000 1.000000 0.127000 0.490690 -0.034030 1.000000 -0.359210 -0.359210 -0.000000 1.000000 -0.359210 0.359210 -0.000000 1.000000 0.359210 -0.359210 -0.000000 1.000000 0.359210 0.359210 -0.000000 1.000000 -0.254000 -0.439941 -0.000000 1.000000 -0.254000 0.439941 -0.000000 1.000000 0.254000 -0.439941 -0.000000 1.000000 0.254000 0.439941 -0.000000 1.000000 -0.131480 -0.490690 -0.000000 1.000000 -0.131480 0.490690 -0.000000 1.000000 0.131480 -0.490690 -0.000000 1.000000 0.131480 0.490690 0.000000 1.000000 -0.424950 -0.254000 0.113865 1.000000 -0.473971 -0.131480 0.127000 1.000000 -0.490690 0.000000 0.131480 1.000000 -0.473971 0.131480 0.127000 1.000000 -0.424950 0.254000 0.113865 1.000000 0.127000 -0.490690 0.034030 1.000000 -0.127000 -0.490690 0.034030 1.000000 0.113865 -0.490690 0.065740 1.000000 0.092970 -0.490690 0.092971 1.000000 -0.113865 -0.490690 0.065740 1.000000 0.065740 -0.490690 0.113865 1.000000 -0.092971 -0.490690 0.092970 1.000000 0.034029 -0.490690 0.127000 1.000000 -0.065740 -0.490690 0.113865 1.000000 -0.000000 -0.490690 0.131480 1.000000 -0.034030 -0.490690 0.127000 1.000000 0.424950 0.254000 0.113866 1.000000 0.473970 0.131480 0.127001 1.000000 0.490690 0.000000 0.131481 1.000000 0.473970 -0.131480 0.127001 1.000000 0.424950 -0.254000 0.113866 1.000000 -0.127000 0.490690 0.034029 1.000000 -0.113865 0.490690 0.065740 1.000000 0.127000 0.490690 0.034030 1.000000 -0.092970 0.490690 0.092970 1.000000 -0.065740 0.490690 0.113865 1.000000 0.113865 0.490690 0.065740 1.000000 -0.034030 0.490690 0.127000 1.000000 0.092970 0.490690 0.092971 1.000000 -0.000000 0.490690 0.131480 1.000000 0.065740 0.490690 0.113865 1.000000 0.034029 0.490690 0.127000 1.000000 -0.346971 -0.359210 0.092970 1.000000 -0.346970 0.359210 0.092970 1.000000 0.346970 -0.359210 0.092971 1.000000 0.346970 0.359210 0.092971 1.000000 -0.245345 -0.439941 0.065740 1.000000 -0.245345 0.439941 0.065740 1.000000 0.245345 -0.439941 0.065740 1.000000 0.245345 0.439941 0.065740 1.000000 -0.381000 -0.254000 0.219970 1.000000 -0.424950 -0.131480 0.245345 1.000000 -0.439941 0.000000 0.254000 1.000000 -0.424950 0.131480 0.245345 1.000000 -0.381000 0.254000 0.219970 1.000000 -0.311085 -0.359210 0.179605 1.000000 -0.311085 0.359210 0.179605 1.000000 -0.219971 -0.439941 0.127000 1.000000 -0.219971 0.439941 0.127000 1.000000 0.381000 0.254000 0.219971 1.000000 0.424950 0.131480 0.245346 1.000000 0.439941 0.000000 0.254000 1.000000 0.424950 -0.131480 0.245346 1.000000 0.381000 -0.254000 0.219971 1.000000 0.311085 -0.359210 0.179605 1.000000 0.311085 0.359210 0.179605 1.000000 0.219970 -0.439941 0.127000 1.000000 0.219970 0.439941 0.127000 1.000000 -0.179605 0.439941 0.179605 1.000000 -0.127000 0.439941 0.219970 1.000000 0.179605 0.439941 0.179605 1.000000 -0.065740 0.439941 0.245345 1.000000 0.127000 0.439941 0.219971 1.000000 -0.000000 0.439941 0.254000 1.000000 0.065740 0.439941 0.245345 1.000000 0.179605 -0.439941 0.179605 1.000000 -0.179605 -0.439941 0.179605 1.000000 0.127000 -0.439941 0.219971 1.000000 -0.127000 -0.439941 0.219970 1.000000 0.065740 -0.439941 0.245345 1.000000 -0.065740 -0.439941 0.245345 1.000000 -0.000000 -0.439941 0.254000 1.000000 -0.254000 0.359210 0.254000 1.000000 -0.254000 -0.359210 0.254000 1.000000 0.254000 0.359210 0.254000 1.000000 0.254000 -0.359210 0.254000 1.000000 -0.311085 0.254000 0.311085 1.000000 -0.311085 -0.254000 0.311085 1.000000 -0.179605 0.359210 0.311085 1.000000 -0.179605 -0.359210 0.311085 1.000000 0.179605 0.359210 0.311085 1.000000 0.179605 -0.359210 0.311085 1.000000 0.311085 0.254000 0.311085 1.000000 0.311085 -0.254000 0.311085 1.000000 -0.346971 0.131480 0.346970 1.000000 -0.346971 -0.131480 0.346970 1.000000 -0.092971 0.359210 0.346970 1.000000 -0.092971 -0.359210 0.346970 1.000000 0.092970 0.359210 0.346970 1.000000 0.092970 -0.359210 0.346971 1.000000 0.346970 0.131480 0.346971 1.000000 0.346970 -0.131480 0.346971 1.000000 -0.359210 0.000000 0.359210 1.000000 -0.000000 0.359210 0.359210 1.000000 -0.000000 -0.359210 0.359210 1.000000 0.359210 0.000000 0.359211 1.000000 -0.219971 0.254000 0.381000 1.000000 -0.219971 -0.254000 0.381000 1.000000 0.219970 0.254000 0.381000 1.000000 0.219970 -0.254000 0.381000 1.000000 -0.245345 0.131480 0.424950 1.000000 -0.245345 -0.131480 0.424950 1.000000 -0.113865 0.254000 0.424950 1.000000 -0.113865 -0.254000 0.424950 1.000000 0.113865 0.254000 0.424950 1.000000 0.113865 -0.254000 0.424950 1.000000 0.245345 0.131480 0.424950 1.000000 0.245345 -0.131480 0.424950 1.000000 -0.254000 0.000000 0.439941 1.000000 -0.000000 0.254000 0.439941 1.000000 -0.000000 -0.254000 0.439941 1.000000 0.254000 0.000000 0.439941 1.000000 -0.127000 0.131480 0.473970 1.000000 -0.127000 -0.131480 0.473970 1.000000 0.127000 0.131480 0.473971 1.000000 0.127000 -0.131480 0.473971 1.000000 -0.131480 0.000000 0.490690 1.000000 -0.000000 0.131480 0.490690 1.000000 -0.000000 -0.131480 0.490690 1.000000 0.131480 0.000000 0.490690 1.000000 -0.000000 0.000000 0.508000 1.000000" />
                <normal float3="266" floats="-1.000000 0.000000 -0.000001 -0.965926 0.000000 0.258818 -0.965926 0.000000 -0.258819 -0.965907 0.258889 -0.000001 -0.965907 -0.258889 -0.000001 -0.932995 -0.258889 0.249995 -0.932995 0.258889 0.249994 -0.932995 -0.258889 -0.249996 -0.932994 0.258889 -0.249996 -0.866026 0.000000 0.499999 -0.866025 0.000000 -0.500000 -0.865962 -0.500109 -0.000000 -0.865962 0.500109 -0.000001 -0.836500 -0.258889 0.482953 -0.836500 0.258889 0.482953 -0.836500 0.258889 -0.482954 -0.836500 -0.258889 -0.482954 -0.836456 -0.500109 0.224127 -0.836455 0.500109 0.224127 -0.836455 0.500109 -0.224128 -0.836455 -0.500109 -0.224128 -0.749946 -0.500109 0.432981 -0.749946 0.500109 0.432981 -0.749945 -0.500109 -0.432981 -0.749945 0.500109 -0.432981 -0.707107 0.000000 0.707106 -0.707107 0.000000 -0.707107 -0.707004 -0.707210 -0.000000 -0.707003 0.707210 -0.000000 -0.683000 -0.258889 0.682999 -0.683000 0.258889 0.682999 -0.682999 -0.258889 -0.683000 -0.682999 0.258889 -0.683000 -0.682913 -0.707210 0.182985 -0.682913 -0.707210 -0.182986 -0.682913 0.707210 0.182985 -0.682913 0.707210 -0.182986 -0.612328 -0.500109 0.612327 -0.612328 0.500109 0.612327 -0.612328 -0.500109 -0.612328 -0.612328 0.500109 -0.612328 -0.612283 -0.707210 0.353501 -0.612283 0.707210 0.353501 -0.612283 -0.707210 -0.353502 -0.612283 0.707210 -0.353502 -0.500001 0.000000 0.866025 -0.500000 0.000000 -0.866025 -0.499927 -0.707210 0.499927 -0.499927 0.707210 0.499926 -0.499927 -0.707210 -0.499927 -0.499927 0.707210 -0.499927 -0.499890 -0.866089 -0.000000 -0.499890 0.866089 -0.000000 -0.482954 -0.258889 0.836500 -0.482954 0.258889 0.836500 -0.482953 -0.258889 -0.836500 -0.482953 0.258889 -0.836500 -0.482857 -0.866089 0.129381 -0.482857 -0.866089 -0.129381 -0.482856 0.866089 0.129381 -0.482856 0.866089 -0.129381 -0.432982 -0.500109 0.749945 -0.432982 0.500109 0.749945 -0.432981 -0.500109 -0.749945 -0.432981 0.500109 -0.749945 -0.432918 -0.866089 0.249945 -0.432917 0.866089 0.249944 -0.432917 -0.866089 -0.249945 -0.432917 0.866089 -0.249945 -0.353502 -0.707210 0.612283 -0.353502 0.707210 0.612282 -0.353502 -0.707210 -0.612283 -0.353501 0.707210 -0.612283 -0.353476 -0.866089 0.353475 -0.353476 0.866089 0.353475 -0.353476 -0.866089 -0.353476 -0.353475 0.866089 -0.353476 -0.258820 0.000000 0.965926 -0.258819 0.000000 -0.965926 -0.258748 -0.965945 -0.000000 -0.258748 0.965945 -0.000000 -0.249996 -0.258889 0.932994 -0.249996 0.258889 0.932994 -0.249995 -0.258889 -0.932995 -0.249995 0.258889 -0.932995 -0.249945 -0.866089 0.432917 -0.249945 0.866089 0.432917 -0.249945 -0.866089 -0.432917 -0.249945 0.866089 -0.432917 -0.249932 -0.965945 0.066969 -0.249931 -0.965945 -0.066969 -0.249931 0.965945 0.066969 -0.249931 0.965945 -0.066969 -0.224128 0.500109 0.836455 -0.224128 -0.500109 0.836455 -0.224127 -0.500109 -0.836455 -0.224127 0.500109 -0.836455 -0.224083 -0.965945 0.129374 -0.224082 -0.965945 -0.129374 -0.224082 0.965945 0.129374 -0.224082 0.965945 -0.129374 -0.182986 -0.707210 0.682913 -0.182986 0.707210 0.682912 -0.182986 -0.707210 -0.682913 -0.182986 0.707210 -0.682913 -0.182963 -0.965945 0.182962 -0.182963 -0.965945 -0.182963 -0.182962 0.965945 0.182962 -0.182962 0.965945 -0.182962 -0.129381 -0.866089 0.482856 -0.129381 0.866089 0.482856 -0.129381 -0.866089 -0.482856 -0.129381 0.866089 -0.482856 -0.129374 -0.965945 0.224082 -0.129374 -0.965945 -0.224082 -0.129374 0.965945 0.224082 -0.129374 0.965945 -0.224082 -0.066969 -0.965945 0.249931 -0.066969 0.965945 0.249931 -0.066969 -0.965945 -0.249931 -0.066969 0.965945 -0.249931 -0.000001 0.000000 1.000000 -0.000001 -0.258889 0.965907 -0.000001 -0.500109 0.865962 -0.000001 0.258889 0.965907 -0.000001 -0.707210 0.707003 -0.000001 0.500109 0.865962 -0.000000 -0.866089 0.499890 -0.000000 0.707210 0.707003 -0.000000 0.866089 0.499890 -0.000000 -0.965945 0.258748 -0.000000 0.965945 0.258748 -0.000000 -1.000000 0.000000 -0.000000 -0.965945 -0.258748 0.000000 -0.866089 -0.499890 0.000000 1.000000 -0.000000 0.000000 -0.707210 -0.707003 0.000000 0.965945 -0.258748 0.000000 -0.500109 -0.865962 0.000000 -0.258889 -0.965907 0.000000 0.000000 -1.000000 0.000000 0.866089 -0.499890 0.000000 0.258889 -0.965907 0.000000 0.500109 -0.865962 0.000000 0.707210 -0.707003 0.066969 -0.965945 0.249931 0.066969 0.965945 0.249931 0.066969 -0.965945 -0.249931 0.066969 0.965945 -0.249931 0.129374 -0.965945 0.224082 0.129374 0.965945 0.224082 0.129374 -0.965945 -0.224082 0.129374 0.965945 -0.224082 0.129381 -0.866089 0.482857 0.129381 0.866089 0.482856 0.129381 -0.866089 -0.482856 0.129381 0.866089 -0.482856 0.182962 0.965945 0.182963 0.182962 -0.965945 0.182963 0.182962 -0.965945 -0.182962 0.182962 0.965945 -0.182962 0.182985 -0.707210 0.682913 0.182985 0.707210 0.682913 0.182986 -0.707210 -0.682913 0.182986 0.707210 -0.682913 0.224082 0.965945 0.129374 0.224082 -0.965945 0.129374 0.224082 -0.965945 -0.129374 0.224082 0.965945 -0.129374 0.224127 -0.500109 0.836456 0.224127 0.500109 0.836455 0.224128 -0.500109 -0.836455 0.224128 0.500109 -0.836455 0.249931 0.965945 0.066969 0.249931 -0.965945 0.066969 0.249931 0.965945 -0.066969 0.249931 -0.965945 -0.066969 0.249945 0.866089 0.432917 0.249945 -0.866089 0.432918 0.249945 0.866089 -0.432917 0.249945 -0.866089 -0.432917 0.249994 0.258889 0.932995 0.249994 -0.258889 0.932995 0.249995 0.258889 -0.932994 0.249995 -0.258889 -0.932994 0.258748 0.965945 0.000000 0.258748 -0.965945 0.000000 0.258818 0.000000 0.965926 0.258819 -0.000000 -0.965926 0.353475 0.866089 0.353476 0.353475 -0.866089 0.353476 0.353475 0.866089 -0.353475 0.353476 -0.866089 -0.353475 0.353501 0.707210 0.612283 0.353501 -0.707210 0.612283 0.353502 0.707210 -0.612283 0.353502 -0.707210 -0.612283 0.432917 0.866089 0.249945 0.432917 -0.866089 0.249945 0.432917 0.866089 -0.249945 0.432917 -0.866089 -0.249945 0.432981 0.500109 0.749946 0.432981 -0.500109 0.749946 0.432981 -0.500109 -0.749945 0.432981 0.500109 -0.749945 0.482856 0.866089 0.129381 0.482856 0.866089 -0.129381 0.482856 -0.866089 0.129381 0.482857 -0.866089 -0.129381 0.482953 0.258889 0.836500 0.482953 -0.258889 0.836500 0.482954 -0.258889 -0.836500 0.482954 0.258889 -0.836500 0.499890 0.866089 0.000000 0.499890 -0.866089 0.000000 0.499926 -0.707210 0.499927 0.499926 0.707210 0.499927 0.499927 -0.707210 -0.499927 0.499927 0.707210 -0.499927 0.499999 0.000000 0.866026 0.500000 -0.000000 -0.866025 0.612282 0.707210 0.353502 0.612283 -0.707210 0.353502 0.612283 0.707210 -0.353502 0.612283 -0.707210 -0.353502 0.612327 0.500109 0.612328 0.612327 -0.500109 0.612328 0.612328 0.500109 -0.612328 0.612328 -0.500109 -0.612328 0.682913 0.707210 0.182986 0.682913 -0.707210 0.182986 0.682913 0.707210 -0.182986 0.682913 -0.707210 -0.182986 0.682999 -0.258889 0.683000 0.682999 0.258889 0.683000 0.682999 0.258889 -0.682999 0.682999 -0.258889 -0.682999 0.707003 0.707210 0.000000 0.707003 -0.707210 0.000000 0.707106 0.000000 0.707107 0.707107 -0.000000 -0.707107 0.749945 0.500109 0.432982 0.749945 -0.500109 0.432982 0.749945 0.500109 -0.432981 0.749945 -0.500109 -0.432981 0.836455 -0.500109 0.224128 0.836455 0.500109 0.224128 0.836455 0.500109 -0.224127 0.836455 -0.500109 -0.224127 0.836500 -0.258889 0.482954 0.836500 0.258889 0.482954 0.836500 -0.258889 -0.482953 0.836500 0.258889 -0.482953 0.865962 -0.500109 0.000000 0.865962 0.500109 0.000000 0.866025 0.000000 0.500001 0.866025 -0.000000 -0.500000 0.932994 0.258889 0.249996 0.932994 -0.258889 0.249996 0.932995 -0.258889 -0.249995 0.932995 0.258889 -0.249995 0.965907 -0.258889 0.000000 0.965907 0.258889 0.000000 0.965926 0.000000 0.258820 0.965926 -0.000000 -0.258819 1.000000 0.000000 0.000000" />
                <uv0 float2="323" floats="0.000000 0.916667 0.000000 0.666667 0.000000 1.000000 0.000000 0.000000 0.000000 0.583333 0.000000 0.500000 0.000000 0.416667 0.000000 0.333333 0.000000 0.250000 0.000000 0.750000 0.000000 0.166667 0.000000 0.833333 0.000000 0.083333 0.041667 0.000000 0.041667 0.583333 0.041667 0.500000 0.041667 0.416667 0.041667 0.333333 0.041667 0.250000 0.041667 0.750000 0.041667 0.166667 0.041667 0.833333 0.041667 0.666667 0.041667 0.083333 0.041667 1.000000 0.041667 0.916667 0.083333 0.666667 0.083333 1.000000 0.083333 0.333333 0.083333 0.250000 0.083333 0.750000 0.083333 0.500000 0.083333 0.166667 0.083333 0.916667 0.083333 0.000000 0.083333 0.083333 0.083333 0.833333 0.083333 0.583333 0.083333 0.416667 0.125000 0.416667 0.125000 0.500000 0.125000 0.166667 0.125000 0.583333 0.125000 0.916667 0.125000 0.083333 0.125000 0.666667 0.125000 0.833333 0.125000 0.750000 0.125000 0.250000 0.125000 0.000000 0.125000 1.000000 0.125000 0.333333 0.166667 0.416667 0.166667 0.333333 0.166667 0.166667 0.166667 0.666667 0.166667 0.083333 0.166667 0.000000 0.166667 0.916667 0.166667 1.000000 0.166667 0.583333 0.166667 0.250000 0.166667 0.750000 0.166667 0.833333 0.166667 0.500000 0.208333 0.250000 0.208333 0.166667 0.208333 0.000000 0.208333 0.916667 0.208333 0.583333 0.208333 0.750000 0.208333 0.500000 0.208333 0.666667 0.208333 0.083333 0.208333 1.000000 0.208333 0.416667 0.208333 0.333333 0.208333 0.833333 0.250000 0.666667 0.250000 0.833333 0.250000 0.166667 0.250000 0.416667 0.250000 0.916667 0.250000 0.583333 0.250000 0.333333 0.250000 0.500000 0.250000 0.750000 0.250000 1.000000 0.250000 0.083333 0.250000 0.250000 0.250000 0.000000 0.291667 0.416667 0.291667 0.083333 0.291667 0.166667 0.291667 0.500000 0.291667 0.583333 0.291667 0.000000 0.291667 0.916667 0.291667 0.333333 0.291667 0.750000 0.291667 1.000000 0.291667 0.250000 0.291667 0.666667 0.291667 0.833333 0.333333 0.583333 0.333333 0.500000 0.333333 1.000000 0.333333 0.250000 0.333333 0.000000 0.333333 0.750000 0.333333 0.416667 0.333333 0.333333 0.333333 0.916667 0.333333 0.083333 0.333333 0.666667 0.333333 0.833333 0.333333 0.166667 0.375000 0.416667 0.375000 1.000000 0.375000 0.000000 0.375000 0.916667 0.375000 0.833333 0.375000 0.333333 0.375000 0.166667 0.375000 0.500000 0.375000 0.583333 0.375000 0.666667 0.375000 0.250000 0.375000 0.750000 0.375000 0.083333 0.416667 0.333333 0.416667 0.500000 0.416667 0.166667 0.416667 0.000000 0.416667 0.833333 0.416667 0.083333 0.416667 0.250000 0.416667 0.583333 0.416667 0.666667 0.416667 0.750000 0.416667 1.000000 0.416667 0.916667 0.416667 0.416667 0.458333 0.083333 0.458333 0.416667 0.458333 0.333333 0.458333 0.500000 0.458333 0.166667 0.458333 0.666667 0.458333 0.833333 0.458333 0.916667 0.458333 0.250000 0.458333 0.000000 0.458333 0.750000 0.458333 1.000000 0.458333 0.583333 0.500000 0.833333 0.500000 0.916667 0.500000 0.166667 0.500000 0.750000 0.500000 0.250000 0.500000 0.666667 0.500000 0.583333 0.500000 1.000000 0.500000 0.500000 0.500000 0.000000 0.500000 0.416667 0.500000 0.083333 0.500000 0.333333 0.541667 0.583333 0.541667 0.833333 0.541667 0.750000 0.541667 0.250000 0.541667 0.500000 0.541667 0.083333 0.541667 0.166667 0.541667 1.000000 0.541667 0.416667 0.541667 0.916667 0.541667 0.000000 0.541667 0.333333 0.541667 0.666667 0.583333 0.166667 0.583333 0.000000 0.583333 0.916667 0.583333 0.833333 0.583333 0.083333 0.583333 0.750000 0.583333 0.666667 0.583333 0.333333 0.583333 0.416667 0.583333 1.000000 0.583333 0.500000 0.583333 0.583333 0.583333 0.250000 0.625000 0.416667 0.625000 0.916667 0.625000 1.000000 0.625000 0.333333 0.625000 0.666667 0.625000 0.250000 0.625000 0.750000 0.625000 0.833333 0.625000 0.000000 0.625000 0.166667 0.625000 0.500000 0.625000 0.083333 0.625000 0.583333 0.666667 0.500000 0.666667 0.416667 0.666667 0.583333 0.666667 0.166667 0.666667 0.833333 0.666667 0.750000 0.666667 0.250000 0.666667 0.000000 0.666667 0.916667 0.666667 0.083333 0.666667 0.666667 0.666667 1.000000 0.666667 0.333333 0.708333 0.916667 0.708333 0.833333 0.708333 1.000000 0.708333 0.666667 0.708333 0.166667 0.708333 0.000000 0.708333 0.083333 0.708333 0.750000 0.708333 0.250000 0.708333 0.583333 0.708333 0.416667 0.708333 0.500000 0.708333 0.333333 0.750000 0.500000 0.750000 0.416667 0.750000 0.583333 0.750000 0.166667 0.750000 0.083333 0.750000 0.333333 0.750000 0.666667 0.750000 0.000000 0.750000 0.750000 0.750000 0.250000 0.750000 1.000000 0.750000 0.916667 0.750000 0.833333 0.791667 0.666667 0.791667 0.916667 0.791667 1.000000 0.791667 0.083333 0.791667 0.250000 0.791667 0.750000 0.791667 0.333333 0.791667 0.583333 0.791667 0.500000 0.791667 0.416667 0.791667 0.166667 0.791667 0.833333 0.791667 0.000000 0.833333 1.000000 0.833333 0.500000 0.833333 0.750000 0.833333 0.333333 0.833333 0.833333 0.833333 0.000000 0.833333 0.666667 0.833333 0.083333 0.833333 0.416667 0.833333 0.166667 0.833333 0.583333 0.833333 0.916667 0.833333 0.250000 0.875000 0.583333 0.875000 0.166667 0.875000 0.000000 0.875000 0.750000 0.875000 0.250000 0.875000 1.000000 0.875000 0.083333 0.875000 0.916667 0.875000 0.500000 0.875000 0.833333 0.875000 0.416667 0.875000 0.666667 0.875000 0.333333 0.916667 0.333333 0.916667 0.083333 0.916667 0.416667 0.916667 0.500000 0.916667 0.583333 0.916667 0.666667 0.916667 0.250000 0.916667 0.750000 0.916667 0.916667 0.916667 0.166667 0.916667 0.833333 0.916667 0.000000 0.916667 1.000000 0.958333 0.916667 0.958333 0.000000 0.958333 0.666667 0.958333 0.583333 0.958333 0.500000 0.958333 0.416667 0.958333 0.250000 0.958333 0.333333 0.958333 0.833333 0.958333 0.166667 0.958333 1.000000 0.958333 0.750000 0.958333 0.083333 1.000000 0.166667 1.000000 0.916667 1.000000 0.833333 1.000000 0.083333 1.000000 0.333333 1.000000 0.416667 1.000000 0.666667 1.000000 0.250000 1.000000 0.583333 1.000000 0.500000 1.000000 0.750000" />
                <uv1 float2="1" floats="0.000000 0.000000" />
            </points>
            <polygons count="288" faceIndexCount="4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 4 4 4 3 3 3 3 3 3 3 4 4 3 3 4 4 3 3 4 4 3 3 4 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4">
                <faceMaterial index="1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1" />
                <position index="0 1 2 3 0 3 4 5 0 5 6 7 0 7 8 1 1 8 9 10 1 10 11 2 2 11 12 13 2 13 14 3 3 14 15 4 4 15 16 17 4 17 18 5 5 18 19 6 6 19 24 20 6 20 21 7 7 21 22 8 8 22 23 9 9 23 25 26 9 26 27 10 10 27 28 11 11 28 29 12 12 29 45 30 12 30 31 13 13 31 32 14 14 32 33 15 15 33 34 16 16 34 46 40 16 40 41 17 17 41 42 18 18 42 43 19 19 43 44 24 20 24 35 36 20 36 37 21 21 37 38 22 22 38 39 23 23 39 48 25 24 44 47 35 25 48 71 54 25 54 55 26 26 55 56 27 27 56 57 28 28 57 58 29 29 58 70 45 30 45 69 49 30 49 50 31 31 50 51 32 32 51 52 33 33 52 53 34 34 53 73 46 35 47 75 64 35 64 65 36 36 65 66 37 37 66 67 38 38 67 68 39 39 68 76 48 40 46 72 59 40 59 60 41 41 60 61 42 42 61 62 43 43 62 63 44 44 63 74 47 45 70 77 69 46 73 78 72 47 74 80 75 48 76 79 71 49 69 103 81 49 81 82 50 50 82 83 51 51 83 84 52 52 84 85 53 53 85 102 73 54 71 104 86 54 86 87 55 55 87 88 56 56 88 89 57 57 89 90 58 58 90 101 70 59 72 105 96 59 96 97 60 60 97 98 61 61 98 99 62 62 99 100 63 63 100 108 74 64 75 107 91 64 91 92 65 65 92 93 66 66 93 94 67 67 94 95 68 68 95 106 76 69 77 110 103 70 101 109 77 71 79 112 104 72 78 113 105 73 102 111 78 74 108 115 80 75 80 116 107 76 106 114 79 77 109 122 110 78 111 124 113 79 114 125 112 80 115 132 116 81 103 133 117 81 117 118 82 82 118 119 83 83 119 120 84 84 120 121 85 85 121 134 102 86 104 123 86 123 87 87 123 88 88 123 89 89 123 90 90 123 101 91 107 136 126 91 126 127 92 92 127 128 93 93 128 129 94 94 129 130 95 95 130 135 106 96 105 131 96 131 97 97 131 98 98 131 99 99 131 100 100 131 108 101 123 109 102 134 138 111 103 110 137 133 104 112 123 105 113 131 106 135 139 114 107 116 140 136 108 131 115 109 123 122 110 122 141 137 111 138 142 124 112 125 123 113 124 131 114 139 143 125 115 131 132 116 132 144 140 117 133 177 145 117 145 146 118 118 146 147 119 119 147 148 120 120 148 149 121 121 149 178 134 122 123 141 123 125 143 123 143 150 123 150 152 123 151 141 123 152 153 123 153 155 123 154 151 123 155 157 123 156 154 123 157 159 123 158 156 123 159 160 123 160 158 124 142 131 126 136 180 161 126 161 162 127 127 162 163 128 128 163 164 129 129 164 165 130 130 165 179 135 131 142 166 131 144 132 131 166 167 131 167 169 131 168 144 131 169 170 131 170 172 131 171 168 131 172 174 131 173 171 131 174 176 131 175 173 131 176 175 133 137 181 177 134 178 182 138 135 179 183 139 136 140 184 180 137 141 151 181 138 182 166 142 139 183 150 143 140 144 168 184 145 177 190 185 145 185 186 146 146 186 187 147 147 187 188 148 148 188 189 149 149 189 191 178 150 183 201 152 151 154 192 181 152 201 210 153 153 210 212 155 154 156 211 192 155 212 214 157 156 158 213 211 157 214 216 159 158 160 215 213 159 216 215 160 161 180 200 194 161 194 195 162 162 195 196 163 163 196 197 164 164 197 198 165 165 198 199 179 166 182 193 167 167 193 203 169 168 171 202 184 169 203 204 170 170 204 206 172 171 173 205 202 172 206 208 174 173 175 207 205 174 208 209 176 175 176 209 207 177 181 192 190 178 191 193 182 179 199 201 183 180 184 202 200 185 190 218 222 185 222 230 186 186 230 237 187 187 237 229 188 188 229 221 189 189 221 217 191 190 192 211 218 191 217 203 193 194 200 219 227 194 227 235 195 195 235 240 196 196 240 236 197 197 236 228 198 198 228 220 199 199 220 210 201 200 202 205 219 203 217 223 204 204 223 231 206 205 207 225 219 206 231 238 208 207 209 233 225 208 238 233 209 210 220 226 212 211 213 224 218 212 226 234 214 213 215 232 224 214 234 239 216 215 216 239 232 217 221 241 223 218 224 242 222 219 225 243 227 220 228 244 226 221 229 245 241 222 242 246 230 223 241 247 231 224 232 248 242 225 233 249 243 226 244 250 234 227 243 251 235 228 236 252 244 229 237 253 245 230 246 253 237 231 247 254 238 232 239 255 248 233 238 254 249 234 250 255 239 235 251 256 240 236 240 256 252 241 245 257 247 242 248 258 246 243 249 259 251 244 252 260 250 245 253 261 257 246 258 261 253 247 257 262 254 248 255 263 258 249 254 262 259 250 260 263 255 251 259 264 256 252 256 264 260 257 261 265 262 258 263 265 261 259 262 265 264 260 264 265 263" />
                <normal index="140 139 83 78 140 78 84 142 140 142 183 188 140 188 184 139 139 184 171 138 139 138 95 83 83 95 63 55 83 55 46 78 78 46 56 84 84 56 64 96 84 96 143 142 142 143 172 183 183 172 204 212 183 212 220 188 188 220 211 184 184 211 203 171 171 203 196 163 171 163 136 138 138 136 103 95 95 103 71 63 63 71 49 39 63 39 31 55 55 31 26 46 46 26 32 56 56 32 40 64 64 40 50 72 64 72 104 96 96 104 144 143 143 144 164 172 172 164 195 204 212 204 227 235 212 235 240 220 220 240 236 211 211 236 228 203 203 228 217 196 204 195 218 227 196 217 192 180 196 180 155 163 163 155 134 136 136 134 111 103 103 111 87 71 71 87 75 49 39 49 43 23 39 23 16 31 31 16 10 26 26 10 15 32 32 15 24 40 40 24 44 50 227 218 223 243 227 243 252 235 235 252 256 240 240 256 251 236 236 251 244 228 228 244 224 217 72 50 76 88 72 88 112 104 104 112 141 144 144 141 156 164 164 156 179 195 195 179 191 218 49 75 67 43 50 44 68 76 218 191 199 223 217 224 200 192 23 43 34 20 23 20 7 16 16 7 2 10 10 2 8 15 15 8 19 24 24 19 36 44 180 192 159 151 180 151 147 155 155 147 133 134 134 133 119 111 111 119 114 87 87 114 106 75 88 76 108 116 88 116 120 112 112 120 137 141 141 137 148 156 156 148 152 179 179 152 160 191 243 223 231 247 243 247 260 252 252 260 264 256 256 264 259 251 251 259 248 244 244 248 232 224 43 67 58 34 75 106 98 67 192 200 167 159 76 68 100 108 44 36 60 68 191 160 168 199 223 199 206 231 224 232 208 200 67 98 90 58 68 60 92 100 200 208 176 167 199 168 175 206 20 34 27 11 20 11 4 7 7 4 0 2 2 0 3 8 8 3 12 19 19 12 28 36 151 159 132 151 132 147 147 132 133 133 132 119 119 132 114 114 132 106 247 231 237 254 247 254 262 260 260 262 265 264 264 265 261 259 259 261 253 248 248 253 238 232 116 108 135 116 135 120 120 135 137 137 135 148 148 135 152 152 135 160 106 132 98 36 28 52 60 34 58 51 27 159 167 132 108 100 135 232 238 214 208 231 206 213 237 160 135 168 98 132 90 58 90 79 51 60 52 80 92 167 176 132 100 92 135 208 214 186 176 168 135 175 206 175 185 213 11 27 33 17 11 17 5 4 4 5 1 0 0 1 6 3 3 6 18 12 12 18 35 28 90 132 79 132 176 186 132 186 174 132 174 166 132 89 79 132 166 158 132 158 149 132 97 89 132 149 145 132 105 97 132 145 130 132 113 105 132 130 117 132 117 113 92 80 135 254 237 229 246 254 246 257 262 262 257 263 265 265 263 258 261 261 258 245 253 253 245 230 238 135 80 91 135 185 175 135 91 99 135 99 107 135 173 185 135 107 115 135 115 118 135 165 173 135 118 131 135 157 165 135 131 146 135 150 157 135 146 150 27 51 57 33 28 35 59 52 238 230 207 214 237 213 205 229 51 79 89 57 52 59 91 80 214 207 174 186 213 185 173 205 17 33 41 21 17 21 13 5 5 13 9 1 1 9 14 6 6 14 22 18 18 22 42 35 174 207 198 166 89 97 65 57 166 198 190 158 158 190 178 149 97 105 73 65 149 178 153 145 105 113 85 73 145 153 127 130 113 117 109 85 130 127 109 117 246 229 221 241 246 241 250 257 257 250 255 263 263 255 249 258 258 249 242 245 245 242 222 230 91 59 66 99 99 66 74 107 173 165 197 205 107 74 86 115 115 86 110 118 165 157 189 197 118 110 129 131 157 150 177 189 131 129 154 146 150 146 154 177 33 57 65 41 35 42 66 59 230 222 198 207 229 205 197 221 21 41 47 37 21 37 29 13 13 29 25 9 9 25 30 14 14 30 38 22 22 38 48 42 41 65 73 47 42 48 74 66 241 221 216 225 241 225 234 250 250 234 239 255 255 239 233 249 249 233 226 242 242 226 215 222 222 215 190 198 221 197 189 216 74 48 70 86 86 70 102 110 189 177 193 216 110 102 128 129 177 154 162 193 129 128 162 154 190 215 194 178 73 85 69 47 178 194 161 153 85 109 101 69 153 161 125 127 109 127 125 101 48 38 62 70 47 69 61 37 216 193 201 225 215 226 202 194 38 30 54 62 37 61 53 29 70 62 93 102 69 101 94 61 193 162 170 201 194 202 169 161 225 201 209 234 226 233 210 202 30 25 45 54 29 53 45 25 102 93 126 128 101 125 123 94 162 128 126 170 161 169 123 125 234 209 219 239 233 239 219 210 62 54 82 93 61 94 81 53 201 170 181 209 202 210 182 169 54 45 77 82 53 81 77 45 93 82 124 126 94 123 122 81 170 126 124 181 169 182 122 123 209 181 187 219 210 219 187 182 82 77 121 124 81 122 121 77 181 124 121 187 182 187 121 122" />
                <uv0 index="85 81 91 94 85 94 95 83 85 83 69 71 85 71 75 81 81 75 76 84 81 84 98 91 91 98 111 110 91 110 105 94 94 105 104 95 95 104 114 102 95 102 78 83 83 78 72 69 69 72 55 60 69 60 64 71 71 64 52 75 75 52 53 76 76 53 61 65 76 65 89 84 84 89 101 98 98 101 107 111 111 107 127 122 111 122 117 110 110 117 124 105 105 124 125 104 104 125 126 114 114 126 128 109 114 109 99 102 102 99 86 78 78 86 70 72 72 70 62 55 60 55 45 42 60 42 40 64 64 40 39 52 52 39 51 53 53 51 48 61 55 62 47 45 61 48 41 54 61 54 66 65 65 66 80 89 89 80 93 101 101 93 116 107 107 116 123 127 122 127 136 130 122 130 142 117 117 142 131 124 124 131 137 125 125 137 138 126 126 138 139 128 45 47 30 26 45 26 37 42 42 37 31 40 40 31 38 39 39 38 28 51 51 28 29 48 109 128 121 115 109 115 103 99 99 103 79 86 86 79 77 70 70 77 63 62 62 63 46 47 127 123 132 136 128 139 134 121 47 46 36 30 48 29 32 41 130 136 151 145 130 145 144 142 142 144 146 131 131 146 155 137 137 155 148 138 138 148 153 139 54 41 44 56 54 56 73 66 66 73 88 80 80 88 92 93 93 92 113 116 116 113 129 123 115 121 120 112 115 112 97 103 103 97 82 79 79 82 68 77 77 68 58 63 63 58 43 46 26 30 19 22 26 22 14 37 37 14 15 31 31 15 16 38 38 16 17 28 28 17 18 29 136 132 147 151 123 129 135 132 41 32 35 44 121 134 141 120 139 153 149 134 46 43 33 36 30 36 21 19 29 18 20 32 132 135 143 147 134 149 150 141 32 20 23 35 36 33 25 21 145 151 160 168 145 168 166 144 144 166 164 146 146 164 162 155 155 162 161 148 148 161 159 153 56 44 49 56 57 73 73 67 88 88 90 92 92 96 113 113 108 129 22 19 9 1 22 1 4 14 14 4 5 15 15 5 6 16 16 6 7 17 17 7 8 18 112 120 106 112 100 97 97 87 82 82 74 68 68 59 58 58 50 43 129 119 135 153 159 156 149 151 147 158 160 44 35 34 120 141 118 18 8 10 20 19 21 11 9 43 27 33 135 133 143 147 143 167 158 149 156 157 150 35 23 13 141 150 140 20 10 12 23 33 24 25 21 25 0 11 168 160 172 180 168 180 177 166 166 177 173 164 164 173 169 162 162 169 181 161 161 181 171 159 143 152 167 3 23 12 300 315 311 297 311 287 165 174 167 275 287 279 265 279 267 179 186 174 259 267 250 183 206 186 241 250 238 203 217 206 226 238 227 215 227 217 150 157 154 318 322 310 301 318 301 302 320 320 302 303 321 321 303 304 317 317 304 306 316 316 306 305 319 163 157 178 2 0 25 176 178 184 191 184 196 309 299 313 197 196 216 219 216 221 298 294 299 223 221 245 278 280 294 244 245 248 260 271 280 249 248 271 160 158 175 172 159 171 170 156 319 305 308 312 322 314 307 310 158 167 174 175 156 170 178 157 312 308 311 315 314 313 299 307 180 172 194 189 180 189 190 177 177 190 192 173 173 192 193 169 169 193 188 181 181 188 187 171 311 308 295 287 174 186 182 175 287 295 274 279 279 274 269 267 186 206 204 182 267 269 257 250 206 217 211 204 250 257 237 238 217 227 225 211 238 237 225 227 301 310 293 291 301 291 290 302 302 290 289 303 303 289 288 304 304 288 286 306 306 286 292 305 178 170 185 184 184 185 202 196 299 294 296 307 196 202 212 216 216 212 222 221 294 280 282 296 221 222 246 245 280 271 264 282 245 246 258 248 271 248 258 264 172 175 182 194 171 187 185 170 305 292 295 308 310 307 296 293 189 194 200 198 189 198 195 190 190 195 205 192 192 205 207 193 193 207 199 188 188 199 201 187 194 182 204 200 187 201 202 185 291 293 276 284 291 284 273 290 290 273 281 289 289 281 283 288 288 283 285 286 286 285 277 292 292 277 274 295 293 296 282 276 202 201 213 212 212 213 228 222 282 264 262 276 222 228 242 246 264 258 252 262 246 242 252 258 274 277 272 269 204 211 214 200 269 272 251 257 211 225 229 214 257 251 243 237 225 237 243 229 201 199 218 213 200 214 220 198 276 262 266 284 277 285 263 272 199 207 210 218 198 220 209 195 213 218 224 228 214 229 233 220 262 252 247 266 272 263 253 251 284 266 270 273 285 283 268 263 207 205 208 210 195 209 208 205 228 224 240 242 229 243 239 233 252 242 240 247 251 253 239 243 273 270 261 281 283 281 261 268 218 210 230 224 220 233 231 209 266 247 254 270 263 268 256 253 210 208 232 230 209 231 232 208 224 230 236 240 233 239 235 231 247 240 236 254 253 256 235 239 270 254 255 261 268 261 255 256 230 232 234 236 231 235 234 232 254 236 234 255 256 255 234 235" />
                <uv1 index="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" />
            </polygons>
            <parentNodes count="2" indices="1 2" />
            <childrenNodes count="1" indices="5" />
        </dMeshNodeInfo>
        <dSceneCacheInfo cacheId="-3320094658024126097">
            <dNodeInfo name="dMaterialCache" />
            <parentNodes count="1" indices="0" />
            <childrenNodes count="1" indices="5" />
        </dSceneCacheInfo>
        <dMaterialNodeInfo id="0">
            <dNodeInfo name="default material" />
            <ambient textureId="-1" color="0.800000 0.800000 0.800000 1.000000" />
            <diffuse textureId="-1" color="0.800000 0.800000 0.800000 1.000000" />
            <specular textureId="-1" color="0.000000 0.000000 0.000000 1.000000" />
            <emissive textureId="-1" color="0.000000 0.000000 0.000000 1.000000" />
            <shininess float="0.000000" />
            <opacity float="1.000000" />
            <parentNodes count="2" indices="4 3" />
        </dMaterialNodeInfo>
    </nodes>
</NewtonGameDynamnics>



EDIT:
I corrected the profile figures, the first figures were for a sphere of 1 metter in radius, whan I make the phsre 0.5 meter the time is large but less than on then of a secunds in all configurations.
the lareg tiem for a snmaller object is nor,a;l because asmalle body has spllaer faces an dteh adjecent use a pass tah aabb of each face by a fix value, so as teh face get small the ration between padding and usef care go largers, and more adjecen faces are visited.
but we are taking of numen that at of teh oredre of 100 or tiem lowe than what you are seeing
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 12:59 pm

here is the NGD file you can save as "sphere.ngd" and load in the demo snad box, please see if this is what you see.


I'm not sure how to load a .ngd file into the sandbox demo. There is no load option in the gui for meshes. Should a try to make a new demo scene to load it from?

-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 1:35 pm

Oh I forget that I commneted out loading ngd temporarilly, I will re enable it tonight.
you can use the the function that load as a mesh level, paste thsi lien on a any demo
CreateLevelMesh (scene, "myMeshName.ngd", true);


then you can set a break point on function,
static NewtonBody* CreateLevelMeshBody (NewtonWorld* const world, DemoEntity* const ent, bool optimization)

file ..\applications\demosSandbox\sdkDemos\toolBox\PhysicsUtils.cpp
line 1022

// measure the time to build a collision tree
timer0 = (dGetTimeInMicrosenconds() - timer0) / 1000;


// Get the root Matrix
dMatrix matrix (ent->CalculateGlobalMatrix(NULL));

time0 is the time in mili Secunds that it took from passing all the the triangle until it build the collision tree mesh.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 2:54 pm

Hmm, the value I get for timer0 after building the tree is 17133. But it sure didn't seem like it took 17 seconds to compute ... it seemed more like less than 1 second.

Now I'm really confused. :)

-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 3:24 pm

did you set the break point on this line

// Get the root Matrix
dMatrix matrix (ent->CalculateGlobalMatrix(NULL));
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: excessive time for building collision tree

Postby Bird » Mon Oct 22, 2012 5:02 pm

Julio Jerez wrote:did you set the break point on this line

// Get the root Matrix
dMatrix matrix (ent->CalculateGlobalMatrix(NULL));;


D'uh!. I'm an idiot I had set break at the top of the CreateLevelMeshBody function and was stepping down through the code until I got to that line. No wonder it took 17 seconds

If I put the break at dMatrix matrix (ent->CalculateGlobalMatrix(NULL)), then timer0 = 290 milliseconds which makes a lot more sense.

I'll look more closely on my end again and see If I can find a problem. Another strange thing I'm experiencing is that when I make scenes to test the new Continuous Collision, some of the scenes are failing in my LW plugin but when I export/import into the Sandbox demo, they work fine.

-Bird
Bird
 
Posts: 636
Joined: Tue Nov 22, 2011 1:27 am

Re: excessive time for building collision tree

Postby Julio Jerez » Mon Oct 22, 2012 5:19 pm

Bird wrote:Another strange thing I'm experiencing is that when I make scenes to test the new Continuous Collision, some of the scenes are failing in my LW plugin but when I export/import into the Sandbox demo, they work fine.


does the lighwave scene works if CCD if off, in lighwave.
I may be that the serilized data is not saving teh CCD flag and the scen in running with CCD off.
can you send me a serialized scene from lighwave with CCD? not too big so that It is eassy to debug
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Next

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 0 guests

cron