Blender V4.3
DNA_object_force_types.h File Reference
#include "DNA_defs.h"
#include "DNA_listBase.h"

Go to the source code of this file.

Classes

struct  PartDeflect
 
struct  EffectorWeights
 
struct  SBVertex
 
struct  SoftBody_Shared
 
struct  SoftBody
 

Typedefs

typedef enum ePFieldType ePFieldType
 
typedef struct PartDeflect PartDeflect
 
typedef struct EffectorWeights EffectorWeights
 
typedef struct SBVertex SBVertex
 
typedef struct SoftBody_Shared SoftBody_Shared
 
typedef struct SoftBody SoftBody
 

Enumerations

enum  ePFieldType {
  PFIELD_NULL = 0 , PFIELD_FORCE = 1 , PFIELD_VORTEX = 2 , PFIELD_MAGNET = 3 ,
  PFIELD_WIND = 4 , PFIELD_GUIDE = 5 , PFIELD_TEXTURE = 6 , PFIELD_HARMONIC = 7 ,
  PFIELD_CHARGE = 8 , PFIELD_LENNARDJ = 9 , PFIELD_BOID = 10 , PFIELD_TURBULENCE = 11 ,
  PFIELD_DRAG = 12 , PFIELD_FLUIDFLOW = 13 , NUM_PFIELD_TYPES
}
 
enum  { EFF_WEIGHT_DO_HAIR = 1 }
 
enum  {
  PFIELD_USEMAX = 1 << 0 , PFIELD_GUIDE_PATH_ADD = 1 << 2 , PFIELD_PLANAR = 1 << 3 , PDEFLE_KILL_PART = 1 << 4 ,
  PFIELD_POSZ = 1 << 5 , PFIELD_TEX_OBJECT = 1 << 6 , PFIELD_GLOBAL_CO = 1 << 6 , PFIELD_TEX_2D = 1 << 7 ,
  PFIELD_MULTIPLE_SPRINGS = 1 << 7 , PFIELD_USEMIN = 1 << 8 , PFIELD_USEMAXR = 1 << 9 , PFIELD_USEMINR = 1 << 10 ,
  PFIELD_TEX_ROOTCO = 1 << 11 , PFIELD_SURFACE = 1 << 12 , PFIELD_VISIBILITY = 1 << 13 , PFIELD_DO_LOCATION = 1 << 14 ,
  PFIELD_DO_ROTATION = 1 << 15 , PFIELD_GUIDE_PATH_WEIGHT = 1 << 16 , PFIELD_SMOKE_DENSITY = 1 << 17 , PFIELD_GRAVITATION = 1 << 18 ,
  PFIELD_CLOTH_USE_CULLING = 1 << 19 , PFIELD_CLOTH_USE_NORMAL = 1 << 20
}
 
enum  { PFIELD_FALL_SPHERE = 0 , PFIELD_FALL_TUBE = 1 , PFIELD_FALL_CONE = 2 }
 
enum  {
  PFIELD_SHAPE_POINT = 0 , PFIELD_SHAPE_PLANE = 1 , PFIELD_SHAPE_SURFACE = 2 , PFIELD_SHAPE_POINTS = 3 ,
  PFIELD_SHAPE_LINE = 4
}
 
enum  { PFIELD_TEX_RGB = 0 , PFIELD_TEX_GRAD = 1 , PFIELD_TEX_CURL = 2 }
 
enum  { PFIELD_Z_BOTH = 0 , PFIELD_Z_POS = 1 , PFIELD_Z_NEG = 2 }
 
enum  {
  OB_SB_ENABLE = 1 << 0 , OB_SB_GOAL = 1 << 1 , OB_SB_EDGES = 1 << 2 , OB_SB_QUADS = 1 << 3 ,
  OB_SB_POSTDEF = 1 << 4 , OB_SB_SELF = 1 << 9 , OB_SB_FACECOLL = 1 << 10 , OB_SB_EDGECOLL = 1 << 11 ,
  OB_SB_AERO_ANGLE = 1 << 14
}
 
enum  { SBSO_MONITOR = 1 << 0 , SBSO_OLDERR = 1 << 1 , SBSO_ESTIMATEIPO = 1 << 2 }
 
enum  {
  SBC_MODE_MANUAL = 0 , SBC_MODE_AVG = 1 , SBC_MODE_MIN = 2 , SBC_MODE_MAX = 3 ,
  SBC_MODE_AVGMINMAX = 4
}
 

Typedef Documentation

◆ EffectorWeights

typedef struct EffectorWeights EffectorWeights

◆ ePFieldType

typedef enum ePFieldType ePFieldType

PartDeflect.forcefield: Effector Fields types.

