当前位置: 首页 > news >正文

Flutter 内嵌 unity3d for android

前言:

最近刚整完 unity3d hybridCLR 更新代码和资源,我们 趁热打铁 将 Unity3D 嵌入 Flutter 应用中。实现在 Flutter 使用 Unity3D, 可以做 小游戏 大游戏; 之前都是 内嵌 Webview 来实现的。虽然 CocosCreator 做出来的效果也不错,但是和 Unity3D 来比 花样还是少很多。那么我们今天的姿势就是 将 Unity3D 嵌入现有 Flutter 项目中,大致效果:

flutter 内嵌 unity3d

 1.将 unity3d 项目拷贝到 Flutter

现有 Flutter 项目 引入 最新的 flutter_unity_widget 插件

flutter_unity_widget: ^2022.2.1

Flutter 项目根目录 新建一个 unity 文件夹, 把 unity3d 项目拷贝进去, 之所以这么操作:是因为 下一步:  unity3d 导出  Android 工程的时候,它会在按照目录层级。 对应 在Flutter 的 android 目录 创建一个Android工程库,并且修改 Android 配置

 2.将 unity3d项目 导出

这里使用的 unity3d 项目就是 我们之前做好的 (使用 HybridCLR + Yooasset 实现热更新),来导入:unity3D 插件我们 使用flutter_unity_widget 需要的插件,我们在 下载最新的版本,导入 unity3d

  1. 首先确认我们 unity3d 项目的 平台 android
  2. 修改导出 Android 工程 的配置
  3. 检查模块
  4. 导出工程,使用flutter插件的导出
  5. 导出完毕之后
  6. 现在你要直接运行也可以,但是当你 打开unity widget 大概率奔溃:我们还需要在 AndroidManifest.xml 添加 屏幕常亮的权限
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <!-- 声明应用需要使用网络 -->
    <uses-permission android:name="android.permission.INTERNET" /><!-- 声明应用访问网络状态的权限(可选) -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><!-- 声明应用访问 Wi-Fi 状态的权限(可选) -->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

 遇到的问题:

低端机器奔溃:Vulkan - Out of memory! (allocating memory for image),说是 Vulkan 切换 切换到 OpenGL ES, 我这里是质量设置为 中等

到目前为止 我们就完成了 Flutter项目 嵌入 unity3d,并且我们的 Unity3D 项目还是可以热更新的。这对于游戏来说可是很重要的哦;项目就没必要分享了吧。

http://www.lryc.cn/news/504697.html

相关文章:

  • sqlite加密-QtCipherSqlitePlugin 上
  • 正交投影 (Orthographic Projection) 详解
  • 盛元广通畜牧与水产品检验技术研究所LIMS系统
  • 三维空间刚体运动4-1:四元数表示变换(各形式相互转换加代码——下篇)
  • PyTorch如何通过 torch.unbind 和torch.stack动态调整张量的维度顺序
  • 【Unity3D】报错libil2cpp.so找不到问题
  • 事件冒泡机制详解
  • 红米Note 9 Pro5G刷LineageOS
  • 6.3.1 MR实战:计算总分与平均分
  • ARM循环程序和子程序设计
  • 静态路由、RIP、OSPF、BGP的区别
  • 知识分享第二十八天-数学篇一
  • BigDecimal在进行除法运算时需要注意四舍五入的位置
  • 第二部分:进阶主题 14 . 性能优化 --[MySQL轻松入门教程]
  • Mac电脑设置鼠标的滚轮方向
  • 【LDAP】LDAP概念和原理介绍
  • Android系统(android app和系统架构)
  • Android HandlerThread、Looper、MessageQueue 源码分析
  • HTML知识点详解教程
  • [数据结构#1] 并查集 | FindRoot | Union | 优化 | 应用
  • 科研绘图系列:R语言绘制网络图和密度分布图(network density plot)
  • Linux中输入和输出基本过程
  • 使用 acme.sh 签发和自动续期 ssl https 证书
  • spring重点面试题总结
  • 新的一章:codegeex
  • 游戏引擎学习第50天
  • 快速理解类的加载过程
  • 医院跌倒检测识别 使用YOLO,COCO ,VOC格式对4806张原始图片进行标注,可识别病人跌倒,病人的危险行为,病床等场景,预测准确率可达96.7%
  • [Unity Shader] 【游戏开发】【图形渲染】Unity Shader的种类2-顶点/片元着色器与固定函数着色器的选择与应用
  • 浏览器端的 js 包括哪几个部分