使用Flutter开发一个仿微信飞机大战游戏
目录
- 为什么使用Flutter
- 项目github地址:
- 运行截图
- 游戏实现
为什么使用Flutter
Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。(摘自百度百科)
个人最看重的Flutter几个优点是跨平台,运行效率高,开发效率高。
- Flutter支持开发安卓,ios移动客户端软件,支持开发web,支持开发windows,macOS,Linux等桌面软件。
- Flutter在Android上会编译为原生二进制so库,运行效率高。没有像RN或weex那样将javascript解释执行的过程。
- 开发时支持热重载,代码保存后,1秒内即可在手机端预览到修改后的效果,非常高效,再也不用改一行代码,编译两分钟等着看效果了。
基于Flutter以上几个优点,Flutter能够解决我工作开发过程中的一些痛点问题,开发效率低,完整构建项目耗时长(项目已进行了模块化,新功能构建时间可以接受,但是老代码未完全模块化,完整构建非常耗时),项目展示股票行情数据,涉及到非常多界面元素的频繁更新,已进行了多方面的优化,但是在几年前的低端机上体验还需要优化,相信Flutter能带来更好的性能表现。
本人目前也在学习摸索中,用Flutter写一个游戏练练手。
项目github地址:
https://github.com/chenyuebo/FlutterWechatPlaneFightGame
项目目前还存在诸多问题,欢迎大家批评指正,大家一起进步提高。
运行截图
游戏实现
游戏主循环使用定时器Timer实现。
定义了Sprite类,即精灵类,游戏中的飞机、子弹、奖励道具等都是继承自该类,我们通过moveTo()、move()等方法控制精灵的位置,通过update()更新sprite的状态,通过getRenderWidget()返回对应的视图widget,利用Flutter对widget高效的管理,绘图没有采用自绘的方式,而是直接使用了Flutter中的Widget,在游戏中通过不停的改变widget的位置模拟出运动的情况。精灵类及其子类继承如下所示:
注:
游戏实现参考了:https://github.com/iSpring/GamePlane
使用Flutter开发一个仿微信飞机大战游戏相关推荐
- cocos2dx一仿微信飞机大战游戏实战一
学习cocos2dx的新手教程实例,简单做个打飞机的小游戏,嗯,先运行看看游戏的效果: 下面我们就开始编写吧,首先我们要解决的几个问题是这个游戏的设计思路,微信的飞机大战游戏,有几个技术点,一是游戏背 ...
- JavaScript趣味编程--仿微信飞机大战游戏--1.画飞机
之前的文章已经介绍了如何使用canvas来画正方形,这次介绍如何使用canvas来画一张图片. 1.新建项目 本次使用的工具Aptana Studio 3,打开软件之后,选择File->New- ...
- 【三】仿微信飞机大战cocos2d-x3.0rc1
上一篇:[二]仿微信飞机大战cocos2d-x3.0rc1 今天的任务是: 1.我机子弹无限量发射 2.三种类型敌机的出现 3.敌机自己碰墙死掉 一.效果界面展示 暂时没有实现子弹打中敌机 二.工程解 ...
- 用Javascript模拟微信飞机大战游戏
最近微信的飞机大战非常流行,下载量非常高. 利用JS进行模拟制作了一个简单的飞机大战[此源码有很多地方可以进行重构和优化] [此游戏中没有使用HTML5 任何浏览器都可以运行]. 效果图: 原理:利用 ...
- 鸿蒙开发实例 | ArkUI JS飞机大战游戏开发
本篇介绍使用ArkUI JS框架开发一款基于鸿蒙操作系统的飞机大战游戏.这款飞机大战游戏是在普通单机游戏的基础上添加了鸿蒙操作系统分布式支持,使游戏可以同时使用多台鸿蒙操作系统设备,为游戏玩家提供分布 ...
- 用java写一个简单的飞机大战游戏
制作一个简单的飞机大战 注意!!!!!,图片素材在我的资源里有. 下面代码排序,非先后顺序.请看清楚类名 Airplane类 package Flyplane;public class Airplan ...
- Android游戏之仿 微信飞机大战
暑假实训的一个程序,也是我第一次接触java和android开发,模仿微信的飞机大战,效果图如下: 一:素材整理 素材来自网络,下载地址在此:http://downlo ...
- Eclipse开发Android平台的飞机大战游戏APP
目 录 摘 要 I 一. 绪论 1 (一) 课题的目的与意义 1 (二) 本课题解决的问题 1 1. 欢迎界面 1 2. 帮助界面 1 3. 游戏界面 1 4. 失败界面 2 5. 胜利界面 2 6. ...
- 用C语言写一个简单的飞机大战游戏(用到easyx图形库)
学习内容:1.背景的运动 2.飞机爆炸效果 3.透明贴图工具 目录 一.需要用到的头文件.全局变量和一些函数.结构体 二.数据初始化以及图片处理 三.主体 四.物体碰撞 五.游戏运行 六.透明贴图工具 ...
- python代码示例500行源代码-500行代码使用python写个微信小游戏飞机大战游戏
这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手. 帮助蹲厕族.YP族.饭圈女孩在无聊之余可以有一样东西让他们振作起来!让他们的左手 / 右 ...
最新文章
- 分布式事务选型的取舍
- Hotpatch潜在的安全风险
- asp.net core mvc 异步表单(Ajax.BeginForm)
- 底部导航栏的几种实现方式
- C语言数据库公共知识,全国计算机二级C语言公共基础知识数据库设计基础
- .gitignore失效 无法忽略node_modules问题
- 【数据结构与算法】数组与链表
- js 验证护照_护照本地策略第2部分| Node.js
- 英文材质翻译表_英语翻译5大技巧,用了才知道是真好
- 还被python收智商税?做大数据的朋友告诉我月薪2w的方法
- java char的意思,java – @(#)字符的含义
- one list to muti list
- 开发板移植mysql_数据库移植到gpu
- 设计模式学习与应用——单例模式
- 工业电气自动化及电工电子技能考核实训平台(高级版)
- Tricore学习-芯片启动流程
- 51单片机:串口通信
- (predicted == labels).sum().item()作用
- C语言冒泡排序(起泡法)
- 关于echarts无数据时显示问题