- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
现在,我的游戏只是通过墙壁绘制角色的视锥。我希望电弧在到达墙壁时被中断,但在未到达墙壁的地方继续。
这是一个快速example我想要发生的事情。
我对编程还很陌生,我已经编程了大约 6 个月,但我的数学能力很强,所以请简单地使用编程术语,谢谢。
这是我的 GitHub如果您想更好地体验我的游戏。
最佳答案
您可以通过从角色向该方向转换光线并在遇到障碍物时停止来计算角色在任何给定方向上能看到多远。如何针对您的特定情况执行此操作的详细信息将根据对象在游戏中的表示方式而有所不同。
在您链接到的文章中,看起来墙壁是由线条制成的。如果您的游戏就是这种情况,您可以找到射线与墙的每条线段的交点。如果它们相交,那么它们相交的点就是您在该方向上可以看到的最远位置。
如果您在给定位置将对象表示为 Sprite ,则可以首先转换光线并查看它是否与 Sprite 的边界框相交。 (边界框只是 Sprite 周围的一个矩形,尽可能紧密地完全包含它。)一旦您知道光线与边界框相交,您就可以更仔细地观察该对象,看看 ray actually hits the sprite 是否存在。 .
关于java - 在我的游戏中使用弧线来表示角色的视觉,但在将弧线环绕墙壁时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30195082/
我目前在使用边界框使 sprite 显示为实体时遇到问题。碰撞与下面的代码一起工作得很好。 位置是主要角色在 map 上的位置。character2 是主角将与之发生碰撞的 18 x 28 Sprit
这个问题在这里已经有了答案: JavaScript: Collision detection (10 个回答) 10 个月前关闭。 检测 2 个物体(墙壁)碰撞的好方法。是的,不仅仅是检测,还有进一步
我正在制作一个 roguelike 游戏,但在编码方面我是初学者。我已经让我的角色移动了,我的墙壁和地板 Sprite ,但我的代码中有一些错误,允许角色穿过墙壁。 我用了 block_path在地板
我使用的代码只是取自一个示例,它确实为我的场景建了一堵墙: /** This loop builds a wall out of individual bricks. */ public vo
我已经尝试解决平滑播放器-墙壁-碰撞的问题,使播放器沿着墙壁滑动。 我试过以下: playerBox->move(); if (playerBox->intersects(wall)) { c
我是一名优秀的程序员,十分优秀!