Giter Club home page Giter Club logo

Comments (5)

stephengold avatar stephengold commented on June 14, 2024

After removing the -XX:+UseG1GC runtime option, the stack trace becomes:

Current thread (0x00007f7275188800):  JavaThread "jME3 Main" [_thread_in_native, id=48997, stack(0x00007f7244e91000,0x00007f7244f92000)]

Stack: [0x00007f7244e91000,0x00007f7244f92000],  sp=0x00007f7244f8ec98,  free space=1015k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libbulletjme.so+0x10b9e1]  Java_com_jme3_bullet_collision_PhysicsCollisionObject_findInstance+0x11
j  com.jme3.bullet.collision.PhysicsCollisionObject.cloneIgnoreList(Lcom/jme3/util/clone/Cloner;Lcom/jme3/bullet/collision/PhysicsCollisionObject;)V+32
j  com.jme3.bullet.objects.PhysicsRigidBody.cloneFields(Lcom/jme3/util/clone/Cloner;Ljava/lang/Object;)V+18
J 4152 c2 com.jme3.util.clone.Cloner.clone(Ljava/lang/Object;Z)Ljava/lang/Object; (615 bytes) @ 0x00007f72640ed56c [0x00007f72640ecb00+0x0000000000000a6c]
J 4008 c2 com.jme3.util.clone.Cloner.clone(Ljava/lang/Object;)Ljava/lang/Object; (7 bytes) @ 0x00007f72640c6c58 [0x00007f72640c6c20+0x0000000000000038]
j  maud.model.cgm.CgmPhysics.cloneFields(Lcom/jme3/util/clone/Cloner;Ljava/lang/Object;)V+69
J 4152 c2 com.jme3.util.clone.Cloner.clone(Ljava/lang/Object;Z)Ljava/lang/Object; (615 bytes) @ 0x00007f72640ed56c [0x00007f72640ecb00+0x0000000000000a6c]
J 4008 c2 com.jme3.util.clone.Cloner.clone(Ljava/lang/Object;)Ljava/lang/Object; (7 bytes) @ 0x00007f72640c6c58 [0x00007f72640c6c20+0x0000000000000038]
j  maud.model.cgm.Cgm.clone()Lmaud/model/cgm/Cgm;+22
j  maud.model.cgm.LoadedCgm.clone()Lmaud/model/cgm/LoadedCgm;+1
j  maud.model.cgm.EditableCgm.clone()Lmaud/model/cgm/EditableCgm;+1
j  maud.model.EditorModel.<init>(Lmaud/model/EditorModel;)V+20
j  maud.model.Checkpoint.<init>(Ljava/util/List;)V+29
j  maud.model.History.addCheckpoint()I+67
j  maud.model.History.autoAdd()V+6
j  maud.model.cgm.EditableCgm.linkBone(Ljava/lang/String;)Z+17

from maud.

stephengold avatar stephengold commented on June 14, 2024

I re-tested using the "Minie-5.0.0+debug" library and got the following console output:

> Task :run
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.jme3.util.ReflectionAllocator (file:/home/sgold/.gradle/caches/modules-2/files-2.1/org.jmonkeyengine/jme3-core/3.5.2-stable/fe2b20c9d088d1d2bcbe08abba9311df2f2dee7a/jme3-core-3.5.2-stable.jar) to method sun.nio.ch.DirectBuffer.cleaner()
WARNING: Please consider reporting this to the maintainers of com.jme3.util.ReflectionAllocator
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
warning btCollisionDispatcher::needsCollision: static-static collision!
Jul 13, 2022 1:05:29 PM jme3utilities.nifty.BasicScreenController perform
SEVERE: Caught unexpected throwable:
java.lang.NullPointerException: The PhysicsCollisionObject does not exist.
	at com.jme3.bullet.collision.PhysicsCollisionObject.findInstance(Native Method)
	at com.jme3.bullet.collision.PhysicsCollisionObject.cloneIgnoreList(PhysicsCollisionObject.java:1249)
	at com.jme3.bullet.objects.PhysicsRigidBody.cloneFields(PhysicsRigidBody.java:1161)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.bullet.joints.PhysicsJoint.cloneFields(PhysicsJoint.java:276)
	at com.jme3.bullet.joints.Constraint.cloneFields(Constraint.java:481)
	at com.jme3.bullet.joints.SixDofJoint.cloneFields(SixDofJoint.java:494)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.bullet.animation.PhysicsLink.cloneFields(PhysicsLink.java:677)
	at com.jme3.bullet.animation.BoneLink.cloneFields(BoneLink.java:473)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.util.clone.ListCloneFunction.cloneFields(ListCloneFunction.java:68)
	at com.jme3.util.clone.ListCloneFunction.cloneFields(ListCloneFunction.java:43)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:242)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.bullet.animation.DacLinks.cloneFields(DacLinks.java:722)
	at com.jme3.bullet.animation.DynamicAnimControl.cloneFields(DynamicAnimControl.java:897)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.bullet.animation.PhysicsLink.cloneFields(PhysicsLink.java:674)
	at com.jme3.bullet.animation.BoneLink.cloneFields(BoneLink.java:473)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at com.jme3.bullet.collision.PhysicsCollisionObject.cloneFields(PhysicsCollisionObject.java:1398)
	at com.jme3.bullet.objects.PhysicsRigidBody.cloneFields(PhysicsRigidBody.java:1157)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at maud.model.cgm.CgmPhysics.cloneFields(CgmPhysics.java:642)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:269)
	at com.jme3.util.clone.Cloner.clone(Cloner.java:168)
	at maud.model.cgm.Cgm.clone(Cgm.java:1255)
	at maud.model.cgm.LoadedCgm.clone(LoadedCgm.java:346)
	at maud.model.cgm.EditableCgm.clone(EditableCgm.java:1765)
	at maud.model.EditorModel.<init>(EditorModel.java:148)
	at maud.model.Checkpoint.<init>(Checkpoint.java:78)
	at maud.model.History.addCheckpoint(History.java:98)
	at maud.model.History.autoAdd(History.java:132)
	at maud.model.cgm.EditableCgm.linkBone(EditableCgm.java:722)
	at maud.model.cgm.SelectedLink.createBoneLink(SelectedLink.java:194)
	at maud.action.NewAction.process(NewAction.java:115)
	at maud.action.EditorInputMode.onAction(EditorInputMode.java:180)
	at jme3utilities.nifty.BasicScreenController.perform(BasicScreenController.java:267)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at de.lessvoid.nifty.NiftyMethodInvoker.callMethod(NiftyMethodInvoker.java:157)

from maud.

stephengold avatar stephengold commented on June 14, 2024

Perhaps there should be a check in listIgnoredIds() to make sure all the ids returned by getObjectWithoutCollision() are non-zero.

from maud.

stephengold avatar stephengold commented on June 14, 2024

Upgrading Minie to v5.0.1 appears to solve this issue. Perhaps it had to do with ignore lists becoming garbled during a rigid-body rebuild.

I'll keep this issue open until I'm more confident.

from maud.

stephengold avatar stephengold commented on June 14, 2024

I can't reproduce this with top-of-tree, so I believe it's solved.

from maud.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.