Blender Git Commits

Blender Git "particles_refactor" branch commits.

Page: 4 / 7

April 22, 2014, 09:23 (GMT)
A bit shorter internal names for bparticles structs and functions.
April 22, 2014, 09:23 (GMT)
Added particles sequence in state bpy api.
April 22, 2014, 09:23 (GMT)
Added 'attributes' sequence property in the state type.
April 22, 2014, 09:23 (GMT)
Custom get/set methods for the "Particle" type. This supports particle
attributes directly as python properties in the particle wrapper type.
If a particle identifier has no corresponding data in the state yet it
will be automatically created when writing.
April 22, 2014, 09:23 (GMT)
Added "name" property (read-only) for attribute states.
April 22, 2014, 09:23 (GMT)
Added new python module 'bparticles' for implementing a full python API
to define particle states. This is necessary because otherwise the RNA
can only refer to data that already exists in the DNA library (bpy.data)
but not create temporary structs. The state should be defined separately
before replacing a particle system's state with it. This is similar to
how bmesh works.
April 22, 2014, 09:23 (GMT)
Basic submodule 'types' in bparticles, defining a PyObject type for
the particle state.
April 22, 2014, 09:23 (GMT)
Added python type for particle attribute state in the bparticles module.
April 22, 2014, 09:23 (GMT)
Flags for particle attributes:

- REQUIRED: These attributes are always existent in every particle
system. Currently this is only the "id" layer, position might also
be added
- PROTECTED: Attribute name, datatype, etc. can not be changed. Only
user-defined attributes can be modified this way.
April 22, 2014, 09:23 (GMT)
Clear the attribute buffers when adding new particles to a state. This
should probably use a specific default value for each attribute at some
point.
April 22, 2014, 09:23 (GMT)
Initialize the "id" attribute when adding particles to the state.
April 22, 2014, 09:23 (GMT)
RNA fix: using RNA_def_struct_sdna_from works only with actual pointers,
but not with directly nested structs (NParticleAttributeDescription in
this case). Resort to including "desc." prefix in the property paths.
April 22, 2014, 09:23 (GMT)
Use a readonly flag for attributes and a second variant of the Data
RNA access types to prevent writing over immutable attributes ("id" in
particular).
April 22, 2014, 09:23 (GMT)
Add position attribute to particles by default.
April 22, 2014, 09:23 (GMT)
Basic display feature for particles. This is organized as a list of
NParticleDisplay in the modifier for now. Each NParticleDisplay adds
a visualization element of some type in the viewport, which will allow
combining elements for custom attributes with standard display modes
for particles.
April 22, 2014, 09:23 (GMT)
Use the new attribute flags to determine editability in RNA.
April 22, 2014, 09:23 (GMT)
Added missing read/write code for particle display.
April 22, 2014, 09:23 (GMT)
Alternative particle iterator init method using a specific particle ID.
April 22, 2014, 09:23 (GMT)
Store the particle state in iterators instead of the particle system.
April 22, 2014, 09:23 (GMT)
Yet another restructuring effort: Separate the state from the particle
system settings. Attributes can be accessed by name in the state data,
for now this uses plain linear search in a NULL-terminated array, but
can eventually use a hash table for O(1) lookup.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021