鼠标单击精灵图像而不是其边界框

问题描述 投票:0回答:1

在我检查的所有游戏示例中,使用 SFML、.NET Framework、WPF、Python 和 HTML5 用 C++/C# 编写,精灵会对精灵边界框中的鼠标点击做出反应。

是否有一种技术可以使精灵仅对精灵图像内的点击做出反应?

我检查了很多游戏,但没有一个游戏表现出必要的行为

c# c++ sprite onclicklistener bounding-box
1个回答
3
投票

技术如下:

  1. 获取鼠标点击坐标。
  2. 减去精灵坐标,以获得精灵局部偏移。
  3. 使用精灵局部偏移来查找精灵中的像素。
  4. 如果像素是透明的,则单击不在精灵图像内。
© www.soinside.com 2019 - 2024. All rights reserved.