Rename rigidbody.ghost to rigidbody.trigger for clarity

This commit is contained in:
Lubos Lenco 2017-12-12 20:07:31 +01:00
parent 02e5781f11
commit 4042e43d17
4 changed files with 12 additions and 9 deletions

View file

@ -30,7 +30,7 @@ class RigidBody extends Trait {
var angularFactors:Array<Float>;
var deactivationParams:Array<Float>;
public var group = 1;
public var ghost = false;
public var trigger = false;
var bodyScaleX:Float; // Transform scale at creation time
var bodyScaleY:Float;
var bodyScaleZ:Float;
@ -49,7 +49,7 @@ class RigidBody extends Trait {
public function new(mass = 1.0, shape = Shape.Box, friction = 0.5, restitution = 0.0, collisionMargin = 0.0,
linearDamping = 0.04, angularDamping = 0.1, animated = false,
linearFactors:Array<Float> = null, angularFactors:Array<Float> = null,
group = 1, ghost = false, deactivationParams:Array<Float> = null) {
group = 1, trigger = false, deactivationParams:Array<Float> = null) {
super();
this.mass = mass;
@ -63,7 +63,7 @@ class RigidBody extends Trait {
this.linearFactors = linearFactors;
this.angularFactors = angularFactors;
this.group = group;
this.ghost = ghost;
this.trigger = trigger;
this.deactivationParams = deactivationParams;
notifyOnAdd(init);
@ -176,7 +176,7 @@ class RigidBody extends Trait {
setAngularFactor(angularFactors[0], angularFactors[1], angularFactors[2]);
}
if (ghost) body.setCollisionFlags(body.getCollisionFlags() | BtCollisionObject.CF_NO_CONTACT_RESPONSE);
if (trigger) body.setCollisionFlags(body.getCollisionFlags() | BtCollisionObject.CF_NO_CONTACT_RESPONSE);
bodyScaleX = currentScaleX = transform.scale.x;
bodyScaleY = currentScaleY = transform.scale.y;

View file

@ -2327,7 +2327,7 @@ class ArmoryExporter:
for b in rb.collision_groups:
col_group = ('1' if b else '0') + col_group
x['parameters'].append(str(int(col_group, 2)))
x['parameters'].append(str(bobject.arm_rb_ghost).lower())
x['parameters'].append(str(bobject.arm_rb_trigger).lower())
if rb.use_deactivation or bobject.arm_rb_force_deactivation:
deact_params = lin_fac = '[{0}, {1}, {2}]'.format(str(rb.deactivate_linear_velocity), str(rb.deactivate_angular_velocity), str(bobject.arm_rb_deactivation_time))
x['parameters'].append(deact_params)

View file

@ -15,7 +15,7 @@ except ImportError:
pass
# Armory version
arm_version = '0.1.0'
arm_version = '0.2.0'
arm_commit = '$Id$'
def invalidate_mesh_cache(self, context):
@ -171,7 +171,7 @@ def init_properties():
bpy.types.Object.arm_soft_body_margin = bpy.props.FloatProperty(name="Soft Body Margin", description="Collision margin", default=0.04)
bpy.types.Object.arm_rb_linear_factor = bpy.props.FloatVectorProperty(name="Linear Factor", size=3, description="Set to 0 to lock axis", default=[1,1,1])
bpy.types.Object.arm_rb_angular_factor = bpy.props.FloatVectorProperty(name="Angular Factor", size=3, description="Set to 0 to lock axis", default=[1,1,1])
bpy.types.Object.arm_rb_ghost = bpy.props.BoolProperty(name="Ghost", description="Disable contact response", default=False)
bpy.types.Object.arm_rb_trigger = bpy.props.BoolProperty(name="Trigger", description="Disable contact response", default=False)
bpy.types.Object.arm_rb_terrain = bpy.props.BoolProperty(name="Terrain", description="Set rigid body collision shape to terrain", default=False)
bpy.types.Object.arm_rb_force_deactivation = bpy.props.BoolProperty(name="Force Deactivation", description="Force deactivation on all rigid bodies for performance", default=True)
bpy.types.Object.arm_rb_deactivation_time = bpy.props.FloatProperty(name="Deactivation Time", description="Delay putting rigid body into sleep", default=0.0)
@ -437,8 +437,11 @@ def init_properties_on_load():
# Outdated project
if bpy.data.filepath != '' and (wrd.arm_version != arm_version or wrd.arm_commit != arm_commit): # Call on project load only
print('Project updated to sdk v' + arm_version)
if arm_version == '0.1.0' and wrd.arm_version != arm_version:
if arm_version == '0.2.0' and wrd.arm_version == '0.1.0':
# Migrate deprecated props here
for o in bpy.data.objects:
if hasattr(o, 'arm_rb_ghost'):
o.arm_rb_trigger = o.arm_rb_ghost
pass
wrd.arm_version = arm_version
wrd.arm_commit = arm_commit

View file

@ -123,7 +123,7 @@ class PhysicsPropsPanel(bpy.types.Panel):
# row.prop(obj, 'arm_rb_deactivation_time')
layout.prop(obj, 'arm_rb_linear_factor')
layout.prop(obj, 'arm_rb_angular_factor')
layout.prop(obj, 'arm_rb_ghost')
layout.prop(obj, 'arm_rb_trigger')
layout.prop(obj, 'arm_rb_terrain')
layout.prop(obj, 'arm_rb_force_deactivation')