Stu*_*LTB 4 nsevent mouseevent sprite-kit skscene swift
在我的游戏中,我需要使用鼠标来选择单位。
但是,我遇到了问题,因为我不知道如何获取相对于游戏而不是窗口的点击坐标。
例如,如果 Unit 1 位于游戏的 (0,0) 点,则它可能位于窗口上的任何点,具体取决于我如何平移和缩放窗口,但我希望鼠标单击返回 (0,0 ) 无论我如何移动窗口,只要我点击同一个位置。
现在我正在使用:
override func mouseDown(with event: NSEvent) {
eventPos = event.location(in: self)
...
}
Run Code Online (Sandbox Code Playgroud)
(其余代码与鼠标单击位置无关)。
这一切都在 GameScene 中,它是一个 SKScene。那么如何获取鼠标点击的相对于 GameScene 的位置呢?
您需要将您的点从视图转换为场景坐标:
eventPos = view!.convert(event.locationInWindow, to: view!.scene!)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1044 次 |
| 最近记录: |