Blender  V3.3
Classes | Macros | Typedefs | Enumerations
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
 

Macros

#define EFF_WEIGHT_DO_HAIR   1
 
#define PFIELD_USEMAX   (1 << 0)
 
#define PFIELD_GUIDE_PATH_ADD   (1 << 2)
 
#define PFIELD_PLANAR   (1 << 3)
 
#define PDEFLE_KILL_PART   (1 << 4)
 
#define PFIELD_POSZ   (1 << 5)
 
#define PFIELD_TEX_OBJECT   (1 << 6)
 
#define PFIELD_GLOBAL_CO   (1 << 6)
 
#define PFIELD_TEX_2D   (1 << 7)
 
#define PFIELD_MULTIPLE_SPRINGS   (1 << 7)
 
#define PFIELD_USEMIN   (1 << 8)
 
#define PFIELD_USEMAXR   (1 << 9)
 
#define PFIELD_USEMINR   (1 << 10)
 
#define PFIELD_TEX_ROOTCO   (1 << 11)
 
#define PFIELD_SURFACE   (1 << 12)
 
#define PFIELD_VISIBILITY   (1 << 13)
 
#define PFIELD_DO_LOCATION   (1 << 14)
 
#define PFIELD_DO_ROTATION   (1 << 15)
 
#define PFIELD_GUIDE_PATH_WEIGHT   (1 << 16)
 
#define PFIELD_SMOKE_DENSITY   (1 << 17)
 
#define PFIELD_GRAVITATION   (1 << 18)
 
#define PFIELD_CLOTH_USE_CULLING   (1 << 19)
 
#define PFIELD_CLOTH_USE_NORMAL   (1 << 20)
 
#define PFIELD_FALL_SPHERE   0
 
#define PFIELD_FALL_TUBE   1
 
#define PFIELD_FALL_CONE   2
 
#define PFIELD_SHAPE_POINT   0
 
#define PFIELD_SHAPE_PLANE   1
 
#define PFIELD_SHAPE_SURFACE   2
 
#define PFIELD_SHAPE_POINTS   3
 
#define PFIELD_SHAPE_LINE   4
 
#define PFIELD_TEX_RGB   0
 
#define PFIELD_TEX_GRAD   1
 
#define PFIELD_TEX_CURL   2
 
#define PFIELD_Z_BOTH   0
 
#define PFIELD_Z_POS   1
 
#define PFIELD_Z_NEG   2
 
#define OB_SB_ENABLE   1 /* deprecated, use modifier */
 
#define OB_SB_GOAL   2
 
#define OB_SB_EDGES   4
 
#define OB_SB_QUADS   8
 
#define OB_SB_POSTDEF   16
 
#define OB_SB_SELF   512
 
#define OB_SB_FACECOLL   1024
 
#define OB_SB_EDGECOLL   2048
 
#define OB_SB_AERO_ANGLE   16384
 
#define SBSO_MONITOR   1
 
#define SBSO_OLDERR   2
 
#define SBSO_ESTIMATEIPO   4
 
#define SBC_MODE_MANUAL   0
 
#define SBC_MODE_AVG   1
 
#define SBC_MODE_MIN   2
 
#define SBC_MODE_MAX   3
 
#define SBC_MODE_AVGMINMAX   4
 

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
}
 

Macro Definition Documentation

◆ EFF_WEIGHT_DO_HAIR

#define EFF_WEIGHT_DO_HAIR   1

Definition at line 176 of file DNA_object_force_types.h.

◆ OB_SB_AERO_ANGLE

#define OB_SB_AERO_ANGLE   16384

Definition at line 379 of file DNA_object_force_types.h.

◆ OB_SB_EDGECOLL

#define OB_SB_EDGECOLL   2048

Definition at line 376 of file DNA_object_force_types.h.

◆ OB_SB_EDGES

#define OB_SB_EDGES   4

Definition at line 367 of file DNA_object_force_types.h.

◆ OB_SB_ENABLE

#define OB_SB_ENABLE   1 /* deprecated, use modifier */

