【问题标题】:LIBGDX Tiled Map not using transparencyLIBGDX 平铺地图不使用透明度
【发布时间】:2016-07-23 10:28:19
【问题描述】:

我正在尝试在平铺地图中的雪地上绘制树木。然而,当我在树下绘制我的玩家精灵时,树木不透明,精灵在白色位下方。我在 gimp 中为树木添加了一个透明通道。我正在使用:

tiledMapRenderer.setView(cam);
        tiledMapRenderer.render();

我尝试过使用

Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA); 

batch.enableBlending(); 不占上风。

【问题讨论】:

    标签: java android libgdx transparency


    【解决方案1】:

    检查以下内容:

    1. 您的图像文件是否正确定义了透明度? (简单:检查任何 图片查看器)
    2. 您是否将图像加载到支持 alpha 的纹理对象中? (简单:使用带有 FileHandle 的默认 Texture 构造函数)

    3. 确保您使用的所有 SpriteBatch 都允许混合。 (它的 默认启用,你也检查过)

    4. 您是否将图像绘制到 FrameBuffer 中?确保您的 FrameBuffer 有一个 alpha 通道。还要检查您在使用前如何清除 FrameBuffer - 如果您使用的是中间 FrameBuffer,最终您应该将它们清除为透明(空白)。

    【讨论】:

    • 我已经完成了你的步骤,除了第二个。我的想法是我不确定文件是如何加载的。我正在使用“Tiled”软件,当我将 .tmx 文件放入 Eclipse 时,我假设它会在后台加载所有信息。
    【解决方案2】:

    别担心,显然gimp在我将其导出为png后并没有保持透明度,所以我使用了ms paint,现在它是透明的。

    【讨论】:

    • 太好了,你让它工作了! Gimp 也可以做到这一点 - 仔细查看导出选项对话框,应该有一个设置来保存带有 alpha 通道的 png(用于透明度)。
    • 顺便说一句,我的回答是正确的,是吗?你的问题是#1 :-)
    • 是的,感谢您的帮助。我已将您的答案标记为正确。
    • 如果您已经在 GIMP 图像中获得了导出文件的透明度,那么很难获得透明度 - 知道您是如何做到这一点的吗?
    • 我想我在勾选框 - 从 Gimp 导出时使用背景颜色。
    猜你喜欢
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 2020-08-24
    • 2016-01-24
    • 2014-10-23
    • 1970-01-01
    • 2017-12-31
    • 2016-07-08
    相关资源
    最近更新 更多