对比分析小游戏引擎孰优孰劣

news2024/11/26 15:41:03

随着微信生态中,小程序应用指数级的增长,许多休闲游戏变成为了众多游戏厂商流量变现的新手段。以近期很火的“羊了个羊”为例,它便是我们常常所说的小游戏。

游戏和小游戏的区别

要盘点小游戏开发引擎之前,我们得先来了解下游戏和小游戏两者之间的区别。

最核心的区别便在于运行环境的不同。基本上所有基于 HTML5 的游戏引擎都是依赖浏览器提供的 BOM 和 DOM API 的,而小游戏的运行环境是一个不同于浏览器的宿主环境,没有提供 BOM 和 DOM API,在微信中提供的是 wx API。通过 wx API,开发者可以调用 Native 提供的绘制、音视频、网络、文件等能力。

换句话说,如果用一个游戏引擎开发了一款游戏,如果要运行在App中,还需要引擎自身适配微信小程序的语法。

那么现在有多少游戏引擎适配了呢?官方的文档上介绍的是:Cocos、Egret、Laya以及Unity。最近了解到有一个小程序容器技术 FinClip ,能够让运行在微信上的小游戏,同样运行在其他App中,感兴趣的小伙伴可以了解一下这个产品。

下面我们主要对这4款游戏开发引擎做介绍及优缺点的比较。

在这里插入图片描述

一、Cocos

必须得把Cocos放在第一个讲,毕竟近期的羊了个羊就是基于Cocos引擎开发的。除了 " 羊了个羊 ",采用 Cocos 引擎开发的知名游戏还有《梦幻西游手游》《开心消消乐》《捕鱼达人》《热血传奇》《最强蜗牛》《剑与家园》《动物餐厅》等等爆款游戏。

编程语言:js,C++,lua

很多策划认为Cocos2D对于新入行的开发者来说不仅具备大量功能,而且非常容易上手。虽然该引擎比较复杂,但值得一提的是其功能和灵活性。

优点:强大而且灵活;理论上来讲,你可以为自己的游戏加入所有的iOS功能;提供成熟的框架和多种工具;开源、免费,社区支持强大。
缺点:和同类引擎相比比较复杂;学习门槛相对较高;特别适合Mac或者iOS平台,不过并不是跨平台引擎。
概述:cocos2d-x 的编程语言有不同的版本,是相对来说抽象比较少的引擎,也是我接触较少的一款游戏引擎,技术有点老了。

在这里插入图片描述

二、Egret(白鹭引擎)

Egret引擎是一个开源免费的游戏框架,用于构建二维游戏、演示程序和其他图形界面交互应用等。Egret使用TypeScript脚本语言开发。当游戏完成最终的打包后,可以将程序转换为HTML5游戏,实现跨平台特性。

Egret不仅仅是一个基于HTML5技术的游戏引擎,我们的产品线中除了Egret引擎还提供了很多辅助游戏开发的工具。准确的来说,Egret是一套游戏开发的解决方案。你可以使用Egret引擎来帮助你开发HTML5游戏,并运行在手机和PC端的浏览器中,同时也你可以使用Egret提供的相关工具搭建你自己的游戏开发工作流。

在这里插入图片描述

三、Laya Box(蓝亚盒子)

Layabox是北京蓝亚盒子科技有限公司打造的中国游戏引擎提供商品牌,旗下第二代引擎LayaAir是基于webGL的开源引擎,性能与3D是引擎的核心竞争力。配套引擎专属的可视化开发工具,引擎与工具同时支持ActionScript3、JavaScript、TypeScript三种开发语言,并且一次开发可以同时发布APP(安卓与iOS)、HTML5、小游戏(微信小游戏、QQ小游戏、百度小游戏、支付宝小游戏、BiliBili小游戏、字节跳动小游戏、小米快游戏、OPPO小游戏、vivo小游戏、华为快游戏、等)。除支持2D\3D的游戏开发外,引擎还可以用于应用软件、广告、营销、教育、线上虚拟展馆、智慧城市、智慧工业等领域。

