- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使图像淡出然后淡入,这是有效的,但背景图像也会淡出然后淡入此外,当我应用旋转操作(已注释)时,尽管我将其放在事件 Touchup 上,但它仅旋转图像一次,而淡入和淡出应用于每次触摸,但淡入淡出应用于图像和背景:在这里我在此类中应用操作:
public class MainButtons {
public Viewport viewport;
public Stage stage;
public boolean centerPressed;
public Image fire;
public Image center;
public Sound flap;
public OrthographicCamera camera;
public static Table table;
//Constructor.
public MainButtons(SpriteBatch spriteBatch) {
camera = new OrthographicCamera();
viewport = new StretchViewport(KidTele.V_WIDTH,KidTele.V_HIEGH,camera);
stage = new Stage(viewport, spriteBatch);
//InputMultiplexer this is why only input handling from controller
flap= Gdx.audio.newSound(Gdx.files.internal("one.mp3"));
Gdx.input.setInputProcessor(stage);
fire= new Image(new Texture("cars/fire.png"));
//buttonone.setSize(10, 5);
menuTable();
defineCenter();
}
public void defineCenter()
{
center=new Image(new Texture(Gdx.files.internal("0.png")));
center.setBounds(viewport.getWorldWidth() / 5f, viewport.getWorldHeight() / 3f, viewport.getWorldWidth() / 1.5f, viewport.getWorldHeight() / 3f);
center.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
centerPressed = true;
return true;
}
@Override
public void touchUp(InputEvent event, float x, float y, int pointer, int button) {
//center.setOrigin(center.getWidth()/2,center.getHeight()/2);
//center.addAction(Actions.sequence(Actions.rotateTo(360, 2), Actions.fadeIn(1)));
center.addAction(Actions.sequence(Actions.fadeOut(1), Actions.fadeIn(1)));
centerPressed = false;
}
});
//center.setVisible(false);
stage.addActor(center);
}
public void draw() {
stage.draw();
}
public void resize(int width, int height) {
viewport.update(width, height);
}
}
这是屏幕的代码:
public class PlayScreen implements Screen {
private KidTele game;
private OrthographicCamera gamecam;
private Viewport gameport;
private World world;
private Box2DDebugRenderer b2dr;
private MainButtons mainButtons;
private Texture background;
private Sound flap;
public PlayScreen(KidTele game)
{
this.game=game;
gamecam=new OrthographicCamera();
gameport=new StretchViewport(KidTele.V_WIDTH,KidTele.V_HIEGH,gamecam);
//stage=new Stage(gameport,((KidTele) game).batch);
background=new Texture("background2.png");
gamecam.position.set(gameport.getWorldWidth()/2f,gameport.getWorldHeight()/2f,0);
b2dr=new Box2DDebugRenderer();
world=new World(new Vector2(0,0.8f),true);
flap= Gdx.audio.newSound(Gdx.files.internal("one.mp3"));
mainButtons=new MainButtons(game.batch);
}
@Override
public void show() {
}
public void handleinput(float dt)
{
if(Gdx.input.isKeyJustPressed(Input.Keys.BACK)) {
mainButtons.stopMusic();
game.setScreen(new PlayScreen(game));
}
}
public void update(float dt)
{
handleinput(dt);
world.step(1 /60f, 6, 2);
//player.update(dt);
gamecam.update();
}
@Override
public void render(float delta) {
update(delta);
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
b2dr.render(world, gamecam.combined);
game.batch.setProjectionMatrix(gamecam.combined);
game.batch.begin();
game.batch.draw(background, 0, 0, gameport.getWorldWidth(), gameport.getWorldHeight());
game.batch.end();
mainButtons.stage.act();
mainButtons.stage.draw();
mainButtons.draw();
}
@Override
public void resize(int width, int height) {
gameport.update(width, height);
mainButtons.resize(width, height);
}
最佳答案
调用stage.draw()
后,SpriteBatch可能会被设置为某种任意颜色。在你的例子中,它设置了一些来自褪色的 Actor 之一的部分阿尔法。要解决此问题,请确保在绘制背景之前调用 batch.setColor(1, 1, 1, 1)
,这样您就可以保证绘制背景的颜色。
图像仅旋转一次,因为您使用 rotateTo
并每次都给它相同的值。一旦它旋转到 360 度,每次你再次调用 rotateTo
时,它就已经是 360 度了,所以什么也不会发生。在您的情况下,您应该使用 rotateBy
代替。
顺便说一句,当你这样做时,你会绘制两次舞台:
mainButtons.stage.draw();
mainButtons.draw();
关于java - Libgdx 对图像的操作应用于整个 Actor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38113003/
我有一个数据框: title | cast ------------------------------ movie1 | cast1,cast2,cast3 movie2
据我所知,Actor 模型是一种关于并发的理论。 Erlang 和 Scala 都实现了这个理论模型,但它们的实现都不完全符合 Actor 模型。 从计算机科学家的角度来看,Erlang、Scala
我是 akka 流的新手。我将 kafka 用作源(使用 ReactiveKafka 库)并通过流对数据进行一些处理并使用订阅者 (EsHandler) 作为接收器。 现在我需要处理错误并通过错误处理
考虑以下代码示例(版本 1)。此处父 actor (ActorA) 向子 actor (ActorB) 发送消息,然后停止自身。由于父 actor 的自停止,在高负载下,子 actor 甚至在从邮箱中
我有以下 Scala 代码: package dummy import javax.servlet.http.{HttpServlet, HttpServletRequest => H
如何描述“数据流编程”和“ Actor 模型”之间的区别?据我了解,它们并非无关,但又不相同。 DF 是否是一个更广泛的概念,其要点是与控制流模型的区别,而 Actor 模型是更详细的和理论上有根基的
GPars 中的 Actor 有自己的消息队列(邮箱)。假设一个参与者有 15 条待处理的消息,然后系统突然宕机(比如由于电源故障)。这 15 条消息会发生什么。当系统再次启动并运行时,消息队列会自动
我刚刚开始使用 AKKA,并且有一个关于非参与者代码如何与参与者代码对话的基本问题。 非参与者代码如何调用参与者并获得响应?我试过使用 Patterns.ask 从非 Actor 调用 Actor ,
这个问题在这里已经有了答案: 关闭 9 年前。 Possible Duplicate: Casting vs using the ‘as’ keyword in the CLR 我最近了解到一种不同
我在设置边界矩形位置时遇到麻烦,这就是我问这个的原因。当我设置 Actor 类型的对象的边界矩形位置时,看来我传递给 [setBounds(x,y,with,height)] 2 的坐标相对于 Act
我是 Actor 模型的新手。任何人都可以解释 Actor 模型中 Actor 的生命周期吗?我一直在文档中寻找答案,但找不到任何令人满意的内容。 我对 Actor 完成后做什么很感兴趣onRecei
例如,我有两个 Actor ——一个父 Actor 和一个子 Actor 。当 parent 收到一条消息时,它会产生与消息中指定的一样多的子actor。如何测试此功能?有没有办法模拟上下文或其他方法
我目前在 Futures 编程,我对 Actor 很好奇。我想听听有经验的声音: Actor 相对于 future 有什么优势? 我什么时候应该使用一种而不是另一种? 据我所知, Actor 持有状态
Actor 模型框架(例如 Orleans )和复杂事件处理 (CEP)(例如 Apache Storm )之间有什么区别? 其中每种方法都适用(或者一种方法比另一种方法更适用)的使用示例肯定会有所帮
你们中的任何人都可以帮助我理解传入的基本消息吗scala 使用 Actor 模型? 我正在尝试编写一个包含 3 个 Actor 的简单程序。 Actor “BossActor”创建了 2 个 Acto
Akka 1.1.3 文档指出“become 方法对于许多不同的事情都很有用,但它的一个特别好的例子是它用于实现有限状态机 (FSM) 的示例”。在运行时热交换 Akka actor 的实现还有哪些其
我正在尝试使用参与者实现消息处理管道。管道的步骤包括读取、过滤、扩充以及最后存储到数据库中等功能。类似于此:http://sujitpal.blogspot.nl/2013/12/akka-conte
可以使用 actor.send() 或 actor.offer() 向 Actor 发送消息一旦我的 Actor 从其 channel 收到消息,我想返回响应。我该怎么做呢?我没有看到任何明显的内置方
你们中的任何人都可以帮助我理解传入的基本消息吗scala 使用 Actor 模型? 我正在尝试编写一个包含 3 个 Actor 的简单程序。 Actor “BossActor”创建了 2 个 Acto
我目前正在尝试保存特殊 Actors所以如果加载旧 map ,我可以再次将它们放在 map 上。因此我想将它们放入 HashMap> monsterAtMap 中并从那里删除它们Stages .所以我
我是一名优秀的程序员,十分优秀!