我对StageXL非常陌生,所以我仍然在与基本概念做斗争。我从Stagehand stagexl获得了以下代码:
import 'dart:async';
import 'dart:html' as html;
import 'package:stagexl/stagexl.dart';
import 'dart:math';
Future<Null> main() async {
var canvas = html.querySelector('#stage');
var stage = new Stage(canvas, width: 1280, height: 800);
var renderLoop = new RenderLoop();
renderLoop.addStage(stage);
var resourceManager = new ResourceManager();
resourceManager.addBitmapData("dart", "images/dart@1x.png");
await resourceManager.load();
var logoData = resourceManager.getBitmapData("dart");
var logo = new Sprite();
logo.addChild(new Bitmap(logoData));
stage.addChild(logo);
var tween = renderLoop.juggler.addTween(logo, 3, Transition.easeOutBounce);
// var tween = stage.juggler... works just as well
tween.animate.y.to(800 / 2);
}在底部,我们可以使用var tween=stage.juggler或renderLoop.juggler,代码的行为似乎是一样的。文档可以指向这两种方式,但我的理解是,renderLoop是一个流,而不是一个节点,所以stage.juggler对我来说更有意义。在使用上是否有不同之处,是否有其他情况,其中一种比另一种更可取?谢谢。
发布于 2017-12-04 04:34:35
您可以使用Stage.juggler或RenderLoop.juggler。RenderLoop中的Juggler由浏览器驱动(参见RequestAnimationFrame),舞台上的Juggler由RenderLoop.juggler驱动。因此,Stage.juggler更方便您的使用。您还可以创建自己的Juggler实例,并将实例(因为Juggler实现了动画接口)添加到RenderLoop.juggler中。
您可以在这里了解更多有关这方面的信息:
http://www.stagexl.org/docs/wiki-articles.html?article=juggler
https://stackoverflow.com/questions/47623462
复制相似问题