Crash with compound collisions of convex hulls

Report any bugs here and we'll post fixes

Moderators: Sascha Willems, Thomas

Crash with compound collisions of convex hulls

Postby carli2 » Fri May 18, 2012 10:10 am

Hi,

The following occurs after digging a while in the gwX-Landscape (which is basically a compound collision of hulls and digging means removing the compounds and hulls and building them again)
Code: Select all
gwX.engine: ../../source/physics/dgCollisionConvex.cpp:1840: virtual dgInt32 dgCollisionConvex::CalculatePlaneIntersection(const dgVector&, const dgVector&, dgVector*) const: Assertion `maxCount < 512' failed.
carli2
 
Posts: 157
Joined: Thu Nov 10, 2011 1:53 pm

Re: Crash with compound collisions of convex hulls

Postby Julio Jerez » Fri May 18, 2012 10:15 am

you need to move to core 300.

core 300 has unlimited compound subshapes
Julio Jerez
Moderator
Moderator
 
Posts: 12249
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: Crash with compound collisions of convex hulls

Postby carli2 » Sat May 19, 2012 12:12 pm

Julio Jerez wrote:you need to move to core 300.

core 300 has unlimited compound subshapes


Is core300 API compatible to latest Core200?
Some people already tested to just replace the dll on windows, but it "did not work"

core300 compiled for linux, but I got:
Code: Select all
Program received signal SIGILL, Illegal instruction.
0x00007ffff6520b52 in dgPolyhedraMassProperties::AddCGFace(int, dgVector const*) () from src/libNewton.so
(gdb) backtrace
#0  0x00007ffff6520b52 in dgPolyhedraMassProperties::AddCGFace(int, dgVector const*) () from src/libNewton.so
#1  0x00007ffff6573519 in dgCollisionConvex::SetVolumeAndCG() ()
   from src/libNewton.so
#2  0x00007ffff65b4194 in dgCollisionSphere::Init(float, dgMemoryAllocator*) ()
   from src/libNewton.so
#3  0x00007ffff65b4703 in dgCollisionSphere::dgCollisionSphere(dgMemoryAllocator*, unsigned int, float) () from src/libNewton.so
#4  0x00007ffff6623798 in dgWorld::dgWorld(dgMemoryAllocator*) ()
   from src/libNewton.so
#5  0x00007ffff664f0fb in Newton::Newton(float, dgMemoryAllocator*) ()
   from src/libNewton.so
#6  0x00007ffff66439e6 in NewtonCreate () from src/libNewton.so
#7  0x00000000005dbce5 in CREATENEWTONWORLD () at physicscript.pas:137
#8  0x00000000004ff49c in INIT (this=0x7ffff7ff05e0) at gameengine.pas:590
#9  0x000000000050044a in CREATE (this=0x30, AOWNER=0x7ffff7ff05e0,
    _SCENE=0x8f2, XLOGIC=0x7ffff7ff05e0, vmt=0x825db8) at gameengine.pas:725
#10 0x00000000004e5ab9 in SETGAME (this=0x7ffff7ff05e0, SCENE=0xbe3504f3,
    XLOGIC=0xbe3504f3) at ginterface.pas:306
#11 0x00007ffff7f61a80 in ?? ()
#12 0x00007fffeff81040 in ?? ()
---Type <return> to continue, or q <return> to quit---disassemble
#13 0x00007ffff7e03040 in ?? ()
#14 0x00007fff00000001 in ?? ()
#15 0x00007fffffffdab0 in ?? ()
#16 0x000000000058a658 in EXECUTE (this=0x7ffff7ff05e0,
    S=0x7ffff7f6e550 "start") at mainmenu.pas:164
#17 0x000000000051cf8b in EXECUTECLICK (PARENT=0x7ffff7ff05e0) at htsl.pas:312
#18 0x00000000004e736b in STEP (this=0x7ffff7ff05e0) at ginterface.pas:693
#19 0x00007fffffffdb70 in ?? ()
#20 0x00007ffff7ffba1b in gettimeofday ()
#21 0x000000000046a25d in main () at gwx.lpr:146
(gdb) disassemble
Dump of assembler code for function _ZN25dgPolyhedraMassProperties9AddCGFaceEiPK8dgVector:
   0x00007ffff6520730 <+0>:   sub    $0x270,%rsp
   0x00007ffff6520737 <+7>:   mov    0x10(%rdx),%eax
   0x00007ffff652073a <+10>:   cmp    $0x2,%esi
   0x00007ffff652073d <+13>:   mov    %eax,-0x3c(%rsp)
   0x00007ffff6520741 <+17>:   mov    0x14(%rdx),%eax
   0x00007ffff6520744 <+20>:   mov    %eax,-0x48(%rsp)
   0x00007ffff6520748 <+24>:   mov    0x18(%rdx),%eax
   0x00007ffff652074b <+27>:   mov    %eax,-0x50(%rsp)
   0x00007ffff652074f <+31>:   jle    0x7ffff6520b76 <_ZN25dgPolyhedraMassProperties9AddCGFaceEiPK8dgVector+1094>
   0x00007ffff6520755 <+37>:   mov    (%rdx),%eax
   0x00007ffff6520757 <+39>:   sub    $0x3,%esi
   0x00007ffff652075a <+42>:   add    $0x3,%rsi
   0x00007ffff652075e <+46>:   shl    $0x4,%rsi
   0x00007ffff6520762 <+50>:   mov    %eax,0x1a0(%rsp)
   0x00007ffff6520769 <+57>:   mov    0x4(%rdx),%eax
   0x00007ffff652076c <+60>:   movss  0x1a0(%rsp),%xmm0
   0x00007ffff6520775 <+69>:   mulss  %xmm0,%xmm0
   0x00007ffff6520779 <+73>:   mov    %eax,0x1a4(%rsp)
carli2
 
Posts: 157
Joined: Thu Nov 10, 2011 1:53 pm


Return to Bugs and Fixes

Who is online

Users browsing this forum: No registered users and 12 guests

cron