LayaAir引擎是一套全新设计的精简API的游戏引擎,具有极致的性能、轻量易用、支持多语言开发、API功能齐全、工具链完善高效、免费、支持多版本发布等特点。

在这里插入图片描述

四、Unity

Unity3D对于游戏开发者们来说是一个真正可以负担的起的引擎,具有其他引擎难以匹敌的用户量。更为重要的是,你只需要付费一次,而且,不管你的游戏如何成功,都不用担心Unity会分走你的收入。这对于很多开发商来说当然是非常具有吸引力对,尤其是初创公司和新入行的开发者们。

优点:业内最具竞争力的授权条款;易于使用而且兼容所有游戏平台;开发者社区支持强大;学习门槛非常第;开发商使用率最高。
缺点:工具数量有限,所以开发商必须给自己创作工具;做复杂和多样化的效果比较耗时。

在这里插入图片描述

以上四种小游戏开发引擎,你钟爱哪一个呢?如果你有其他钟爱的小游戏开发引擎,欢迎您在评论区留言。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/68224.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

leetcode 638. 大礼包-思路整理

题目 在 LeetCode 商店中, 有n件在售的物品。每件物品都有对应的价格。然而,也有一些大礼包,每个大礼包以优惠的价格捆绑销售一组物品。 给你一个整数数组price表示物品价格,其中price[i]是第i件物品的价格。另有一个整数数组nee…

扩散模型(Diffusion)最新综述+GitHub论文汇总-A Survey On Generative Diffusion

扩散模型(Diffusion Model)最新综述GitHub论文汇总-A Survey On Generative Diffusion 本综述来自香港中文大学Pheng-Ann Heng、西湖大学李子青实验室和浙江大学陈广勇团队,对现有的扩散生成模型进行了全面的回顾。本文首先提出了diffusion model改进算法的细化分类…

Thread类及常见方法

文章目录一、Thread常见构造方法二、Thread常见属性三、Thread常见方法start()获取当前线程休眠当前线程中断线程join()一、Thread常见构造方法 Thread类是JVM用来管理线程的一个类,每个线程都有唯一一个Thread对象与之对应,JVM会将这些对象组织起来&am…

世界杯征文活动 | 神奇!一段JavaScript代码生成会动的足球

世界杯征文活动 | 神奇!一段JavaScript代码生成会动的足球 文章目录前言一、效果展示二、代码解析1.把足球图片转换为base64格式2.根据base64格式的字符串,创建img标签图片对象3.创建存放图片img的div标签对象4.使div旋转起来总结前言 花有重开日&#…

python中的import详解

0. 什么是导入? 导入从本质上讲,就是载入另一个文件,并能够读取那个文件的内容 0.1 模块和属性 模块往往就是变量名的封装,被认作是命名空间属性就是绑定在特定对象上的变量名 0.2 from和import 通过import得到了具有属性的模…

697226-52-1, 细胞穿膜肽TAT-amide

TAT-amide 是一种细胞穿透肽。细胞穿透肽 (CPPs) 是能够进入不同细胞的短氨基酸序列,用于细胞的物质细胞递送。TAT-amide is a cell penetrating peptide. Cell-penetrating peptides (CPPs) are short amino acid sequences able to enter different cells[1][2]. …

软件测试工程师应该学Python还是学Java?

前言 对于一个软件测试工程师来说,选哪一门语言来入手编程一直是件非常纠结的事情,当然立志做一辈子功能测试的人除外。 当你学完软件测试基本理论,掌握业务测试流程,功能测试可以搞定,数据库和linux玩的也很溜时&am…

Day822.Happens-Before 规则 -Java 并发编程实战

Happens-Before 规则 Hi,我是阿昌,今天学习记录的是关于Happens-Before 规则的内容。 可见性、原子性、有序性这三者在编程领域属于共性问题,所有的编程语言都会遇到,Java 在诞生之初就支持多线程,自然也有针对这三者…

Blender 雕刻

