使用Flame插件

Posted hyhy904

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Flame插件相关的知识,希望对你有一定的参考价值。

在pubspec.yaml下添加flame插件,并通过flutter packages get命令下载插件,或者使用Visual Studio Code保存文件会自动下载插件。

dependencies:
flutter:
sdk: flutter

cupertino_icons: ^0.1.2

flame: ^0.13.0
1
2
3
4
5
6
7
Flame插件已经提供了一个完整的游戏开发框架,所以我们只需要专心编写实际的更新和渲染过程。首先,需要将应用程序转化为游戏模式,要做两个操作:全屏和纵向。而令人感到巴适的是,Flame插件已经封装好了这些实用的功能,我们只需要编写调用代码就可以了。

我们先在main.dart的顶部添加以下引用。

import ‘package:flame/util.dart‘;
import ‘package:flutter/services.dart‘;
1
2
然后在main.dart的main函数内部创建Flame的Util类的实例,调用其实例的全屏(fullScreen)和设置方向(setOrientation)函数,同时要注意,因为这些函数的返回值类型是未来(Future),所以要在这些函数前面添加等待(await)。

未来(Future)、异步(async)和等待(await)是一种特殊的编码方法,它让那些需要长时间才能处理完成的代码在不同的线程上完成,而且不会阻塞主线程。

为了能够等待(await)未来(Future)处理完成,相关的代码必须在异步(async)函数内,所以我们必须修改main函数,使它成为一个异步函数。

void main() async
Util flameUtil = Util();
await flameUtil.fullScreen(http://www.amjmh.com/v/BIBRGZ_558768/);
await flameUtil.setOrientation(DeviceOrientation.portraitUp);
1
2
3
4
到这里为止,我们的main.dart里面应该有以下代码。

import ‘package:flutter/material.dart‘;

import ‘package:flame/util.dart‘;
import ‘package:flutter/services.dart‘;

void main() async
Util flameUtil = Util();
await flameUtil.fullScreen();
await flameUtil.setOrientation(DeviceOrientation.portraitUp);

以上是关于使用Flame插件的主要内容,如果未能解决你的问题,请参考以下文章

Flutter可以开发游戏啦! Flame框架测评

使用Flame Graph进行系统性能分析

perf + Flame Graph火焰图分析程序性能

加载新数据时删除 d3-flame-graph

pg_flame postgresql EXPLAIN ANALYZE 火焰图工具

https://pingcap.com/blog-cn/flame-graph/