public void Evaluate(int SpreadMax) { this.FType.SliceCount = SpreadMax; this.FAABBMin.SliceCount = SpreadMax; this.FAABBMax.SliceCount = SpreadMax; this.FCustom.SliceCount = SpreadMax; this.FHasCustomObj.SliceCount = SpreadMax; this.FCustomObj.SliceCount = SpreadMax; this.FScaling.SliceCount = SpreadMax; for (int i = 0; i < SpreadMax; i++) { CollisionShape shape = FShapes[i]; ShapeCustomData sc = (ShapeCustomData)shape.UserObject; Vector3 min; Vector3 max; shape.GetAabb(Matrix.Identity, out min, out max); this.FAABBMin[i] = min.ToVVVVector(); this.FAABBMax[i] = max.ToVVVVector(); this.FScaling[i] = shape.LocalScaling.ToVVVVector(); FType[i] = shape.ShapeType; this.FCustom[i] = sc.CustomString; if (sc.CustomObject != null) { this.FHasCustomObj[i] = true; this.FCustomObj[i] = sc.CustomObject; } else { this.FHasCustomObj[i] = false; this.FCustomObj[i] = null; } } }
public void GetAabb(out Vector3 aabbMin, out Vector3 aabbMax) { CollisionShape.GetAabb(WorldTransform, out aabbMin, out aabbMax); }