转眼间,已是十几年前的游戏代码了

起因

最近在做safari的一些兼容问题,不得不安装虚拟机,来调试Safari-16版本以下的兼容问题。(关于搭建环境:具体参考juejin.cn/post/747968...

想起很久以前已经跑不起的游戏项目,想想顺便试试。(由于蛋疼的mac系统和xcode完全不向下兼容老系统)。

使用vm + mac os 10.8 + xcode 5 让它复活了。

一看创建时间已经是2013年的项目了。怀念当年使用ipad touch + mac air 调试游戏的日子,纯粹的独立游戏开发者

第一款runtwo

早期没有美工,自己硬者头皮用firework上,结果很纯色。(难怪说游戏是第九艺术,你即是导演也是演员)

代码结构

技术总结

十几年过去了,让我回顾一下当年使用的技术栈和工具

  • cocos2d-iphone 2.1
  • xcode 5.0
  • ios sdk 7
  • admob 植入广告(独立游戏开发者必备)
  • Tiled图库编辑器
  • firework(三剑客之一)

Tiled图库编辑器

技术优化:

  • 通过Tiled生成地图块,加速数据加载(类似前端雪碧图)
  • 通过单例模式,创建重复对象公用的数据对象
  • 通过预渲染所有关卡,随机选关,实现无线滚动关卡

游戏效果

项目地址

github.com/mjsong07/Ru...

第二款NutcrakerShake

第二款是2014作品,找了熟人做美工,画面没那么辣眼了。

项目结构

技术点总结:

  • 新增中美日-三种语言支持(通过ios的localizble.strings只是配置多种语言特性实现)
  • 新增sqlite3 实现本地化存储
  • 新增粒子系统 practicleTeture
  • 新增SeparatingAxisTheorem库实现精准判断不规则物品的碰撞逻辑

新增国际化配置 中美日

本地持久化

粒子系统 practicleTeture

游戏效果

项目地址

github.com/mjsong07/Nu...

两个项目地址已附上,喜欢折腾朋友跑vm试试,哈

结语

cocos2d后续也发生了很大的变化,不仅仅支持ios,推出跨平台的cocos2dx,再后来还出了的ide,js版本,有兴趣的可以继续研究。

www.cocos.com/

在经历了 java -> ios -> 前端 不同领域的开发,仍然觉得游戏开发具有更高的挑战和灵活性。游戏在ai的加持下变得越来越可独立开发,所有需要美工设计动效都可以交付给ai,单纯实现自己是想法。 等技术成熟后,也把这老掉牙的游戏升级个unity 3d版本 哈~

相关推荐
大飞pkz2 天前
【Unity】使用XML进行数据读存的简单例子
xml·unity·c#·游戏引擎·游戏开发·数据读写
大飞pkz2 天前
【Unity】如何解决UI中的Button无法绑定带参数方法的问题
ui·unity·游戏引擎·游戏开发·开发记录·button绑定
大飞pkz2 天前
【Unity】使用LitJson保存和读取数据的例子
unity·游戏引擎·游戏开发·数据保存和读取·游戏中的数据处理·类似jsonunility
大模型铲屎官4 天前
Unity C# 与 Shader 交互入门:脚本动态控制材质与视觉效果 (含 MaterialPropertyBlock 详解)(Day 38)
c语言·unity·c#·交互·游戏开发·材质·shader
Thomas游戏开发4 天前
Unity3D Timeline扩展与自定义事件处理
前端框架·unity3d·游戏开发
龙智DevSecOps解决方案5 天前
CI/CD解决方案TeamCity在游戏开发中的应用价值与优势分析
ci/cd·游戏开发·jetbrains·持续集成·teamcity
工藤新一¹5 天前
C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 14)
开发语言·c++·游戏引擎·游戏开发·sdl·实践项目
Thomas游戏开发5 天前
Unity3D 游戏崩溃和 Bug 的在线报告系统设计
前端框架·unity3d·游戏开发
程序员爱钓鱼6 天前
从零开始开发一个简易的五子棋游戏:使用 HTML、CSS 和 JavaScript 实现双人对战
前端·javascript·游戏开发
w4ngzhen7 天前
关于Bevy中的原型Archetypes
rust·游戏开发