Definition at line 365 of file DNA_object_force_types.h.

◆ OB_SB_FACECOLL

#define OB_SB_FACECOLL   1024

Definition at line 375 of file DNA_object_force_types.h.

◆ OB_SB_GOAL

#define OB_SB_GOAL   2

Definition at line 366 of file DNA_object_force_types.h.

◆ OB_SB_POSTDEF

#define OB_SB_POSTDEF   16

Definition at line 369 of file DNA_object_force_types.h.

◆ OB_SB_QUADS

#define OB_SB_QUADS   8

Definition at line 368 of file DNA_object_force_types.h.

◆ OB_SB_SELF

#define OB_SB_SELF   512

Definition at line 374 of file DNA_object_force_types.h.

◆ PDEFLE_KILL_PART

#define PDEFLE_KILL_PART   (1 << 4)

Definition at line 313 of file DNA_object_force_types.h.

◆ PFIELD_CLOTH_USE_CULLING

#define PFIELD_CLOTH_USE_CULLING   (1 << 19)

Enable cloth collision side detection based on normal.

Definition at line 338 of file DNA_object_force_types.h.

◆ PFIELD_CLOTH_USE_NORMAL

#define PFIELD_CLOTH_USE_NORMAL   (1 << 20)

Replace collision direction with collider normal.

Definition at line 340 of file DNA_object_force_types.h.

◆ PFIELD_DO_LOCATION

#define PFIELD_DO_LOCATION   (1 << 14)

Definition at line 329 of file DNA_object_force_types.h.

◆ PFIELD_DO_ROTATION

#define PFIELD_DO_ROTATION   (1 << 15)

Definition at line 330 of file DNA_object_force_types.h.

◆ PFIELD_FALL_CONE

#define PFIELD_FALL_CONE   2

Definition at line 345 of file DNA_object_force_types.h.

◆ PFIELD_FALL_SPHERE

#define PFIELD_FALL_SPHERE   0

Definition at line 343 of file DNA_object_force_types.h.

◆ PFIELD_FALL_TUBE

#define PFIELD_FALL_TUBE   1

Definition at line 344 of file DNA_object_force_types.h.

◆ PFIELD_GLOBAL_CO

#define PFIELD_GLOBAL_CO   (1 << 6)

used for turbulence

Definition at line 318 of file DNA_object_force_types.h.

◆ PFIELD_GRAVITATION

#define PFIELD_GRAVITATION   (1 << 18)

used for (simple) force

Definition at line 336 of file DNA_object_force_types.h.

◆ PFIELD_GUIDE_PATH_ADD

#define PFIELD_GUIDE_PATH_ADD   (1 << 2)

TODO: do_versions for below

Definition at line 310 of file DNA_object_force_types.h.

◆ PFIELD_GUIDE_PATH_WEIGHT

#define PFIELD_GUIDE_PATH_WEIGHT   (1 << 16)

apply curve weights

Definition at line 332 of file DNA_object_force_types.h.

◆ PFIELD_MULTIPLE_SPRINGS

#define PFIELD_MULTIPLE_SPRINGS   (1 << 7)

used for harmonic force

Definition at line 321 of file DNA_object_force_types.h.

◆ PFIELD_PLANAR

#define PFIELD_PLANAR   (1 << 3)

used for do_versions

Definition at line 312 of file DNA_object_force_types.h.

◆ PFIELD_POSZ

#define PFIELD_POSZ   (1 << 5)

used for do_versions

Definition at line 315 of file DNA_object_force_types.h.

◆ PFIELD_SHAPE_LINE

#define PFIELD_SHAPE_LINE   4

Definition at line 352 of file DNA_object_force_types.h.

◆ PFIELD_SHAPE_PLANE

#define PFIELD_SHAPE_PLANE   1

Definition at line 349 of file DNA_object_force_types.h.

◆ PFIELD_SHAPE_POINT

#define PFIELD_SHAPE_POINT   0

Definition at line 348 of file DNA_object_force_types.h.

◆ PFIELD_SHAPE_POINTS

