IOS项目怎么导入cocos 3.8.1开发小游戏的小游戏?


部分小游戏平台支持分包功能以便对资源、脚本和场景进行划分,包括微信小游戏、百度小游戏、小米快游戏、抖音小游戏、华为快游戏、OPPO 小游戏和 vivo 小游戏。
Cocos Creator 从 v2.4 开始支持 Asset Bundle,开发者可以将需要分包的内容划分成多个 Asset Bundle,这些 Asset Bundle 会被构建成小游戏的分包。在启动游戏时只会下载必要的主包,不会加载这些分包,而是由开发者在游戏过程中手动加载分包,从而有效降低游戏启动的时间。
配置方法
Asset Bundle 是以 文件夹 为单位进行配置的。当我们在 资源管理器 中选中一个文件夹时,属性检查器 中就会出现一个 配置为 Bundle 的选项,勾选后会出现如下图的配置项:
除了通用的 Asset Bundle 配置 之外,小游戏分包主要需要关注的设置包括:
将 目标平台 设置成需要分包的小游戏平台,压缩类型 设置为 小游戏分包。
小游戏分包只能放在本地,不能配置为远程包,所以 配置为远程包 项为锁住状态,不可勾选。
配置完成后点击右上方的 打勾 按钮,这个文件夹就被配置成 Asset Bundle 了。
构建
在构建时,需要将 构建发布 面板中的 主包压缩类型 设置为 小游戏分包。具体说明可参考文档 Asset Bundle — 压缩类型。
项目构建完成后,这个 Asset Bundle 文件夹会被打包到小游戏平台发布包目录下的 subpackages 文件夹中。该文件夹中包含的每个文件夹都是一个 Asset Bundle。
例如:将 Hello World 工程中的 assets/scene 文件夹在微信小游戏平台配置为 Asset Bundle,那么项目构建后将会在微信小游戏发布包目录下生成 subpackages/scene 文件夹。scene 文件夹就是一个 Asset Bundle。
微信小游戏
在微信小游戏的构建中,Asset Bundle 的配置也会按照规则自动生成到微信小游戏发布包目录下的 game.json 配置文件中。
注意:微信小游戏需要特定的版本才能支持分包功能。微信 6.6.7 客户端,2.1.0 及以上基础库开始支持,请更新至最新客户端版本,开发者工具请使用 1.02.1806120 及以上版本。更新了开发者工具后不要忘记修改开发者工具中的 详情 -> 本地设置 -> 调试基础库 为 2.1.0 及以上:
分包加载包大小的限制
目前微信小游戏分包大小有以下限制:
整个微信小游戏所有分包大小不超过 20M
单个分包不限制大小
主包大小不能超过 4M
具体请参考 微信小游戏分包加载官方文档。
vivo 小游戏
在 vivo 小游戏的构建中,Asset Bundle 的配置也会按照规则自动生成到 vivo 小游戏发布包 vivo-mini-game/src 目录下的 manifest.json 配置文件中。以配置 scene 文件夹为例:
注意:
快应用 & vivo 小游戏调试器 从 1051 版本开始支持 vivo 小游戏分包加载。低于 1051 的版本虽然不支持分包加载,但是也做了兼容处理,如果使用了分包也不会影响游戏正常运行。具体可参考 vivo 分包加载-运行时兼容。
与其他小游戏平台不同的是,项目构建后 vivo 小游戏的 Asset Bundle 文件夹是生成在发布包 vivo-mini-game 目录下的 src 目录。
分包加载包的限制
目前 vivo 小游戏分包大小限制为 20M(主包限制 4M 及分包大小限制 16M)。
具体请参考 vivo 小游戏官方文档 — 分包加载。
Prev: 开放数据域
Next: 发布到 Facebook Instant Games 平台

