Page MenuHome

Cycles render segfault when Explode modifier before hair particle modifier + UV material
Closed, ResolvedPublic

Description

Dev-Note: see simplified file, crash backtrace and how to reproduce this in @Dalai Felinto (dfelinto)'s replies below.

System Information
Windows 8.1 64-bit, gtx970, intel core i5-4570

Blender Version
Broken: 2.78a
Worked: 2.76b

Render Cycles. Click render. Start Synchronizing object. 3 sec and Blender crash. EXCEPTION_ACCESS_VIOLATION

Animate skined mesh. At some point triggered Explode modifier. Further cloth simulation.
Further particle system hair. One system hair dynamics. When rendering start Blender crash.
Render worked in blender internal render and blender 2.74.
My English bad. Just watch the video https://youtu.be/mdlaY8SMa9s

Event Timeline

Yuriy (Faraday) updated the task description. (Show Details)

We need a sample file as simple as possible that we can use to reproduce this

Yuriy (Faraday) added a comment.EditedJan 27 2017, 10:31 AM

sample I think the problem is in the Exploid modifire.

Dalai Felinto (dfelinto) triaged this task as Confirmed, Medium priority.EditedJan 27 2017, 11:10 AM

Confirmed in master: (just blender -b file.blend -f 1):

==16146==ERROR: AddressSanitizer: SEGV on unknown address 0x0000000000c0 (pc 0x56419d395068 bp 0x7fff9913f300 sp 0x7fff9913f2c0 T0)
    #0 0x56419d395067 in psys_interpolate_uvs /home/guest/src/blender/blender/source/blender/blenkernel/intern/particle.c:1328
    #1 0x56419d91594c in rna_ParticleSystem_uv_on_emitter /home/guest/src/blender/blender/source/blender/makesrna/intern/rna_particle.c:543
    #2 0x56419d937a6f in ParticleSystem_uv_on_emitter /home/guest/src/blender/release/master/source/blender/makesrna/intern/rna_particle_gen.c:5362
    #3 0x56419e0362aa in BL::ParticleSystem::uv_on_emitter(BL::ParticleSystemModifier&, BL::Particle&, int, int, float*) /home/guest/src/blender/release/master/source/blender/makesrna/intern/RNA_blender_cpp.h:50425
    #4 0x56419e023c42 in ObtainCacheParticleUV /home/guest/src/blender/blender/intern/cycles/blender/blender_curves.cpp:256
    #5 0x56419e034e9a in ccl::BlenderSync::sync_curves(ccl::Mesh*, BL::Mesh&, BL::Object&, bool, int) /home/guest/src/blender/blender/intern/cycles/blender/blender_curves.cpp:1025
    #6 0x56419e068da2 in ccl::BlenderSync::sync_mesh(BL::Object&, bool, bool) /home/guest/src/blender/blender/intern/cycles/blender/blender_mesh.cpp:957
    #7 0x56419dff6849 in ccl::BlenderSync::sync_object(BL::Object&, int*, BL::DupliObject&, ccl::Transform&, unsigned int, float, bool, ccl::BlenderObjectCulling&, bool*) /home/guest/src/blender/blender/intern/cycles/blender/blender_object.cpp:314
    #8 0x56419dff95ce in ccl::BlenderSync::sync_objects(BL::SpaceView3D&, float) /home/guest/src/blender/blender/intern/cycles/blender/blender_object.cpp:595
    #9 0x56419dfc9ce3 in ccl::BlenderSync::sync_data(BL::RenderSettings&, BL::SpaceView3D&, BL::Object&, int, int, void**, char const*) /home/guest/src/blender/blender/intern/cycles/blender/blender_sync.cpp:213
    #10 0x56419dfaf55e in ccl::BlenderSession::render() /home/guest/src/blender/blender/intern/cycles/blender/blender_session.cpp:521
    #11 0x56419dfa3cc5 in render_func /home/guest/src/blender/blender/intern/cycles/blender/blender_python.cpp:282
    #12 0x7f5f07d827ee in PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a27ee)
    #13 0x7f5f07d825bc in PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a25bc)
    #14 0x7f5f07e43f23  (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x263f23)
    #15 0x7f5f07e44002 in PyEval_EvalCodeEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264002)
    #16 0x7f5f07cd7537  (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0xf7537)
    #17 0x7f5f07db3946 in PyObject_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d3946)
    #18 0x56419c34a560 in bpy_class_call /home/guest/src/blender/blender/source/blender/python/intern/bpy_rna.c:7603
    #19 0x56419d9460e3 in engine_render /home/guest/src/blender/blender/source/blender/makesrna/intern/rna_render.c:179
    #20 0x56419c16718e in RE_engine_render /home/guest/src/blender/blender/source/blender/render/intern/source/external_engine.c:720
    #21 0x56419c1aee82 in do_render_3d /home/guest/src/blender/blender/source/blender/render/intern/source/pipeline.c:1515
    #22 0x56419c1b25de in do_render_fields_blur_3d /home/guest/src/blender/blender/source/blender/render/intern/source/pipeline.c:1902
    #23 0x56419c1b79dc in do_render_composite_fields_blur_3d /home/guest/src/blender/blender/source/blender/render/intern/source/pipeline.c:2537
    #24 0x56419c1b9d96 in do_render_all_options /home/guest/src/blender/blender/source/blender/render/intern/source/pipeline.c:2807
    #25 0x56419c1c0478 in RE_BlenderAnim /home/guest/src/blender/blender/source/blender/render/intern/source/pipeline.c:3732
    #26 0x56419b1a4ca9 in arg_handle_render_frame /home/guest/src/blender/blender/source/creator/creator_args.c:1378
    #27 0x56419db5ed07 in BLI_argsParse /home/guest/src/blender/blender/source/blender/blenlib/intern/BLI_args.c:282
    #28 0x56419b1a7dee in main_args_setup_post /home/guest/src/blender/blender/source/creator/creator_args.c:1902
    #29 0x56419b1a0b7a in main /home/guest/src/blender/blender/source/creator/creator.c:471
    #30 0x7f5eff57e2b0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b0)
    #31 0x56419b1a0349 in _start (/home/guest/src/blender/release/master/bin/blender+0x16b6349)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/guest/src/blender/blender/source/blender/blenkernel/intern/particle.c:1328 in psys_interpolate_uvs
==16146==ABORTING

How to reproduce this from a new file:

  1. Remove all objects but the camera
  2. Add a plane
  3. Add a UV Map to the plane
  4. Add a Cycles material to it, with a UVMap node (e.g., UVMap > Diffuse > Output)
  5. Add a particle system to it, make it Hair
  6. Add an Explode modifier
  7. Move the Explode modifier above the (automatically-created) ParticleSettings modifier
  8. Render !

Or just take this file and render it:

Dalai Felinto (dfelinto) renamed this task from EXCEPTION_ACCESS_VIOLATION to Cycles render segfault when Explode modifier before hair particle modifier + UV material.