无法淡出图像

时间:2012-02-05 01:13:33

标签: java draw fadeout

我正在尝试介绍我正在制作的游戏。所以我得到了一个漂亮的小白色和灰色标志,我想淡入然后淡出。 我正在使用AlphaComposite来淡化它并且它的工作非常漂亮。但我无法让它淡出淡出。我得到的最好结果是徽标变白,最糟糕的是黑屏。

这是我正在运行的代码。

其中一些可能是多余的。但我在这里失踪了什么。我尝试过不同的AlphaComposite设置组合。但他们有点过头了。

对于易于理解的描述的任何提示都将受到高度赞赏,并且对于为什么你的衣服正确的一个很好的解释也会很好。 :)

    private void intro(int duration)
{
    Image introScreen = new ImageIcon("src\\Img\\Logo.png").getImage();
    Graphics2D g = s.getGraphics();
    for (int i = 0; i <= 200; i++)
    {
        int reverse = 100;
        if (i <= 100)
        {
            g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, i * 0.01f));
            g.drawImage(introScreen, 0, 0, null);
            s.update();
        }
        else
        {
            g.setColor(Color.BLACK);
            g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, reverse * 0.01f));
            g.drawRect(0, 0, s.getWidth(), s.getHeight());
            s.update();
            reverse--;
        }
        try
        {
            Thread.sleep(duration / 200);
            // TODO Remove hardcoding
        }
        catch (Exception ex)
        {
            // TODO Add Exception Handling
        }
    }
    g.dispose();
}

0 个答案:

没有答案