Page MenuHome

simulation in new scene causes crash in original scene's simulation
Confirmed, NormalPublicBUG

Description

System Information
Operating system: Windows-7-6.1.7601-SP1 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 442.19

Blender Version
Broken: version: 2.83 (sub 6), branch: master, commit date: 2020-03-07 10:54, hash: rB82130bf35ce5
Worked: (optional)

steps

  • make cube an active rigid body.
  • play simulation
  • then click on new scene button and on full copy.
  • in the new scene, rewind playhead to frame 0
  • run the simulation.

Blender should crash.

There are more ways to cause crash when full scene copy is done (see comments), but I guess these will stem from single issue.

Event Timeline

sry forgot file.

now i lost this blender file T_T

just found out that the objects cant be in same place or its exploding . its like the there "ghost" objects that causing intersection... or so

Ankit (ankitm) changed the task status from Needs Triage to Needs Information from User.Mon, Mar 9, 1:30 PM
Ankit (ankitm) added a subscriber: Ankit (ankitm).

hi! Could you please clarify the steps, to redo the bug reliably ?

make cube rigid body active. then click on new scene button and on full copy. in the new copy run the simulation. then see. and then switch back to original scene and run simulation again = crash

Ankit (ankitm) renamed this task from new scene full copy makes rigid body + constrints bugged + crashd to simulation in new scene causes crash in original scene's simulation.Mon, Mar 9, 3:50 PM
Ankit (ankitm) changed the task status from Needs Information from User to Needs Triage.
Ankit (ankitm) updated the task description. (Show Details)
Richard Antalik (ISS) changed the task status from Needs Triage to Needs Information from User.EditedTue, Mar 10, 4:57 PM

@wueo (mushroomeo) do you experience crash as soon as you play aninmation?

I can only confirm crash when quitting Blender.
Critical steps seem to be only full scene copy after enabling rigidbody, then play animation and quit Blender


With file above, I got this backtrace:

	blender.exe!btRigidBody::removeConstraintRef(btTypedConstraint * c) Řádek 458	C++
 	blender.exe!btDiscreteDynamicsWorld::removeConstraint(btTypedConstraint * constraint) Řádek 674	C++
 	blender.exe!BKE_rigidbody_free_world(Scene * scene) Řádek 122	C
 	blender.exe!scene_free_data(ID * id) Řádek 419	C
 	blender.exe!BKE_id_free_ex(Main * bmain, void * idv, int flag, const bool use_flag_from_idtag) Řádek 321	C
 	blender.exe!BKE_main_free(Main * mainvar) Řádek 74	C
 	blender.exe!BKE_blender_free() Řádek 84	C
 	blender.exe!WM_exit_ex(bContext * C, const bool do_python) Řádek 585	C
 	blender.exe!WM_exit(bContext * C) Řádek 680	C
 	blender.exe!wm_exit_handler(bContext * C, const wmEvent * event, void * userdata) Řádek 452	C
 	blender.exe!wm_handler_ui_call(bContext * C, wmEventHandler_UI * handler, const wmEvent * event, int always_pass) Řádek 620	C
 	blender.exe!wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Řádek 2562	C
 	blender.exe!wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Řádek 2809	C
 	blender.exe!wm_event_do_handlers(bContext * C) Řádek 3189	C
 	blender.exe!WM_main(bContext * C) Řádek 421	C
 	blender.exe!main(int argc, const unsigned char * * UNUSED_argv_c) Řádek 524	C

And with steps

  • make cube rigid body active.
  • then click on new scene button and on full copy.
  • in the new copy run the simulation. then see.
  • and then switch back to original scene and run simulation again = crash

This backtrace:

