[Bf-codereview] Particle storage in cycles, bugfix #32184 (issue 6446114)

lukas.toenne at gmail.com lukas.toenne at gmail.com
Fri Aug 10 15:13:04 CEST 2012


Reviewers: bf-codereview_blender.org, brechtvl,

Description:
This is a bit of redesign made necessary to fix this bug

http://projects.blender.org/tracker/index.php?func=detail&aid=32184&group_id=9&atid=498

The particle data used by the Particle Info node was stored in cycles as
a list in each object. This is a problem when the particle emitter mesh
is hidden: Objects in cycles are only intended as instances of
renderable meshes, so when hiding the emitter mesh the particle data
doesn't get stored either. Also the particle data can potentially be
copied to multiple instances of the same object, which is a waste of
texture space.

The solution in this patch is to make a completely separate list of
particle systems in the Cycles scene data. This way the particle data
can be generated even when the emitter object itself is not visible.


Please review this at http://codereview.appspot.com/6446114/

Affected files:
   intern/cycles/blender/blender_object.cpp
   intern/cycles/blender/blender_particles.cpp
   intern/cycles/blender/blender_sync.cpp
   intern/cycles/blender/blender_sync.h
   intern/cycles/blender/blender_util.h
   intern/cycles/render/CMakeLists.txt
   intern/cycles/render/object.cpp
   intern/cycles/render/object.h
   intern/cycles/render/particles.cpp
   intern/cycles/render/particles.h
   intern/cycles/render/scene.cpp
   intern/cycles/render/scene.h




More information about the Bf-codereview mailing list