注意:由于相关合约已到期,自 2022 年 11 月 30 日起,将不再支持百度小游戏的发布和构建。
百度小游戏是基于手机百度 app 上的智能小程序进行扩展的小游戏,它不仅提供了强大的游戏能力,还和智能小程序一样,提供了大量的原生接口,比如支付,文件系统,位置,分享等。相当于同时结合了 WEB 易于传播以及 Native 功能丰富的优势。
百度小游戏的运行环境和微信小游戏类似,基本思路也是封装必要的 WEB 接口提供给用户,尽可能追求和 WEB 同样的开发体验。百度小游戏在智能小程序环境的基础上提供了 WebGL 接口的封装,使得渲染能力和性能有了大幅度提升。不过由于这些接口都是百度团队通过自研的原生实现封装的,所以并不可以等同为浏览器环境。
作为引擎方,为了尽可能简化开发者的工作量,我们为用户完成的主要工作包括:
引擎框架适配百度小游戏 API,纯游戏逻辑层面,用户不需要任何额外的修改
Cocos Creator编辑器提供了快捷的打包流程,直接发布为百度小游戏
自动加载远程资源,缓存资源以及缓存资源版本控制
具体百度小游戏的申请入驻,开发准备,游戏提交,审核和发布流程可以参考 百度小游戏注册指导文档。
准备工作
发布流程
使用 Cocos Creator 打开需要发布的项目工程,从 菜单栏 -> 项目 中打开 构建发布 面板,发布平台 选择 百度小游戏。填入 AppID,然后点击 构建。
通用构建选项的设置请参考 通用构建选项,百度小游戏特有的构建选项如下:
构建选项
可选
说明
字段名(用于命令行发布)
初始场景分包
可选项
勾选后,首场景及其相关的依赖资源会被构建到发布包目录 assets 下的内置 Asset Bundle — start-scene 中,提高初始场景的资源加载速度。
startSceneAssetBundle
设备方向
必填项
可选值包括 landscape 和 portrait。构建时会写入到发布包目录下的 game.json 中。
orientation
AppID
必填项
百度小游戏的 AppID,构建时会写入到发布包目录下的 project.swan.json 中。
appid
资源服务器地址
可选项
用于填写资源存放在远程服务器上的地址。开发者需要在构建后手动将发布包目录下的 remote 文件夹上传到所填写的资源服务器地址上。详情请参考 上传资源到远程服务器
remoteServerAddress
生成开放数据域工程模板
可选项
用于接入开放数据域,详情可以参考 开放数据域
buildOpenDataContextTemplate
运行预览
构建完成后点击 构建任务 左下角的文件夹图标按钮打开项目发布包,可以看到在默认发布路径 build 目录下生成了 baidu-mini-game(以具体的构建任务名为准)的百度小游戏工程文件夹,其中已经包含了百度小游戏环境的配置文件:game.json 和 project.swan.json
使用 百度开发者工具 打开构建生成的 baidu-mini-game 文件夹,即可打开百度小游戏项目及预览调试游戏内容。百度开发者工具 的使用方式请参考 百度开发者工具文档。
注意:预览调试时若出现了 当前版本的开发者工具无法发布小程序,请更新最新的开发者工具 的提示,说明填写的 AppID 是小程序的 AppID,不是小游戏的 AppID,请重新申请一个小游戏 AppID。
百度小游戏环境的资源管理
百度小游戏存在着包体限制,超过 4MB 的额外资源,必须通过网络请求下载。当包体过大时,可在 构建发布 面板配置 资源服务器地址 选项,将资源上传到远程服务器,详情请参考 上传资源到远程服务器。
我们建议用户只保存脚本文件在小游戏包内,其他资源都从远程服务器下载。Cocos Creator 已经帮用户做好了远程资源的下载、缓存和版本管理,详情请参考 缓存管理器。
注意:目前百度小游戏在真机上只支持通过 HTTPS 从远程服务器加载资源,所以必须将资源文件放在 HTTPS 服务器上,否则会出现资源加载失败的情况。
分包加载
百度小游戏的分包加载方式和微信小游戏类似,其包体限制如下:
所有包的总大小不超过 8MB
单个分包/主包大小不超过 4MB
具体的分包加载机制请参考 小游戏分包。
平台 SDK 接入
除了纯游戏内容以外,百度小游戏环境还提供了非常强大的原生 SDK 接口,这些接口都是仅存在于百度小游戏环境中的,等同于其他平台的第三方 SDK 接口。这类 SDK 接口的移植工作在现阶段还是需要开发者自己处理。下面列举一些百度小游戏所提供的强大 SDK 能力:
用户接口:登陆,授权,用户信息等
百度收银台支付
转发信息
文件上传下载
其他:图片、位置、广告、设备信息等等
接入百度小游戏的开放数据域
类似微信小游戏,百度小游戏为了保护其社交关系链数据,也实现了一个 开放数据域,可以获取到同玩且双向关注的好友信息。这是一个单独的游戏执行环境。开放数据域中的资源、引擎、程序,都和主游戏完全隔离,开发者只有在开放数据域中才能访问百度小游戏提供的 API swan.getUserInfo()、swan.getUserCloudStorage() 和 swan.getFriendCloudStorage(),用于获取相应的用户数据。
详细的百度小游戏开放域发布流程,请参考 接入开放数据域。
百度小游戏已知问题
目前 Cocos Creator 对百度小游戏的适配工作还未完全结束,暂时还不支持以下组件:
VideoPlayer
WebView
参考链接
百度小游戏注册指导文档
百度开发者工具文档
百度小游戏 API 文档
百度小游戏分包加载
Prev: 发布到小米快游戏
Next: 开放数据域