#define PFIELD_SHAPE_POINTS   3

Definition at line 351 of file DNA_object_force_types.h.

◆ PFIELD_SHAPE_SURFACE

#define PFIELD_SHAPE_SURFACE   2

Definition at line 350 of file DNA_object_force_types.h.

◆ PFIELD_SMOKE_DENSITY

#define PFIELD_SMOKE_DENSITY   (1 << 17)

multiply smoke force by density

Definition at line 334 of file DNA_object_force_types.h.

◆ PFIELD_SURFACE

#define PFIELD_SURFACE   (1 << 12)

used for do_versions

Definition at line 327 of file DNA_object_force_types.h.

◆ PFIELD_TEX_2D

#define PFIELD_TEX_2D   (1 << 7)

Definition at line 319 of file DNA_object_force_types.h.

◆ PFIELD_TEX_CURL

#define PFIELD_TEX_CURL   2

Definition at line 357 of file DNA_object_force_types.h.

◆ PFIELD_TEX_GRAD

#define PFIELD_TEX_GRAD   1

Definition at line 356 of file DNA_object_force_types.h.

◆ PFIELD_TEX_OBJECT

#define PFIELD_TEX_OBJECT   (1 << 6)

Definition at line 316 of file DNA_object_force_types.h.

◆ PFIELD_TEX_RGB

#define PFIELD_TEX_RGB   0

Definition at line 355 of file DNA_object_force_types.h.

◆ PFIELD_TEX_ROOTCO

#define PFIELD_TEX_ROOTCO   (1 << 11)

Definition at line 325 of file DNA_object_force_types.h.

◆ PFIELD_USEMAX

#define PFIELD_USEMAX   (1 << 0)

Definition at line 307 of file DNA_object_force_types.h.

◆ PFIELD_USEMAXR

#define PFIELD_USEMAXR   (1 << 9)

Definition at line 323 of file DNA_object_force_types.h.

◆ PFIELD_USEMIN

#define PFIELD_USEMIN   (1 << 8)

Definition at line 322 of file DNA_object_force_types.h.

◆ PFIELD_USEMINR

#define PFIELD_USEMINR   (1 << 10)

Definition at line 324 of file DNA_object_force_types.h.

◆ PFIELD_VISIBILITY

#define PFIELD_VISIBILITY   (1 << 13)

Definition at line 328 of file DNA_object_force_types.h.

◆ PFIELD_Z_BOTH

#define PFIELD_Z_BOTH   0

Definition at line 360 of file DNA_object_force_types.h.

◆ PFIELD_Z_NEG

#define PFIELD_Z_NEG   2

Definition at line 362 of file DNA_object_force_types.h.

◆ PFIELD_Z_POS

#define PFIELD_Z_POS   1

Definition at line 361 of file DNA_object_force_types.h.

◆ SBC_MODE_AVG

#define SBC_MODE_AVG   1

Definition at line 388 of file DNA_object_force_types.h.

◆ SBC_MODE_AVGMINMAX

#define SBC_MODE_AVGMINMAX   4

Definition at line 391 of file DNA_object_force_types.h.

◆ SBC_MODE_MANUAL

#define SBC_MODE_MANUAL   0

Definition at line 387 of file DNA_object_force_types.h.

◆ SBC_MODE_MAX

#define SBC_MODE_MAX   3

Definition at line 390 of file DNA_object_force_types.h.

◆ SBC_MODE_MIN

#define SBC_MODE_MIN   2

Definition at line 389 of file DNA_object_force_types.h.

◆ SBSO_ESTIMATEIPO

#define SBSO_ESTIMATEIPO   4

Definition at line 384 of file DNA_object_force_types.h.

◆ SBSO_MONITOR

#define SBSO_MONITOR   1

Definition at line 382 of file DNA_object_force_types.h.

◆ SBSO_OLDERR

#define SBSO_OLDERR   2

Definition at line 383 of file DNA_object_force_types.h.

Typedef Documentation

◆ 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

Enumeration Type Documentation

◆ 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 20 of file DNA_object_force_types.h.