我是一位(cs)本科的计算机科学毕业生,有十年的编程经验,但零游戏开发经验。我试图通过c++和raylib(一款轻量级的游戏实时库)以及jolt物理引擎来构建一个3D第三人视角策略射击游戏,没有使用任何引擎(是的,我知道这是比较愚蠢的),但我正在从一个学习的角度来尝试,因为这一过程确实很有趣。

作为一个不擅长艺术的人,我有几个问题,如果您愿意回答的话:

当时我应该使用一个现成的装备商店加载士兵模型吗,还是使用一个衣着简朴的抽象 انسان样式人间构型(简称人间构型) ? 人间构型没有装备或外套。在早期阶段,如果您使用人间构型载入的时候,要如何在之后添加装备或衣服呢?是否要下载一个新的模型呢?当您尝试这一路线或者有不同的路线的时候,您是如何将动画从一个模型转移到另一个模型上的呢?

您这里是使用什么样的三维模型资源仓库?这些模型是如何创建的?

三维模型使用的文件格式有个问题。在三维世界里,很多人都混淆了以下这样的三维模型文件格式例如M3D、GLB、GLTF、FBX和OBJ,以及其他一些可能遗漏的三维模型的文件格式之间的区别。这些文件格式之间各有什么不同呢?

有两点:一是他们是否存储相同的数据(但使用不同的工具)或是他们之间是否存在一些完全不同但是做同一的事情的文件类型。例如,对于ppt和KEYNOTE,我们知道他们是两种不同的格式。它们存储的数据完全不同,所以我们可以知道不同格式之间的差异。

这让我想到了我接下来的问题。对于动画系统来说,如果我想要我的角色可以走动(walk)、跑动(run)、弯腰(crouch)、射击(shoot)、扔手榴弹(throw)、下跪(prone)和跳跃(jump)那么我需要定义多少条动画?是否要考虑那些中间状态的动画呢?就像我一开始的问题中提到的,我的角色弯腰了,但是当我按下了shift键时,我需要一个从弯腰到直立到走动到跑动的状态。所以我的问题是,如果我在游戏里按下shift键,我需要额外的一个从弯腰直接到跑动的动画呢?或者中间的动画可以省略不用?

在动画系统中,也许我要考虑的是什么样的状态机制?您会告诉我吗?

我非常感激您的回答。您也许可以跟我解释整个过程的流程和涉及哪些工作。如果您有任何建议的话请告诉我。