素材超多的 2D 游戏是如何管理素材的?

2024-07-12 10:10:58 +08:00
 mqllin

最近在自学 godot ,一直有一个做游戏的梦。目标是先拿一个老游戏的素材通过复刻的形式来进行深入学习和实战。最近在素材上遇到了一些问题。下面是对素材的描述,以 NPC 贴图为例: 1.非战斗状态例如站立、行走的贴图是 8 位图,8 个方向,每个方向各自一套动画,一套动画可能 10 多张图。战斗状态是 2 个方向(前、后)一套动作也是 10 多张图。 2.每张图片都有一个对应的 txt 文件里面记录偏移信息。这就代表文件数量直接 Double 。 3.文件名称是规则的每个动作的文件名都是按 12345 排的。

因为是 2D 贴图,这样就导致素材文件数量随随便便就上几十万。我在多设备开发的过程中(白天 mac ,晚上 win 台式)让我对素材感觉无从下手。难道只能 U 盘拷一份然后尽量保持素材不动了吗?感觉难免会需要改动素材的情况。 U 盘拷贝一次也是非常费劲,无论是直接文件夹拷贝还是先压缩都需要长达几个小时甚至十几个小时的时间,因为我目前没能成功的完整拷贝过,太慢了。 如果是直接给素材进行 git 提交的话,也是巨慢一个是 git 容量问题,可能只能自己搭建私有 git 。再一个扫描和上传素材文件也是巨慢,需要好几个小时才能传上去,拉取就更不用说了。 所以对于素材的管理有什么好办法吗?

3033 次点击
所在节点    游戏开发
12 条回复
kylebing
2024-07-12 10:13:36 +08:00
可以下载个 饥荒 游戏瞅瞅,里面游戏图片素材都是可见的。
ShaunSS
2024-07-12 10:23:44 +08:00
整合一下做成精灵图表
lxxxv5
2024-07-12 10:31:34 +08:00
godot 官方 2d 游戏的教程都没看完吧
mqllin
2024-07-12 10:41:07 +08:00
@lxxxv5 当然没看完了 哈哈用到什么查什么。如果用精灵表,合成后也不少也得有几万张图吧。
rainxt
2024-07-12 10:44:46 +08:00
1.2d 游戏动画一般使用 spritesheet 整合,一个动画对应一张图,绝大多数的游戏引擎都支持这个。
2.需要跨设备开发,建议自建 git 或 svn
3.对于不频繁改动的素材,可以打包成 zip 包提交,写个脚本专门管理这些素材的改动提交。嫌麻烦就老老实实提交拉取,反正也就慢两次。
job32
2024-07-12 10:47:24 +08:00
图很多,需要动画编辑器支持。用序列帧你会崩溃。
paopjian
2024-07-12 11:03:12 +08:00
虽然不懂游戏,但是图素材和代码应该是分开的吧,代码里写动作,用宏定义的方式指向展示的动画,开发的时候看的只是简单的几个动画,最后再把图片素材合成精灵图. 这工作至少得有游戏开发和美术设计两个部门做,而不是一个文件夹混一起放
sunny352787
2024-07-12 11:36:33 +08:00
你先把 git 弄上吧,lfs 模式管理二进制资源挺快的
gauzung
2024-07-12 11:52:21 +08:00
你一开始学怎么可能就有几十万张贴图? 全部都有用到吗? 不可能吧???
八个方向不一定就有八套贴图, 左右可以通过翻转复用一套贴图, 同理左上右上, 左下右下
mqllin
2024-07-12 16:00:28 +08:00
@gauzung 因为是现成的素材 确实不是都用得上
gauzung
2024-07-12 17:49:30 +08:00
@mqllin #10 做到什么程度就用多少素材, 没必要一下就把全部素材丢进去
xbox360
2024-07-12 20:44:24 +08:00
如果想减少图片数量,可以用 2d 骨骼做动画

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1056757

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX