使用 OrthographicCamera 调整图像大小
sizing images with OrthographicCamera
我是 libgdx 的新手,这个问题可能很明显,因为他们在每个教程中都跳过了它。
但是假设我这样设置相机:
cam = new OrthographicCamera(100, 100);
这意味着我现在将使用我自己的单位而不是像素。那么我怎么知道制作图像的尺寸呢?比如说我想要一个图像来填充相机的宽度和高度的一半。我该怎么做?我要把图像设为 100x50px 吗?这对我来说毫无意义。
你说你在定义相机时使用的是自己的单位,但当你问是否应该将图像设为 100x50px 时,你仍在考虑像素。
由于您使用的是自己的单位,我认为它们并没有完全脱离原始像素单位,这意味着现在一切都应该由您的单位来衡量,包括图像的大小。
如果您可以计算出您的 1 个单位代表像素,您就可以确定可以将所有图像缩放到的比例。
那么你可以说你的图片应该是 100x50units 的大小,你不需要让图片适应这个条件,你只需要调整它的比例,使其与你定义的单位测量值相对应。
如果您使用 SpriteBatch
绘制图像,您可能会发现 API 中记录的几个定义的绘制重载可以为 X 和 Y 指定比例,并且可以证明在这种情况下很有用。
我是 libgdx 的新手,这个问题可能很明显,因为他们在每个教程中都跳过了它。
但是假设我这样设置相机:
cam = new OrthographicCamera(100, 100);
这意味着我现在将使用我自己的单位而不是像素。那么我怎么知道制作图像的尺寸呢?比如说我想要一个图像来填充相机的宽度和高度的一半。我该怎么做?我要把图像设为 100x50px 吗?这对我来说毫无意义。
你说你在定义相机时使用的是自己的单位,但当你问是否应该将图像设为 100x50px 时,你仍在考虑像素。
由于您使用的是自己的单位,我认为它们并没有完全脱离原始像素单位,这意味着现在一切都应该由您的单位来衡量,包括图像的大小。
如果您可以计算出您的 1 个单位代表像素,您就可以确定可以将所有图像缩放到的比例。
那么你可以说你的图片应该是 100x50units 的大小,你不需要让图片适应这个条件,你只需要调整它的比例,使其与你定义的单位测量值相对应。
如果您使用 SpriteBatch
绘制图像,您可能会发现 API 中记录的几个定义的绘制重载可以为 X 和 Y 指定比例,并且可以证明在这种情况下很有用。