2D开源游戏引擎调研报告(四)

godot游戏引擎自学入门笔记,官方文档翻译(一) 从来还没接触过游戏引擎,对比了一下untiy,cocos,白鹭erget等等,发现要么太复杂,要么我无法下载页面出错,要么太老旧,工具链不充足,需要额外去找。 我就想要一个很轻量级的,别太复杂,够简单易用,但又不能过于底层,否则直接用dx或者opengl来画。 无意中发现了godot,跨平台,轻量级,有一定的工具链,主打2d游戏开发。 godot最大缺点有一个: 没有中文,没有中文。这就造成了查... 阅读详情

四.Cocos Creator

0.基本介绍
Cocos Creator 是以内容创作为核心,实现了脚本化、组件化和数据驱动的游戏开发工具。 具备了易于上手的内容生产工作流,以及功能强大的开发者工具套件,可用于实现游戏逻辑和高性能游戏效果。

1.使用语言:
使用Java Script语言
注:js采用单线程,不适合进行大量运算
附参考资料:https://blog.youkuaiyun.com/w2765006513/article/details/53743051

2.可执行文件可以运行的平台
可以生成Android、Widows、Mac、ios系统的可执行程序及发布在小程序平台(如微信小程序、小程序等),后者可以直接发布,但前者需要对应系统的开发工具生成可执行文件。
Android→使用Android Studio
Windows→使用Visual Studio(CocosCreator最新版本不能指定VS目录,可能无法构建项目。我是先构建web文件再通过第三方软件转成exe,非常麻烦)
Mac、ios→使用Xcode
Js环境下载官网:https://nodejs.org/en/
(建议下载低版本7.10.1,最新版本可能安装失败)

3.对象的封装、继承、实例化等功能
用鼠标将层级管理器的对象拖拽进资源管理器,即可生成相应的资源文件(后缀名为prefab)。Prefab文件在代码中可以使用instantiate方法实例化新节点,

4.多场景的切换
使用LoadScene方法

5.物理引擎:
碰撞检测:
①先开启碰撞监测:
在物体挂载的脚本中添加回调函数,名称为:
onCollisionEnter
onCollisionStay
onCollisionExit
则物体在发生碰撞后会回调相应函数

物理模型:
实体:
使用rigid body
附:新版本似乎有一个功能,可以根据图片形状自动设置碰撞监测区域(可以不规则),也可以手动描点勾勒区域(目前没试过)
绳子:
制作多个物理节点(rigid body),用rope joint(关节)连接起来
引力效果
无相应组件,需要自己在物理上施加力

