如何解决Gamemaker Studio2,绘制GUI层冲突
我想先说我对 gameMakerstudio 还是很陌生,我不知道有关该软件如何工作的所有信息,这可能是我问题的根本原因,因为我不知道为什么我我有这个当前的分层问题。
我遇到了一个问题,我在同一个房间内的不同对象中有两个 DrawGUI 事件。
第一个对象是战争迷雾,它绘制 GUI 并在玩家移动时显示地图,并使已探索的地点可见但不可见。
第二个对象是操纵杆,玩家可以用拇指拖动操纵杆来移动玩家。
自从我实施了战争迷雾。我一直无法查看操纵杆。似乎战争迷雾笼罩在它上面,我无法使用它。
我知道还有其他抽奖活动可以做到这一点。
画画 绘制图形用户界面 抽奖开始 绘制结束 绘制 GUI BEGIN 绘制图形界面结束
更改代码绘制位置后。 例子:一开始摇杆和雾都在Draw GUI里,把一个从Draw GUI移到Draw GUI Begin后,出现同样的问题。
我已经确保将操纵杆放在房间的最顶层,将战争迷雾放在最底层。
我试图应用深度对象
oJoystick_Stick.depth = -100;
这没有任何效果。
是否有另一种方法可以强制 GUI 层上的两个对象位于另一个之上?
解决方法
据我所知,DrawGUI 总是优先考虑在 Draw 中绘制的对象,包括开始绘制和结束绘制,因为它是一个界面(你看到的关于你的角色的统计数据,如健康、弹药等),而不是一部分房间本身。您可能还注意到,在 DrawGui 中绘制的对象也跟随相机/视点。
之后,房间内的depth
变量和层有优先权,每一层也给了一个深度值,间隔为100。
如果 depth
也相同(例如当它们在同一层时),则对象和代码加载的顺序决定绘制的顺序。
然而我自己没有使用过战争迷雾系统,所以我不知道它是否是内置的,但我不建议将它们放在 DrawGUI 中,因为它应该为界面保留布局。使用默认的绘图选项,您将可以更多地访问房间内的图层。
,关于 DrawGUI 的一些建议
- DrawGUI 开始 --> 在那一刻在每个 drawGUI 之前调用事件
- DrawGUI --------> 事件被称为与屏幕刷新率同步
- DrawGUI End ----> 在那一刻每个 drawGUI 之后调用事件
所以用于 DrawGUI 的 GM-Studio“管道”就像 step 事件,我们有一个 BEGIN、一个 CURRENT 和一个 END。
为了确定对象渲染的优先级,GM-Studio 使用了深度内置变量。以0为参考值。深度值 > 0 的对象作为最后渲染。深度值
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。