Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Lucke <jacques@blender.org>2020-07-09 16:40:27 +0300
committerJacques Lucke <jacques@blender.org>2020-07-09 16:40:27 +0300
commit580d50091cfb0467cbde165058a6e78ef4898045 (patch)
treef123808f3397df3a273f991e9e3239e603d68ce0 /source/blender/makesdna/DNA_simulation_types.h
parent31ad43a3c7dde771cb6d92b6d20bf7b2e3f2bed6 (diff)
Particles: Create a simulation state for every Particle Simulation node
Every Particle Simulation node has a name (or a path when it is in a node group). This name has to be used in the Simulation modifier on a point cloud to see the particles. Caching has been disabled for now, because it was holding back development a bit. To reset the simulation, go back to frame 1. Currently, there is no way to influence the simulation. There are just some randomly moving points. Changing that is the next step.
Diffstat (limited to 'source/blender/makesdna/DNA_simulation_types.h')
-rw-r--r--source/blender/makesdna/DNA_simulation_types.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/source/blender/makesdna/DNA_simulation_types.h b/source/blender/makesdna/DNA_simulation_types.h
index 93ba9c425f0..a2b81b731d3 100644
--- a/source/blender/makesdna/DNA_simulation_types.h
+++ b/source/blender/makesdna/DNA_simulation_types.h
@@ -31,7 +31,7 @@ typedef struct Simulation {
struct bNodeTree *nodetree;
int flag;
- int _pad;
+ float current_frame;
/** List containing SimulationState objects. */
struct ListBase states;
@@ -41,23 +41,19 @@ typedef struct SimulationState {
struct SimulationState *next;
struct SimulationState *prev;
- /** This is only initialized on cow copies of the simulation. It points to the state on the
- * original data block. That is where the cache is stored. */
- struct SimulationState *orig_state;
-
/** eSimulationStateType */
int type;
int _pad;
- char name[64];
+ char *name;
} SimulationState;
typedef struct ParticleSimulationState {
SimulationState head;
- /** Contains the state of the particles at time current_frame. */
- float current_frame;
+ /** Contains the state of the particles at time Simulation->current_frame. */
int tot_particles;
+ int _pad;
struct CustomData attributes;
/** Caches the state of the particles over time. The cache only exists on the original data