6.粒子效果
1.使用第三方工具Particle Designer(https://www.71squared.com/particledesigner,付费)或Particle2dx(http://www.effecthub.com/particle2dx免费在线工具)进行制作
2.制作完成之后,生成粒子plist文件
3.在CocosCreator中添加一个渲染节点:PracticleSystem(粒子)
4.将制作生成的粒子plist文件,导入CocosCreator中的资源管理器中
5.从资源管理器中的粒子plist文件拖入到粒子的属性检查器的File属性中,即可显示你制作的粒子动画

7 .UI组件,包含:
按钮:有
标签:有
定时器:使用schedule函数
菜单:无(但是有了图形化编辑器,用button制作还是很方便的)
复选框:有
进度条:有,progressbar
滑动条:有,slider
文本框:label

Cocos Creator的节点采用组件形式,每个节点都是由node及其它(1个或多个)组件(如button、label等)拼接而成,可以自己拼接,也可以用系统默认有的功能,非常方便

8.利用容器设置对象在屏幕中的位置:
可以利用节点的相对关系在代码中设置位置,或使用下列方法:
ScollView 滑动视图
PageView 页面视图
九宫格:直接在图片资源上操作。填充图片时,用Sliced(九宫格)方式填充

9.光影渲染
无,需要自己通过代码添加亮/暗图层

10.动画部分,包含:
10.1对象的位置、朝向、移动
①5用update函数和setposition方法配合
②使用moveto等方法
10.2对象的颜色变化
使用Tween缓动系统或update函数设置
注:Cocos Creator的Tween可以缓动任意对象的任意属性,而Cocos2dx只能缓动节点的属性
10.3数字的变化
同上

11.音频文件的加载、播放
使用Audio Source或audioEngine播放音效,一般为mp3

12.视频文件的加载、播放
使用VideoPlayer播放,官方建议mp4格式

13.学习资源的丰富性
CocosCreator的API有中英两个版本,介绍较为详细,网上也有很多教程

评价:CocosCreator 在功能上是对Cocos2dx的一次升级,最直观的区别在于有了图形化编辑器,而不是纯代码的方式,因此在搭建框架、增减节点、设置属性(尤其设计UI)等方面非常容易操作。代码的结构也更为简单,提高了开发效率。

但是,CocosCreator依然有许多功能是依赖外部工具的。编辑器内无法编辑代码(可以用VS code编辑、调试、设置断点,配套性较好),程序预览时一般在浏览器上运行(也可以在自带的模拟器运行,但效果不佳)。生成各平台的安装包也要借助外部工具。此外,引擎的编译器存在一些bug,时常莫名报错(退出重进就能消除报错)。不过,Cocos Creator仍然处于上升阶段,每一次新版本的发布都会有不小的变化,目前的bug在未来应该能得到解决

综合来看,CocosCreator在开发各类小型程序、简约风格程序上的优势较为明显。

五.横向比较

1.资源文件的使用:
1.1导入文件:将文件拖入游戏目录后,四个引擎都可以通过文件的相对位置和名称获得该文件(Cocos Creator还支持通过文件的UUID访问文件)

1.2 文件导出:
Godot:可以将任意节点保存为场景文件,该文件可以直接播放运行,
Creator:任意节点可以保存为prefab文件(预制资源),同1.1中使用
Panda3d、Cocos2dx:由于是纯代码,无需也无法导出部分文件

2.物理引擎:
完整性:四者都能实现基本的物理效果(如碰撞、运动等)
Godot:使用内置引擎
Cocos2dx:采用了Box2D物理引擎和Chipmunk物理引擎,也可以禁用这两个并调用其他物理引擎API
Panda3d:使用ODE物理引擎
CocosCreator:采用Box2D,也可以使用其他物理引擎

3.修改已有的开源部分代码:
Cocos2dx:每新建一个文件时,都会自动复制一份它的所有API,放入sln下,因此可以直接修改,且非常方便,但是每次编译会需要较长的时间
Panda3d:安装包自带python,默认情况下,所有程序共用一个API。可以将其复制并修改,但需要手动设置API路径。
Godot:所有工程文件共用一份API。
Cocos2dx:所有工程共用一份API。它的底层有cocos2dx和JavaScript两个引擎,编辑时使用js语言,编译时会翻译成c++语言,修改底层代码起来会比较困难

4.引擎的成熟度及发展情况:
Godot: 2014年发布,目前仍在更新,成熟度较高
Cocos2dx:成立于2008年,近几年已不再更新(技术人员已转向cocos creator的开发),功能基本完善,但存在一些因为需要兼容旧版本而存在的历史遗留问题。
CocosCreator:2016年成立,成熟度较低。目前引擎仍然有不少bug,但也仍在不断更新修复当中,个人比较看好它的未来。
Panda3d:仍在更新。因为主打3d功能,2d上并无明显优势

5.学习资源
1.API
Godot、CocosCreator:有中、英文两个版本
Cocos2dx、Panda3d:只有英文
2.中文社区
Godot、Cocos:有(Godot似乎要翻墙访问)
Panda3d:没找到
3.教程、学习资源
Cocos2dx > Godot > Cocos Creator>Panda3d
附:搜索范围:百度+github
如果只看中文资源的话,两个cocos引擎资源较多

6.引擎效率:
测试内容:每一帧在屏幕上方绘制一个图像,该图像不断下落,到屏幕底部时消失(约25s)。记录引擎帧率
Godot:稳定在40帧上下
CocosCreator:使用html5(浏览器播放)时,15-20帧上下。构建成exe文件播放时,能达到60帧(60为最高帧率,即没有测出上限)

结语

通过对这四款引擎各功能的学习、比较,我认为目前最适合的是Godot,它在各功能表现的四平八稳,开发应该会比较顺利。Cocos Creator的话,目前容易遇到各种bug,可以期待一下它以后的表现。

以上各个引擎的功能我只是走马观花地了解了一下。如果存在错误或有版本更新,希望各位指出。

Godot做2D像素风Steam游戏,真的比Cocos香吗?聊聊我的踩坑与选型心得 本文对比了Godot与Cocos Creator在2D像素游戏开发中的实际表现,从成本效率、技术友好性到商业变现全链路分析。Godot在2D工作流、性能优化及Steam平台集成方面表现优异,特别适合独立开发者和小型团队。通过实测数据和案例分享,为开发者提供引擎选型的实用指南。 阅读详情

相关推荐

Godot 和 VScode配置C#环境注意事项

尽管有些博主会建议如果我们熟悉C#的话,最好还是使用GDscript,而且对于小白上手也相对简单,但是C#的性能终究还是比动态语言好,也相比CPP简单些,尽管现在Godot还是有些问题,比如不像unity那样适配switch和ps5,也不像目前手游广泛使用unity,Godot在手游打包用C#也存在问题,但是我相信不久的未来会解决这些问题。另外不建议找工作的人学Godot,培训班都不屑于拿这个骗你们,都爱拿国产cocos来说事,还搞无经验也ok,装得也不像,真是乐了。

kokool的博客 3957

Godot 游戏引擎个人评价和2024年规划(无代码)

今天是上班的最后一天,我也学不动了,暂时也不想学什么新东西了。这篇文章就简单来说明一下我对于Godot的评价和之后的规划我认为Godot还是非常具有潜力的,2D方面应该是非常的成熟了,3D就是保上限。出于个人的期望,我希望微软能赞助Godot引擎的开发或者收编Godot。这样就能真正实现C# 编写万物的可能了(除了底层的系统和嵌入式代码)。

qq_44695769的博客 1万+

Python 开发安卓平台手游调研

使用Python开发安卓打怪升级游戏有两种主流方案。Kivy框架原生支持移动端开发,适合新项目,可通过Buildozer打包;Pygame+RAPT工具链适合已有Pygame游戏的移植,但配置较复杂。两者均适合开发2D轻量级游戏,但需注意Python在移动端的性能限制,复杂游戏建议使用Unity等专业引擎。Kivy因其跨平台特性和成熟工具链更推荐作为首选方案。

明心见性,知行合一 337

游戏开发引擎对比:Godot、Unity、Unreal与cocos2d的优劣分析

选择游戏引擎时,应考虑项目需求、团队技能、预算和个人偏好。Godot和cocos2d适合预算有限且专注于2D游戏的项目。Unity适用于大多数类型的游戏开发,特别是那些需要广泛平台支持的项目。Unreal Engine则适合追求高端图形和复杂游戏体验的开发者。

scoone的博客 6856

全面掌握LITS游戏引擎的跨平台开源特性

LITS Game Engine是一款开源的游戏开发框架,致力于为独立游戏开发者和小型工作室提供高性能、易用性强的开发工具。其名字“LITS”代表了轻量级(Lightweight)、集成(Integrated)、可扩展性(Scalable)和高效性(Technological)的特性。LITS起源于一次对游戏行业工具链需求的深入调研,其愿景是打造一个灵活的框架,可以适应从2D到3D,从简单到复杂游戏类型的需求。

weixin_35752645的博客 914

ZYNQ新手必看:5分钟搞定SD卡与QSPI Flash双启动模式配置(附常见问题排查)

本文为ZYNQ开发者提供了SD卡与QSPI Flash双启动模式的完整配置指南与深度排错方法。详细解析了从BootROM、FSBL到BOOT.bin的启动链条,并分步讲解了在Vivado/Vitis中的硬件配置、软件工程创建及BOOT.bin文件生成流程。针对SD卡格式化、文件放置以及QSPI Flash烧录中的常见陷阱(如版本差异、时钟配置)给出了具体解决方案和排查清单,帮助开发者快速实现可靠的产品启动与程序固化。

ll5678的博客 932

2D开源游戏引擎调研报告(一)

前言:我需要一个2D的开源游戏引擎用于设计一款工业模块控制相关的软件。以下是我选取调研的四款软件。 一、Godot 二、Panda3D 三、Cocos2dx 四、CocosCreator (注:这些软件中的3d部分功能均不在考察范围中) 调研内容: 1.使用语言 2.可执行文件可以运行的平台 3.对象的封装、继承、实例化等功能 4.多场景的切换 5.物理引擎,包含: 碰撞检测 物理模型: 实体 绳...

alittebug的博客 3186

基于光电传感的非接触式酒精浓度检测系统设计与实现

本文详细介绍了基于光电传感技术的非接触式酒精浓度检测系统设计与实现。系统利用940nm红外LED和OPT101光电传感器,结合朗伯-比尔定律,通过STM32微控制器进行信号采集与处理,实现了快速、准确的酒精浓度测量,测量精度达±1%,适用于工业检测和便携式应用场景。

y7z8a的博客 365

2D开源游戏引擎调研报告(二)

二.Panda3D 0.基本介绍: Panda3D是由迪士尼参与开发的开源3D游戏引擎 只有函数库,通过在python/c++文件中调用函数库进行开发 官网:https://www.panda3d.org/ 教程资源: ①安装引擎时会附带28个demo,展示了引擎的使用方式和特点,并附有非常详细的注释 ②https://arsthaumaturgis.github.io/Panda3DTutori...

alittebug的博客 892

BEVFusion(mit)最强环境安装,部署复现

BEVFusion作为一项经典的工作,值得深入探索。然而由于配置环境比较麻烦,耽误了一些时间。经过几次成功配置之后,有了一些总结,在这里记录下来,供大家参考避坑,也方便自己下次查阅。

qq_45783225的博客 1万+

告别混乱!在Unity中为Best MQTT v3设计清晰的服务层:配置、连接、订阅发布模块拆分指南

本文详细介绍了如何在Unity中使用Best MQTT v3插件构建清晰的服务层架构,包括配置管理、连接服务、订阅管理和发布服务的模块化拆分。通过解耦设计、事件驱动和接口抽象,提升代码可维护性和可测试性,适用于物联网和实时通信开发场景。

weixin_30576827的博客 359

2D开源游戏引擎调研报告(三)

三.Cocos2d-x 0.基本介绍 Cocos2d-x 是一套成熟的开源跨平台游戏开发框架。引擎提供了图形渲染、GUI、音频、网络、物理、用户输入等丰富的功能, 被广泛应用于游戏开发及交互式应用的构建。 官网:https://www.cocos.com/ 1.语言和代码 核心代码为c++,支持使用c++、Lua、JavaScript语言 2.项目的生成 ①新建项目: 打开引擎安装包目录中的too...

alittebug的博客 999

性能优化-高通cDSP(QDSP6)架构详解

高通cDSP开发的商业价值30秒快速认识高通cDSP开发的商业价值【高通cDSP旨在处理一些简单但需要大量计算的场景,如图像处理、科学计算、AI训练、计算机视觉等。这些场景使用CPU来运算会极大的降低CPU的吞吐量,因此利用现代寄存器较宽的特性设计出了适配数据并行的DSP芯片,cDSP就是典型的代表。利用cDSP+CPU既可以满足一般的使用场景,也可以完成现代图像和视频数据的处理。

发狂的小花的博客 5946

Hilo - 阿里巴巴出品的免费开源 H5 游戏引擎,轻巧无依赖,适合用来开发营销互动小游戏

今天推荐一个适合用来做营销小游戏的 H5 游戏引擎,轻量简单容易上手,快速上线提前下班靠它了。 关于 Hilo Hilo 是阿里团队推出的一个开源的 H5 游戏引擎,特点是对非游戏从业的前端开发者非常友好,轻量无依赖,适合用来开发营销小游戏。 作为一款阿里团队内部一直在使用游戏引擎,Hilo 活跃在阿里系大量的电商节日和活动中,比如往年的双十一狂欢城、手机淘宝中使用 webview 加载的打年兽、618 抢豪车、双十一红包雨等 H5 互动游戏,都基于 Hilo 开发。 Hilo H5 游戏引擎的技术特.

那些免费的砖 4146

100天精通Python(进阶篇)——第43天:批量将PDF转Word文档(附上脚本代码)

100天精通Python(进阶篇)——第43天:批量将PDF转Word文档(附上脚本代码)

努力让自己发光,对的人才能迎着光而来 9万+

在线考试题库抓取:Python 爬虫抓取各类在线考试平台题库和试题

通过这些技术,您可以抓取各类在线考试平台上的题库数据,进行数据分析、生成练习题集,甚至用于考试准备。为了演示抓取过程,本篇博客选择了两个常见的在线考试平台进行数据抓取:一个是教育考试平台(如“中小学题库”),另一个是职业考试平台(如“华图教育”)。对于这些网站,我们需要找到包含题库信息的页面,并分析每一页的 HTML 结构,从而定位到题目、选项、答案等数据。大多数在线考试平台的题库是分页显示的,因此我们需要遍历多个页面,抓取所有的题库数据。因此,我们需要设置合适的请求头来模拟真实的浏览器请求。

2201_76125261的博客 3445

Cocos2d-x 入门调研总结

前段时间调研了一下目前火热的cocos2dx,分享一些结果,给在考虑是否要使用的coder们一点参考。 Cocos2d-x是什么 开源的移动2D游戏框架。用C++ OpenGL ES1.1/2.0 所写,支持iOS, Android, BlackBerry, Windows, Linux等(它对Windows Phone 7的一个另外的版本,XNA的,对...

antj2607的博客 177

【人工智能之深度学习】12. BERT微调实战:医疗文本分类的领域自适应技巧与工业级实现

摘要:医疗文本分类是自然语言处理在医疗健康领域的核心应用,可辅助疾病诊断、病历结构化和医疗质量监控。然而,医疗文本的专业术语密集、实体关系复杂及数据长尾分布等特性,导致通用BERT模型性能受限。本文系统阐述医疗文本分类的领域自适应技术,从理论原理到工业级实现展开全流程讲解。首先分析医疗文本的独特属性及技术挑战;随后详解领域继续预训练、适配器微调、对抗训练等核心技术的数学原理;构建包含数据预处理、模型优化、隐私保护的完整实战架构;通过疾病分类、情感分析、事件检测三大案例验证技术有效性。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1006

搜狐畅游发布3D游戏引擎Genesis-3D 基于MIT协议开源

youkuaiyun.com  今天下午,搜狐畅游宣布将旗下首款商业级游戏引擎Genesis-3D正式对外发布,官网www.genesis-3d.com.cn也正式启用。Genesis-3D将基于MIT协议开源,并以开放SDK包的形式供全球开发者下载,这意味着游戏开发商可以自由使用、修改Genesis-3D代码开发自己的游戏,而不必考虑商业限制或者开放(修改后)的源代码。 据悉,Genesis-3D

sjtucong的专栏 1488

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

android游戏引擎汇总

随着Android系统的使用越来越广泛,了解一下Android平台下的游戏引擎就非常有必要。而同时因为基于Intel x86的移动设备越来越多,我也非常关注支持x86的移动游戏引擎。然而就目前为止游戏引擎的数量已经非常之多,每个引擎都有不同的特征、价格、成熟度等。通过一些调研之后,我发现有非常多的游戏引擎可用于开发运行在android移动设备端的游戏,其中有些还支持x86系统,另外还有些通过简单的

lvjing2的专栏 1万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

项目管理作业(一):项目调研

本篇文章主要介绍了一款ARPG游戏和一个二维码生成库

qq_52245245的博客 1263

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

【游戏】如何开发一款游戏:游戏开发流程及所需工具

游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分参与其中的人都是以玩家的身份。他们热爱一款游戏,或是被游戏的故事情节、炫丽的场景、动听的音乐所艳羡,亦或是被游戏中角色扮演、炫酷的技能、有趣的任务所吸引,然而他们中的大多数可能并不了解如此一款好玩的游戏是如何打造出来的。对于想来这个行业尝试的新人们,先对游戏开发制作有个整体的了解也是非常必要的。接下来我将从几个方面来分别进行阐述。

数字化2025 1万+

游戏开发工具与AI应用现状:行业报告揭示创意工作流变革趋势

在游戏开发领域,创意工具与游戏引擎构成了项目技术栈的核心基础。从原理上看,工具链的选择直接影响工作流效率、资产兼容性和团队协作模式。其技术价值在于通过标准化流程和实时协作能力,降低开发成本并提升内容产出质量。当前,Adobe Creative Cloud、Blender、Substance系列等工具在2D/3D内容创作中占据主导,而Unity和Unreal Engine则分别凭借跨平台灵活性与高保真渲染能力形成双引擎格局。随着生成式AI技术的渗透,工作流正经历从概念设计到代码辅助的全面升级。应用场景已从早期

weixin_34088583的博客 452

游戏的开发简绍

游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分参与其中的人都是以玩家的身份。 他们热爱一款游戏,或是被游戏的故事情节、炫丽的场景、动听的音乐所艳羡,亦或是被游戏中角色扮演、炫酷的技能、有趣的任务所吸引,然而他们中的大多数可能并不了解如此一款好玩的游戏是如何打造出来的。 对于想来这个行业尝试的新人们,先对游戏开发制作有个整体的了解也是非常必要的。 接下来我将从几个方面来分别进行阐述。 基础知识 游戏,说白了就是一个程序,这个程序或在 PC 上或在移动设备上运行,玩家通过与这个程序交互来达到

Max的博客 1696

转帖 开源游戏服务器调研

汇总贴 2013年优秀的开源引擎与开源游戏项目 http://mobile.51cto.com/aengine-431122.htm http://www.oschina.net/search?scope=project&q=%E6%89%8B%E6%B8%B8 当前的几种开源游戏服务端介绍 http://www.oschina.net/question/1986738_224...

weixin_30652491的博客 185

PSAI插件实战:零基础实现2D插画到3D效果的AI转换

2D转3D技术是数字内容创作领域的热点,其核心原理在于通过深度学习算法,从单张2D图像中推断深度信息与表面法线,进而重建具有立体感的光影效果。这项技术的价值在于大幅降低了传统3D建模的技术门槛,使插画师、IP设计师无需掌握复杂软件,即可快速生成具有视觉纵深感的立体化效果图。在应用场景上,它尤其适用于IP形象立体化展示、表情包动态化、盲盒概念设计等需要快速视觉呈现的环节。本文聚焦于PSAI插件这一具体工具,详细解析了如何利用其AI能力,将2D插画、IP形象高效转换为可用于宣传与预览的3D效果,涵盖了从环境配置

weixin_34292402的博客 394
上一篇: 2D开源游戏引擎调研报告(三)
此曲只应人间有
博客等级 码龄7年 3粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值