gpt4 book ai didi

java - libGDX - 在图像周围制作边框

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:20:33 29 4
gpt4 key购买 nike

我可以在图像周围制作边框吗?我有很多 2D block ,当玩家将鼠标悬停在其中一个 block 上时,我想显示纹理/图像周围的边框。

这就是我实际绘制 block 的方式(我不认为它相关,但也许它会有所帮助):

batch.draw(map.map[mapPos].TEXTURE, (mapPosX * Block.WIDTH), (mapPosY * Block.HEIGHT), Block.WIDTH, Block.HEIGHT);

是否可以使用代码或者我应该制作一个带有纹理和边框的单独图像?有什么想法吗?

最佳答案

您可以尝试使用 ShapeRenderer先绘制边框,然后 batch.draw 覆盖它。这完全是在代码中完成的,没有使用纹理。下面的代码添加了一个蓝色边框。

render() 中,在 batch.end() 之后添加以下内容。

batch.end(); // Add the following after this line

sr.setProjectionMatrix(camera.combined);
sr.begin(ShapeType.Line);
sr.setColor(new Color(0,0,1,0));
sr.rect((mapPosX * Block.WIDTH), (mapPosY * Block.HEIGHT), Block.WIDTH, Block.HEIGHT));
sr.end();

当然,您需要在ScreenApplicationListener 实现中初始化ShapeRenderer。只需在声明和初始化批处理的代码中执行即可。

在你的游戏类中:

SpriteBatch batch; //Put the following below this line
ShapeRenderer sr;

在你的构造函数中:

batch = new SpriteBatch(); //Put the following below this line
sr = new ShapeRenderer();

编辑:我重写了函数,以便您可以在绘制纹理批处理后绘制形状。

关于java - libGDX - 在图像周围制作边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20786908/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com