我想有多个“窗格”或我的游戏窗口的部分。第 1 部分将是跟随玩家的视图。我玩过视图,当然,它们是同一个“房间”的不同视图。我可以使用视图然后用精灵或矩形覆盖视图 2,3 和 4,但似乎应该有一种更有效的方法来做到这一点。
想法或建议?
我想有多个“窗格”或我的游戏窗口的部分。第 1 部分将是跟随玩家的视图。我玩过视图,当然,它们是同一个“房间”的不同视图。我可以使用视图然后用精灵或矩形覆盖视图 2,3 和 4,但似乎应该有一种更有效的方法来做到这一点。
想法或建议?
啊,我们在游戏开发的某个阶段都会遇到的问题。如何制作HUD?
这是我的窍门:
obj_HUD
其唯一功能是绘制 HUD让我们首先在create 事件中初始化一些变量:
//CREATE EVENT
depth = -100;
width_pane2 = 150;
height_pane2 = 300;
width_pane3 = 500;
height_pane3 = 120;
width_pane4 = 120;
// Set the above values according to your needs
现在,对于step 事件:
//STEP EVENT
x = view_xview;
y = view_yview; //Just for simplifying the code in draw event
这是您需要添加到draw 事件的代码obj_HUD
:
//DRAW EVENT
draw_rectangle(x , y , x+width_pane2 , y+height_pane2 , false);
draw_rectangle(x , y+view_hview-height_pane3 , x+width_pane3 , y+view_hview , false);
draw_rectangle(x+view_wview-width_pane4 , y , x+view_wview , y+view_hview , false);
如果您需要使这些透明,请在绘制任何内容之前将 alpha 的值设置为小于 1,然后在绘制完所有内容后将其恢复为 1。
//DRAW EVENT (TRANSPARENT HUD)
draw_set_alpha(0.6);
draw_set_color(c_black);
draw_rectangle(x , y , x+width_pane2 , y+height_pane2 , false);
draw_rectangle(x , y+view_hview-height_pane3 , x+width_pane3 , y+view_hview , false);
draw_rectangle(x+view_wview-width_pane4 , y , x+view_wview , y+view_hview , false);
draw_set_alpha(1);
那应该可以解决问题!
如果您使用 Game Maker: Studio
您可以使用 (Draw GUI) 事件,它会在所有内容之上绘制,但按钮可能不会与此
如果您不使用 Game Maker: Studio
视图很可能是您最好的选择。