mp_grid_create

该函数为运动规划函数创建一个 mp_grid。

它返回一个索引,该索引应存储在变量中以供所有其他 MP 网格函数调用使用。 x 和 y 坐标表示网格左上角的位置,hcells 和 vcells 表示要在网格内创建的水平和垂直单元格的数量,单元格宽度和单元格高度表示单元格的大小 (以像素为单位)。如果您需要多个网格结构来完成不同的任务,您可以同时创建和维护多个网格结构,但请注意每个网格都需要内存,并且它们拥有的单元越多,所需的内存就越多。另请注意,MP 函数的使用对处理器来说非常繁重,因此调用它们的次数越多,单元分辨率越高,性能下降的可能性就越大。

 

语法:

mp_grid_create(left, top, hcells, vcells, cellwidth, cellheight);

参数类型描述
leftReal房间中mp_grid的起始x坐标
topReal房间中mp_grid的起始Y坐标
hcellsRealmp_grid将包含的水平单元格数
vcellsRealmp_grid将包含的垂直单元格数
cellwidthRealmp_grid中每个单元格的宽度(以像素为单位)
cellheightRealmp_grid中每个单元格的高度(以像素为单位)

 

返回:

MP Grid ID

 

例子:

global.grid = mp_grid_create(0, 0, room_width / 32, room_height / 32, 32, 32);

上面的代码创建一个全局变量 "grid",然后生成一个 mp_grid 并将其索引 (id) 分配给该变量,以便在所有进一步的 mp_grid 函数调用中使用。网格覆盖整个房间,单元分辨率为 32x32 像素。这意味着,例如,在 640x480 的房间中,网格将包含 300 个单元格:20 个水平单元格 (640 / 32) 乘以 15 个垂直单元格 (480 /32) 得出 300 个单元格。