在 Löve2D 中使用四边形关闭抗锯齿

Posted

技术标签:

【中文标题】在 Löve2D 中使用四边形关闭抗锯齿【英文标题】:Turning off antialiasing on zoom with quad in Löve2D 【发布时间】:2021-11-29 13:39:17 【问题描述】:

我正在使用Löve2D 编写一个小游戏。 Löve2D 是 Lua 的开源游戏引擎。我遇到的问题是,当您在 integer 位置绘制时,某些抗锯齿过滤器会自动应用于您的精灵。

love.graphics.draw( texture, quad, x, y, r, sx, sy)

我的计划是:

    将一个小图像切成 9 以适应 Quad。 放大它以适应 UI。 制作可变 UI。

我的头像是:full image

放大:5px green rectangle in 15px rounded rectangle

我的测试代码是:

function love.load()
    sprite = love.graphics.newImage('image.png')
    centerbox = love.graphics.newQuad(5, 5, 5, 5, sprite:getDimensions()
end
function love.draw()
    love.graphics.draw(sprite, centerbox, 0, 0, 0, 30, 30)

我只想显示那个蓝色: x=5px, y=5px, w=5px, h=5px

结果: That's not fun 5是整数,30是整数,0是整数

我的用户界面是: That's not cool

我怎样才能只获得我想要的像素? 我已经读过Turning off antialiasing in Löve2D。

【问题讨论】:

关闭filtering就足够了吗?或者你需要一个过滤器,但没有出血?无论如何,如果您使用四边形,则应使用边距,如 Koyaanisqatsi 发布的链接中所述。让事情变得更容易。 【参考方案1】:

你必须阅读...https://love2d.org/wiki/Quad ...尤其是黄色的警报框。

【讨论】:

以上是关于在 Löve2D 中使用四边形关闭抗锯齿的主要内容,如果未能解决你的问题,请参考以下文章

在JAVA中对多边形进行抗锯齿时出现鬼白线

如何在 Windows 中启用字体抗锯齿 [关闭]

在OpenGL中绘制到半透明帧缓冲区时如何抗锯齿? [复制]

cocos creator 抗锯齿

将PDF转换为图像后如何获得可读文本(具有抗锯齿的文本)? [关闭]

C#制作不规则窗体,如何使边缘平滑(抗锯齿)?