Phaser js:是否可以将 css 添加到精灵中?
Phaser js: is it possible to add css to a sprite?
我想从我的 Phaser 游戏中取出一个精灵并添加一些 CSS。可能吗?我做了研究,但一无所获。我想将此 CSS:
添加到我的精灵中
img {
webkit-filter: drop-shadow(1px 1px 0 black)
drop-shadow(-1px -1px 0 black);
filter: drop-shadow(1px 1px 0 black)
drop-shadow(-1px -1px 0 black);
background-color: lightcoral;
}
不,您不能使用 CSS 设置 Phaser 精灵的样式。
但是,如果您使用图像作为 sprite,您可以将该元素作为 img
元素添加到页面,然后对其应用 CSS 样式。但是,它无法在具有该样式的游戏中使用。
如果您想在 Phaser 中执行此操作,一种选择是复制 sprite 并对其着色并从原始 sprite 偏移,使其看起来像一个阴影。
有一个 Sprite Shadow example for Phaser 2 展示了这一点。
var sprite;
var shadow;
var offset = new Phaser.Point(10, 8);
function create() {
shadow = game.add.sprite(game.world.centerX, game.world.centerY, 'hotdog');
shadow.anchor.set(0.5);
shadow.tint = 0x000000;
shadow.alpha = 0.6;
sprite = game.add.sprite(game.world.centerX, game.world.centerY, 'hotdog');
sprite.anchor.set(0.5);
game.input.addMoveCallback(move, this);
}
function move(pointer, x, y) {
sprite.x = x;
sprite.y = y;
shadow.x = sprite.x + offset.x;
shadow.y = sprite.y + offset.y;
}
或者,您可以更新您的资产以包含阴影(如果它应该始终存在的话)。这通常比以编程方式添加它的性能更高。
不,不能将样式应用于 Phaser Sprite,因为 Phaser 会将 Sprite 添加到 Canvas。
但是,您可以使用 Phaser 将阴影效果添加到 sprite。
请注意 CSS 不适用于在 Canvas 上绘制的对象(但您仍然可以将 CSS 添加到 canvas 或父级div)
我想从我的 Phaser 游戏中取出一个精灵并添加一些 CSS。可能吗?我做了研究,但一无所获。我想将此 CSS:
添加到我的精灵中img {
webkit-filter: drop-shadow(1px 1px 0 black)
drop-shadow(-1px -1px 0 black);
filter: drop-shadow(1px 1px 0 black)
drop-shadow(-1px -1px 0 black);
background-color: lightcoral;
}
不,您不能使用 CSS 设置 Phaser 精灵的样式。
但是,如果您使用图像作为 sprite,您可以将该元素作为 img
元素添加到页面,然后对其应用 CSS 样式。但是,它无法在具有该样式的游戏中使用。
如果您想在 Phaser 中执行此操作,一种选择是复制 sprite 并对其着色并从原始 sprite 偏移,使其看起来像一个阴影。
有一个 Sprite Shadow example for Phaser 2 展示了这一点。
var sprite;
var shadow;
var offset = new Phaser.Point(10, 8);
function create() {
shadow = game.add.sprite(game.world.centerX, game.world.centerY, 'hotdog');
shadow.anchor.set(0.5);
shadow.tint = 0x000000;
shadow.alpha = 0.6;
sprite = game.add.sprite(game.world.centerX, game.world.centerY, 'hotdog');
sprite.anchor.set(0.5);
game.input.addMoveCallback(move, this);
}
function move(pointer, x, y) {
sprite.x = x;
sprite.y = y;
shadow.x = sprite.x + offset.x;
shadow.y = sprite.y + offset.y;
}
或者,您可以更新您的资产以包含阴影(如果它应该始终存在的话)。这通常比以编程方式添加它的性能更高。
不,不能将样式应用于 Phaser Sprite,因为 Phaser 会将 Sprite 添加到 Canvas。 但是,您可以使用 Phaser 将阴影效果添加到 sprite。
请注意 CSS 不适用于在 Canvas 上绘制的对象(但您仍然可以将 CSS 添加到 canvas 或父级div)