文章目录简介.基本操作.进入雕刻.雕刻工作区.动态拓扑.动态拓扑属性.重构网格.物体数据属性重构网格.雕刻自带的重构网格.简介. 1 雕刻的本质是是用笔刷对顶点进行移动 2 被雕刻的物体要有足够多的顶点才行,可以使用动态拓扑解决顶点不够的问题 基本操作. 进入雕…

你猜,怎么用一句话证明你是项目经理?

早上好,我是老原。 熟悉我的老朋友都知道,我有两大爱好,一是钟情于挖招聘JD,二是喜欢逛知乎。 今天在知乎上看到一个很有趣的话题:你如何用一句话证明你是项目经理? 项目管理发展至今,有技术/…

JavaScript大作业(餐厅美食网站设计与实现)

🎀 精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

【CBAM||目标识别||注意力机制||gated卷积】Convolutional Block Attention Module

这篇是2018年的paper,已经有很多中文资料可以学习,因而不做重复工作~记录一下核心要点,后续可阅。【学习资源】CBAM:卷积注意力机制模块 【学习资源】论文阅读-CBAM: Convolutional Block Attention Module CBMA:卷积注意力机制模…

10K起步的软件测试岗到底需要学什么?零基础进阶自动化测试需要哪些技术...

软件测试的正确路线 1、软件测试基础: 对软件测试整理的测试流程有清晰的概念,了解软件测试到底是做什么的,软件测试的各种专业术语是什么意思,以及多种不同的软件测试类型区分,测试用例的作用、本质以及如何撰写&…

开关电源环路稳定性分析(2)-从开环到闭环

大家好,这里是大话硬件。 在上一节中,基于欧姆定律,基尔霍夫定律,伏秒平衡这些已知的知识点,可以推导出Buck变换器的输入输出关系。 今天这一节,我们还是从全局的概念来解析开关电源。 1. 运放和开关电源…

盘点世界杯有趣小知识!带你感受体育赛事数据可视化的快乐!

2022年卡塔尔世界杯是第二十二届世界杯足球赛,是历史上首次在卡塔尔和中东国家境内举行、也是第二次在亚洲举行的世界杯足球赛。 今年卡塔尔世界杯可谓精彩纷呈,花2000个亿在沙漠里打造出的空调球场、洗脑又魔性的“母鸡生蛋”主题曲《Tukoh Taka》、世界…

角逐「视觉感知」万亿市场,这家国内领跑者如何挑战性能天花板?

随着智能汽车渗透率快速提升,车用视觉感知摄像头装配量大幅增长。以前向ADAS摄像头为例,今年1-8月中国市场(不含进出口)乘用车新车标配交付为639.10万颗,同比增长29.54%;而这个数字在2021年同期为55.67%。 …

ppt 的基本操作1

一 基本操作 1.1 隐藏和显示功能区 1.点击有上角,小箭头标志 2.显示 1.2 工作区 和编辑区的比例拖放 1.1 箭头放到红色标注的部分,当鼠标变为箭头形状,可以动态拖动 2.可以看到二者之间的比例,发生变化 1.3 编辑区设置网格线…

Minianaconda安装jupyter notebook遇到的问题及解决

文章目录前言一、如何安装jupyter notebook二、其他问题解决1、安装时报错2、安装之后不能打开3、Verifying transaction: failedRemoveError注意:使用时命令提示符窗口不可以关闭前言 提示:这里可以总结遇到的各种问题: 1、如何安装jupyte…

Excel 可视化教程之可视化的科学与艺术

我们经常对表示数据的方式感到不知所措,所以这里是关于为什么要进行可视化以及在进行可视化时的基本思考过程。 探索性与解释性 原始格式的数据既不美观也不具有洞察力。为了掌握潜在的分布、异常和洞察力,我们需要进行探索性数据分析,通常称为 EDA。因此,数据的探索部分…

MySQL表的操作

文章目录MySQL表的操作创建表创建表案例查看表结构修改表删除表MySQL表的操作 表操作至少会涉及如下两类SQL语句: DDL(Data Definition Language)数据定义语言:比如建表、删表、该表、新增列、删除列等。DML(Data Ma…