Cocos Creator 是一个开源引擎,连同范例、文档都是开源的。在你开发游戏的过程中,当发现了引擎、文档或者范例不够完善的地方,如果仅仅是向官方团队提出建议,官方团队可能会因为人力资源的紧张而无法及时跟进。在此我们欢迎所有用户主动向我们提交 PR,帮助 Cocos 越做越好。引擎有 Bug?提 PR!范例难看?提 PR!API 注释不清晰?提 PR!文档有错别字?提 PR!想要把你的宝贵修改贡献给游戏社区?提 PR!以下几个是目前官方比较常用的开源仓库,这些仓库都可以提交 PR。
Cocos 引擎官方仓库:GitHub
Gitee
下面让我们来看一下,如何从零开始在 GitHub 上向 Cocos 提交代码。
注册一个 GitHub 账号
打开 GitHub 网站 注册账号。若之前已经有注册过,那直接登录就可以了。
环境配置
安装 Git
首先先确认电脑是否已经安装 Git,命令行输入 git,安装过则会输出以下内容:
未安装过则 下载 Git 并安装。安装过程中的所有选项保留默认就可以了,一直点 next,直到安装完成。
安装 Git 客户端 —— GitKraken
GitKraken 是比较常用的 Git 客户端工具。如果不使用 GitKraken 的话,Git 操作全部要通过命令行操作完成,比较麻烦。下面以 Windows 版本为例进行演示。
首先需要下载 GitKraken 并解压缩,进行安装。
安装完成后界面如下图所示:
Fork 项目
以手册文档的代码仓库 creator-docs(GitHub
Gitee)为例。进入手册文档仓库页面,点击右上角的 Fork 按钮,如下图所示:
Fork 完成后,会自动跳转到你的 GitHub 仓库页面,可以看到已经生成了 docs-3d 项目副本,如下图所示:
将远程仓库克隆到本地仓库
1、首先需要到你的远程仓库复制 远程仓库项目地址,如下图所示:
2、切换到 GitKraken 后点击上方的 Clone a repo 按钮,跳转到 Clone 页面,粘贴刚才复制的 远程仓库项目地址,然后填入相关配置。如果想让本地的文件夹名称和项目名称一样,那么在本地存储路径后添加 /docs-3d。配置完成后点击 Clone。
克隆完成后就会在本地自动创建 docs-3d 文件夹并且在 GitKraken 上自动打开项目。
上传本地修改到远程仓库
1、检出需要的分支。在左侧的 REMOTE 目录下有一个 origin 仓库,这是你自己的远程仓库。例如要修改的分支是 next 分支,则点击 origin 后双击 next 分支。如下图所示:
注意:根据不同的版本,还需要切换不同的分支,例如:
vX.Y 分支:对应 X.Y 版本所用分支
develop 分支:开发分支
2、打开本地 docs-3d 项目进行修改,修改完成后查看仓库详情,如下图所示:
3、提交暂存区文件到本地仓库。将你要上传的修改文件提交到本地暂存区,然后在下方备注提交内容注释。完成之后点击 Commit,将暂存区文件提交到本地仓库。完成后点击 Push。步骤如下图所示:
4、将本地仓库的修改推送到自己的远程仓库 origin。
5、完成之后,到 GitHub 自己的 docs-3d 远程仓库查看(可以从 右上方的头像 -> Your profile -> Repositories -> docs-3d 进入你的远程仓库),可以看到已经有本次的提交信息了。然后点击 New pull request。
6、点击 New pull request 后会跳转到官方仓库的 Open a pull request。标题会自动填入刚才提交的信息,也可自行修改。下方的填写信息区域需要对提交内容进行适当的补充。特别是针对引擎本身的修改,请将问题描述、改动内容、涉及版本、相关平台等信息补充完整。如果有相关 Issue,或者论坛地址也可以贴上来。最下方的是本次提交的 PR 的改动详情。填写完成后点击 Create pull request。
7、创建完成后在官方仓库 docs-3d 的 pull requests 页面中可以看到创建了一个新的 PR。官方人员会收到提醒并将 PR 指派给相关人员进行 review 和合并。到此 PR 创建完成,若官方审核通过,就会把这个 PR 的修改合并到官方仓库中了。如果上方的Open图标变为Merged图标,则表示修改已合并到官网。若官方觉得有需要,也会在该 PR 上展开进一步讨论。请留意 GitHub 相关消息或关注 PR 所在页面,以免错过讨论。如果你需要修改 PR 提交的内容,请重复 上传本地修改到远程仓库 中的 2、3、4 步骤。
添加官方仓库
如果距离上次克隆仓库已经挺长时间,那么请在提交 PR 前先从官方仓库获取最新的修改以防和其他人的修改发生冲突。
1、添加官方仓库。点击 GitKraken 左边列表的 REMOTE +,如下图所示:
2、在 GitKraken 的 docs-3d 本地仓库的左侧,可以看到有 origin 和 cocos-creator3D 两个远程仓库,分别是自己的远程仓库和官方仓库。可以看到 远程 -> cocos-creator3D 下已经有了官方仓库的各个分支,如下图所示:
3、从官方仓库拉取最新更新。切换到要拉取的分支,然后点击左上方的 Pull。如下图所示:
注意:在更新官方版本前,如果你完全不熟悉 Git 的操作,建议先确保没有在本地的 Git 仓库中进行任何文件的改动。如果有的话,建议先手动还原,然后等更新完毕后再手动把改动添加回来。
如何反馈文档有关的问题
针对文档本身的问题,建议通过 GitHub issue 进行反馈,下面我们简单演示一下。在提交问题之前请先确认:
文档版本和 Creator 版本是否一致
操作步骤是否正确
是否是文档本身的问题,例如代码错误或者根据文档步骤执行出现异常等。
若以上问题都是确定的,那么,有以下两种提交方式:
1、可点击 Creator 官方文档右下方的 提交反馈 按钮,进入提交 issue 界面。
填写完成后点击 Submit new issue 提交 issue,就完成了。
2、或者也可以进入官方仓库 creator-docs(GitHub
Gitee),选择 Issue -> New issue 进入提交 issue 界面,填写内容并提交。
本次提交 pr 和提交 issue 的教程到这里就结束了,若有不理解或者有误的地方请根据上述步骤向我们反馈。有些人可能会问,为什么要这么麻烦的提交问题。其实,正确的提交问题可以节省很多的沟通成本,而且有些问题可能在初步排查的时候就可以解决了,或者会发现只是由于自己粗心大意导致的。而官方节省下来的人力就可以更好的去服务于 Creator,让 Creator 能更好地为游戏开发者服务。
Prev: 进阶主题
Next: 存储和读取用户数据

我要回帖

更多关于 开发小游戏 的文章

 

随机推荐