首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用开始帧和结束帧加载动画[P5.Play]

无法使用开始帧和结束帧加载动画[P5.Play]
EN

Stack Overflow用户
提问于 2021-10-12 05:21:07
回答 1查看 25关注 0票数 2

正如P5.Play引用所指定的,我尝试使用开始帧和结束帧在预加载中加载动画,它只加载第一帧和最后一帧,而不是预先填充它们之间的所有帧。这对于有15帧左右的动画来说不是问题,但我有一些关于80+的。

代码语言:javascript
复制
function preload() {
  chargeExplosion = loadAnimation('assets/chargeExplosion/frame0000.png', 'assets/chargeExplosion/frame0081.png');
}

function setup() {
  createCanvas(500, 500)
}

function draw() {
  explosion1 = createSprite(width / 2, height / 2, 40, 40);
  explosion1.addAnimation('boom', chargeExplosion);
}

这段代码过于简单,因为我有几百行以上的代码,但我已经确保绝对没有任何干扰。当我单独预加载每个单独的帧时,动画运行得很好,我真的不想在剩下的帧中也这样做。

EN

回答 1

Stack Overflow用户

发布于 2021-10-13 05:32:36

p5.play中的

  1. Sprite是持久的。您希望在安装过程中(或可能在响应某些事件时)创建它们。
  2. 为了显示您已创建的sprites,您需要调用drawSprites()

代码语言:javascript
复制
let chargeExplosion;
let explosion1;

function preload() {
  chargeExplosion = loadAnimation('https://www.paulwheeler.us/files/AnimFrame00.png', 'https://www.paulwheeler.us/files/AnimFrame02.png');
}

function setup() {
  createCanvas(windowWidth, windowHeight);
  explosion1 = createSprite(width / 2, height / 2, 40, 40);
  chargeExplosion.frameDelay = 30;
  explosion1.addAnimation('boom', chargeExplosion);
}

function draw() {
  background(220);

  drawSprites();
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.0/p5.js"></script>
<script src="https://www.paulwheeler.us/files/p5.play.js?r=0"></script>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69535420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档