使用Flame插件

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

dependencies:
flutter:
sdk: flutter异步

cupertino_icons: ^0.1.2async

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里面应该有如下代码。ci

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);}

相关文章
相关标签/搜索