physics_fixture_set_edge_shape

This function sets the shape of the fixture to that of a circle with the specified radius.

Syntax:

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


Argument Description
fixture the index of the fixture
local_x1 start x position for the edge
local_y1 start y position for the edge
local_x2 end x position for the edge
local_y2 end y position for the edge


Returns: N/A


Description

This function defines an "edge" fixture shape. An edge shape is simply a line that will generate a collision when other fixtures over lap it, and can be very useful for generating (for example) terrain, or for creating borders around a room. The position of the edge is defined using local space, ie: the x/y position of the instance is considered (0,0), so this should be taken into consideration when creating them (in the code example below, the instance would have been placed at (0,0) in the room to avoid complications).


Example:

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);
   }

The above code will create a line of "edge" fixtures with a variety of heights over the length of the room.


Back: Fixtures
Next: physics_fixture_set_chain_shape
© Copyright YoYo Games Ltd. 2018 All Rights Reserved