Blender Git Loki

Blender Git "particles_refactor" branch commits.

Page: 2 / 7

April 22, 2014, 09:23 (GMT)
Automatically set the object transflag for nparticle duplis, like
current particles (but actual code is in nparticle to stay out of object
code as much as possible).
April 22, 2014, 09:23 (GMT)
Removed old unused nparticle modifier code.
April 22, 2014, 09:23 (GMT)
Moved the particle display list from the modifier into the psys itself.
This makes the modifier more easily replaceable later on and allows
more detailed management of the particle object settings (in particular
dupli flags).
April 22, 2014, 09:23 (GMT)
Single display 'add' function, is easier to provide as API method.
April 22, 2014, 09:23 (GMT)
Particle display type for duplis.
April 22, 2014, 09:23 (GMT)
Only call the 'validate' function for particles once, to prevent them
from being removed and added back to the world continuously, which
resets the motion state each time. Also set the USED flag outside of
validate since this is not executed every step and would otherwise
delete all existing particles.
April 22, 2014, 09:23 (GMT)
Added new bparticles function for copying the current particle state
instead of just creating a new empty state. Also clear the py_handle
when copying the state, otherwise the PyObject is invalid.
April 22, 2014, 09:23 (GMT)
Set some usable default values for a number of particle rigid body
settings.
April 22, 2014, 09:23 (GMT)
Very basic sync method for particles, which copies the state and
updates the particle positions from rigid bodies.
April 22, 2014, 09:23 (GMT)
Cleanup: Separated object and constraint build loops into own functions.
Renamed some more API methods to follow the new naming scheme.

Conflicts:
source/blender/blenkernel/intern/rigidbody.c
April 22, 2014, 09:23 (GMT)
Cleanup: Renamed a number of internal rigidbody functions to clarify
the procedure:

world_build: create rbRigidBody instances for stuff in Scene
validate_*: ensure a rbRigidBody exists for an Object/particle/etc.
sync_*: define Bullet settings for an Object/particle/etc. based
on Blender Scene data
world_apply: copy back data from Bullet after a step to the Blender
Scene data

Conflicts:
source/blender/blenkernel/intern/rigidbody.c
April 22, 2014, 09:23 (GMT)
Some missing stddef.h includes for NULL.
April 22, 2014, 09:23 (GMT)
Added inline comment about possible memory management optimization.
April 22, 2014, 09:23 (GMT)
Removed rigidbody build/apply functions from NParticle API. It's better
to keep this functionality inside RigidBody blenkernel for now.
April 22, 2014, 09:23 (GMT)
Fix potential issue from early exit when no constraints exist.
April 22, 2014, 09:23 (GMT)
Cleanup: Separate function for details of the object 'apply' method.
April 22, 2014, 09:23 (GMT)
Fix for RigidBodyWorld reading: initialize empty body mempool when
reading blend files, this is not actually stored.
April 22, 2014, 09:23 (GMT)
Fix for rigid body removal methods: Flag new rigid bodies for particles
as used to prevent freeing. Also remove bodies if they already exist,
to prevent double adding and subsequent assert failure.

Conflicts:
source/blender/blenkernel/intern/rigidbody.c
April 22, 2014, 09:23 (GMT)
Use the rigidbody_world_free_bodies function for freeing bodies when
destroying the world, instead of looping over the object group. This is
in line with the memory ownership being at the RigidBodyWorld now
instead of the individual Objects and will ensure all RBs get destroyed
properly when using particles etc. later.
April 22, 2014, 09:23 (GMT)
Shortcut variable for rbRigidBody, avoids repetitive rbo->physics_object
access.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021