◆ PartDeflect

typedef struct PartDeflect PartDeflect

◆ SBVertex

typedef struct SBVertex SBVertex

◆ SoftBody

typedef struct SoftBody SoftBody

◆ SoftBody_Shared

typedef struct SoftBody_Shared SoftBody_Shared

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

EffectorWeights::flag

Enumerator
EFF_WEIGHT_DO_HAIR 

Definition at line 171 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

PartDeflect::flag: various settings.

Enumerator
PFIELD_USEMAX 
PFIELD_GUIDE_PATH_ADD 

TODO: do_versions for below

PFIELD_PLANAR 

used for do_versions

PDEFLE_KILL_PART 
PFIELD_POSZ 

used for do_versions

PFIELD_TEX_OBJECT 
PFIELD_GLOBAL_CO 

used for turbulence

PFIELD_TEX_2D 
PFIELD_MULTIPLE_SPRINGS 

used for harmonic force

PFIELD_USEMIN 
PFIELD_USEMAXR 
PFIELD_USEMINR 
PFIELD_TEX_ROOTCO 
PFIELD_SURFACE 

used for do_versions

PFIELD_VISIBILITY 
PFIELD_DO_LOCATION 
PFIELD_DO_ROTATION 
PFIELD_GUIDE_PATH_WEIGHT 

apply curve weights

PFIELD_SMOKE_DENSITY 

multiply smoke force by density

PFIELD_GRAVITATION 

used for (simple) force

PFIELD_CLOTH_USE_CULLING 

Enable cloth collision side detection based on normal.

PFIELD_CLOTH_USE_NORMAL 

Replace collision direction with collider normal.

Definition at line 303 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

PartDeflect::falloff

Enumerator
PFIELD_FALL_SPHERE 
PFIELD_FALL_TUBE 
PFIELD_FALL_CONE 

Definition at line 341 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

PartDeflect::shape

Enumerator
PFIELD_SHAPE_POINT 
PFIELD_SHAPE_PLANE 
PFIELD_SHAPE_SURFACE 
PFIELD_SHAPE_POINTS 
PFIELD_SHAPE_LINE 

Definition at line 348 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

PartDeflect::tex_mode

Enumerator
PFIELD_TEX_RGB 
PFIELD_TEX_GRAD 
PFIELD_TEX_CURL 

Definition at line 357 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

PartDeflect::zdir

Enumerator
PFIELD_Z_BOTH 
PFIELD_Z_POS 
PFIELD_Z_NEG 

Definition at line 364 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

Object::softflag

Enumerator
OB_SB_ENABLE 
OB_SB_GOAL 
OB_SB_EDGES 
OB_SB_QUADS 
OB_SB_POSTDEF 
OB_SB_SELF 
OB_SB_FACECOLL 
OB_SB_EDGECOLL 
OB_SB_AERO_ANGLE 

Definition at line 371 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

SoftBody::solverflags

Enumerator
SBSO_MONITOR 
SBSO_OLDERR 
SBSO_ESTIMATEIPO 

Definition at line 390 of file DNA_object_force_types.h.

◆ anonymous enum

anonymous enum

SoftBody::sbc_mode

Enumerator
SBC_MODE_MANUAL 
SBC_MODE_AVG 
SBC_MODE_MIN 
SBC_MODE_MAX 
SBC_MODE_AVGMINMAX 

Definition at line 397 of file DNA_object_force_types.h.

◆ ePFieldType

PartDeflect.forcefield: Effector Fields types.

Enumerator
PFIELD_NULL 

(this is used for general effector weight).

PFIELD_FORCE 

Force away/towards a point depending on force strength.

PFIELD_VORTEX 

Force around the effector normal.

PFIELD_MAGNET 

Force from the cross product of effector normal and point velocity.

PFIELD_WIND 

Force away and towards a point depending which side of the effector normal the point is.

PFIELD_GUIDE 

Force along curve for dynamics, a shaping curve for hair paths.

PFIELD_TEXTURE 

Force based on texture values calculated at point coordinates.

PFIELD_HARMONIC 

Force of a harmonic (damped) oscillator.

PFIELD_CHARGE 

Force away/towards a point depending on point charge.

PFIELD_LENNARDJ 

Force due to a Lennard-Jones potential.

PFIELD_BOID 

Defines predator / goal for boids.

PFIELD_TURBULENCE 

Force defined by BLI_noise_generic_turbulence.

PFIELD_DRAG 

Linear & quadratic drag.

PFIELD_FLUIDFLOW 

Force based on fluid simulation velocities.

NUM_PFIELD_TYPES 

Definition at line 17 of file DNA_object_force_types.h.