physics_fixture_set_edge_shape

此函数定义"边"装置形状。边缘形状只是一条线,当其他装置与其搭接时,该线将生成碰撞,并且对于生成 (例如) 地形或在房间周围创建边界非常有用。使用局部空间定义边的位置,即:考虑实例的 x/y 位置 (0,0),因此在创建它们时应考虑到这一点 (在下面的代码示例中,为了避免复杂化,应将实例放置在房间的 (0,0) 处)。

 

语法:

physics_fixture_set_edge_shape(fixture, local_x1, local_y1, local_x2, local_y2)

参数类型描述
fixturePhysics Fixture ID装置的索引
local_x1Real边的起点 X 位置
local_y1Real边的起点 Y 位置
local_x2Real边的终点 X 位置
local_y2Real边的终点 Y 位置

 

返回:

N/A

 

例子:

var xx = 0;
var y1 = room_height - 100;
var y2 = room_height - 50 - irandom(100);
for (var i = 0; i < 10; i++;)
{
    var fix = physics_fixture_create();
    physics_fixture_set_edge_shape(fix, xx, y1, xx + 50, y2);
    physics_fixture_bind(fix, id);
    physics_fixture_delete(fix);
    xx += 50;
    y1 = y2;
    y2 = room_height - 50 - irandom(100);
}

上述代码将创建一行"边"装置,在房间长度上具有不同的高度。