概述

这篇文章是关于我偶然发现的 hitbox 的回忆录。
2022 夏季鲁比训练营创造了这个游戏。
我的游戏仓库这里是。我们作为一个团队开发,有 4 名成员第一次见面,并第一次使用 Git 和 Github 进行开发。
使用的技术是Ruby,三通图书馆是。
我主要负责碰撞检测,所以如果我能帮助那些在碰撞检测方面遇到问题的人,我会很高兴。
4天的制作时间,包括创意提交

我想在这篇文章中说什么

遇到命中检测后如何修复的思考过程

游戏概览

3D乒乓球大战

安装

依赖于 Ruby 2.x、Mittsu、OpenGL 3.3+ 和 GLFW 3.1.x
三:https://github.com/danini-the-panini/mittsu

游戏内容

在 3D 空间中打乒乓球。
胜利条件:4分第一

操作方法

空间:启动和重新启动

左球拍

W:上移
A:向左移动
S:下移
D:向右移动

右球拍

↑:上移
←:左移
↓:下移
→:向右移动


这是一个演示视频。

硬点

  • 命中检测
    一开始是由板心到球心的距离决定的,所以只有板心的命中判断。
    Rubyとmittsuライブラリを使って3D対戦アクションゲームつくってみた
    另一方面,如果命中检测过大,则只会产生不协调感。因此,我决定在球拍后面创建一个碰撞判断对象,通过它与球的距离来判断它。
    Rubyとmittsuライブラリを使って3D対戦アクションゲームつくってみた
    我只是不知道我应该把它放多远。所以我做了一个官方(?)

Rubyとmittsuライブラリを使って3D対戦アクションゲームつくってみた
当我尝试实现它时,感觉很好,所以它似乎适合
但是,这仍然存在问题
Rubyとmittsuライブラリを使って3D対戦アクションゲームつくってみた
由于角落没有判断力,所以我通过扩大判断力来作弊(Gabba)

想法

多亏了它的正式发布,我很高兴即使球和球拍变大,击球检测也能正常工作。
作为反思,由于将各种函数放在主文件中,代码变得难以阅读。所以从下一次开始,我将编写代码,目的是将每个函数放在一个单独的文件中。
我在添加阴影时遇到了问题,所以下次我将尝试使用 Unity 而不是 Ruby 开发游戏。
非常感谢所有团队成员。


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308624602.html

相关文章:

  • 2022-01-04
  • 2021-04-24
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
  • 2021-11-30
  • 2022-01-06
  • 2021-11-13
猜你喜欢
  • 2021-05-23
  • 2021-04-01
  • 2021-04-13
  • 2021-07-07
  • 2021-05-26
  • 2021-11-30
相关资源
相似解决方案