Can not access memory of proxy

	blender.exe!btDbvtBroadphase::destroyProxy(btBroadphaseProxy * absproxy, btDispatcher * dispatcher) Řádek 200	C++
 	blender.exe!btCollisionWorld::~btCollisionWorld() Řádek 94	C++
 	[Externí kód]	
 	blender.exe!RB_dworld_delete(rbDynamicsWorld * world) Řádek 168	C++
 	blender.exe!BKE_rigidbody_free_world(Scene * scene) Řádek 140	C
 	blender.exe!scene_free_data(ID * id) Řádek 419	C
 	blender.exe!BKE_id_free_ex(Main * bmain, void * idv, int flag, const bool use_flag_from_idtag) Řádek 321	C
 	blender.exe!BKE_main_free(Main * mainvar) Řádek 74	C
 	blender.exe!BKE_blender_free() Řádek 84	C
 	blender.exe!WM_exit_ex(bContext * C, const bool do_python) Řádek 585	C
 	blender.exe!WM_exit(bContext * C) Řádek 680	C
 	blender.exe!wm_exit_handler(bContext * C, const wmEvent * event, void * userdata) Řádek 452	C
 	blender.exe!wm_handler_ui_call(bContext * C, wmEventHandler_UI * handler, const wmEvent * event, int always_pass) Řádek 620	C
 	blender.exe!wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Řádek 2562	C
 	blender.exe!wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Řádek 2809	C
 	blender.exe!wm_event_do_handlers(bContext * C) Řádek 3189	C
 	blender.exe!WM_main(bContext * C) Řádek 421	C
 	blender.exe!main(int argc, const unsigned char * * UNUSED_argv_c) Řádek 524	C

tryed again latest 2.83 just now

so i started blender and made cube rigid body active. and new scene full copy then i got crash as soon i played animation.

second try it didnt crash but the object colided with invisibe object on new scene as soon i play animation.

found out that if i make rigid body with mesh collision shape, then then new scene full copy then it crashes much more frequent.

tryed this many times and cant figure it out to make it crash everytime

but if i place object above the original place then it fall through and dont collide so is very weird.

tryed again latest 2.83 just now
so i started blender and made cube rigid body active. and new scene full copy then i got crash as soon i played animation.

I suppose you played animation in first scene, before you made full copy, correct?

That would be yet another stacktrace:
parent was NULL

	blender.exe!removeleaf(btDbvt * pdbvt, btDbvtNode * leaf) Řádek 185	C++
 	blender.exe!btDbvt::remove(btDbvtNode * leaf) Řádek 560	C++
 	blender.exe!btDbvtBroadphase::destroyProxy(btBroadphaseProxy * absproxy, btDispatcher * dispatcher) Řádek 200	C++
 	blender.exe!btCollisionWorld::removeCollisionObject(btCollisionObject * collisionObject) Řádek 251	C++
 	blender.exe!btDiscreteDynamicsWorld::removeRigidBody(btRigidBody * body) Řádek 560	C++
 	blender.exe!RB_dworld_remove_body(rbDynamicsWorld * world, rbRigidBody * object) Řádek 260	C++
 	blender.exe!rigidbody_validate_sim_object(RigidBodyWorld * rbw, Object * ob, bool rebuild) Řádek 759	C
 	blender.exe!rigidbody_update_simulation(Depsgraph * depsgraph, Scene * scene, RigidBodyWorld * rbw, bool rebuild) Řádek 1744	C
 	blender.exe!BKE_rigidbody_rebuild_world(Depsgraph * depsgraph, Scene * scene, float ctime) Řádek 1972	C
 	blender.exe!BKE_rigidbody_rebuild_sim(Depsgraph * depsgraph, Scene * scene) Řádek 2170	C
 	[Externí kód]	
 	blender.exe!DEG::`anonymous namespace'::evaluate_node(const DEG::`anonymous-namespace'::DepsgraphEvalState * state, DEG::OperationNode * operation_node) Řádek 117	C++
 	blender.exe!DEG::`anonymous namespace'::deg_task_run_func(TaskPool * pool, void * taskdata, int thread_id) Řádek 129	C++
 	blender.exe!task_scheduler_thread_run(void * thread_p) Řádek 451	C
Richard Antalik (ISS) changed the task status from Needs Information from User to Confirmed.Tue, Mar 10, 9:44 PM
Richard Antalik (ISS) updated the task description. (Show Details)

i tryed it again and no it does not matter if i play animation first and then new scene full copy, its crashing

@Richard Antalik (ISS), can you still reproduce it? For some reason I don't get a crash on Linux and Windows when I follow the steps in the default scene.

@Richard Antalik (ISS), can you still reproduce it? For some reason I don't get a crash on Linux and Windows when I follow the steps in the default scene.

Yes. I have updated steps to reproduce
Should crash everywhere - it's nullptr access

Jacques Lucke (JacquesLucke) changed the subtype of this task from "Report" to "Bug".Thu, Apr 2, 5:37 PM