Questions tagged «aspect-ratio»

12
您如何使用Unity 2D处理宽高比差异?
对于这个问题,我已经得到了很多答案,但是它们都是通用的,通常不是很有用。这些教程都没有涉及长宽比和移动设备的处理,并且有无数种方法可以实现,似乎都存在缺陷。 我真的很想知道成功的游戏在没有大量不同尺寸资产的情况下,如何在iOS和Android上处理不同的宽高比。 我严格来说是移动设备,而不是台式机,特别是Unity设备,我不在乎UI,我只在乎游戏画布。 我想到的问题是,某些关键的东西必须放在某些地方并且不能掉到屏幕上。如今,在顶部或底部使用黑条是不可接受的。

6
您将如何在2d平台机中处理不同的长宽比?
很久以前,4:3几乎是您在PC上找到的唯一纵横比。今天,最常见的显示器是16:10,但是大多数新显示器(尤其是笔记本电脑)是16:9 我正在写一个2D平台游戏,但我无法决定如何处理所有不同的比率。 这里有一些想法: 4:3获得更多内容,宽屏在顶部和底部切割 16:9获得更多内容,其他内容则左右切 游戏为16:9,其他AR带有黑色水平条 游戏为4:3,其他AR带有黑色竖线
41 2d  aspect-ratio 

1
如何防止视口拉伸/变形?
基本上,我想知道当视口/窗口大小改变时如何消除渲染图像的变形或拉伸。 下图举例说明了我正在谈论的变形/拉伸: 原始图像(方形窗口) 变形/拉伸图像(矩形窗口) 理想情况下,第二个图像应在不进行水平拉伸的情况下显示球体,并向用户显示更多场景,以说明更大的窗口大小。 如何才能做到这一点? 我正在使用OpenGL渲染图像,并且通过调用使用了透视投影: glMatrixMode(GL_PROJECTION) glLoadIdentity() gluPerspective(60, window.width/window.height, 0.01f, 100.0f) 纵横比width/height与我遇到的所有文档/教程一致,因此我并不认为它是错误的。但是,我怀疑它正在影响拉伸问题。 经过思考 老实说,随着我对这个问题的思考越来越多,我相信解决方案涉及到弯曲(y方向上的视场)角度与纵横比之间的直接比例关系。 使用上面的图像作为参考,如果宽度增大(导致水平拉伸),则必须增加fovy角度以引起垂直拉伸,从而“固定”渲染图像的比例,这似乎是很合理的。 同样,宽度的减小要求减小凹角。 更新: 因此,在进一步研究之后,我决定更改设置视锥的方法,如下所示: gluPerspective(60 * (float)window.width/window.height, (float)window.width/window.height, 0.01f, 100.0f) 我的期望是正确的,这解决了比例问题。但是,它没有达到我想要的结果。当窗口宽度增加时,渲染的图像变小(但球体确实是圆形的)。相反,球体根本不应该改变大小。仅显示的场景量应更改。

1
如何使字体大小与屏幕分辨率匹配?
因此,我正在使用LibGDX进行游戏,但遇到了问题。 为了使我的游戏适合大多数分辨率,我为每个高宽比创建了一个基础资产,例如主菜单背景图像,并以800X600(4:3),1280X720(16:9)等进行制作。 现在,我正在尝试将TextButtons纳入游戏,以供选择;我的问题是我无法弄清楚哪种字体大小与哪种屏幕分辨率匹配。有没有办法解决这个问题,还是我必须逐一检查我拥有的每个分辨率,然后手动将文本与该分辨率匹配?

2
将字体大小与libgdx中的屏幕分辨率匹配时出现问题
我在以相同的大小在不同的屏幕上显示游戏文本时遇到问题,我做了一个简单的测试。 该测试包括在屏幕上显示适合的文本,我希望文本的大小与屏幕和DPI无关。 我已经找到了这个,这个答案我认为应该可以解决我的问题,但不能解决。在台式机上可以,但是在我的手机上太大。 这是我的Nexus 4的结果:(768x1280,2.0密度) 这就是我的MacBook的结果:(480x800,密度为0.6875) 我正在使用Open Sans Condensed(链接到Google字体) 如您所见,在台式机上看起来不错,但是在手机上却很大。 这是我测试的代码: public class TextTest extends ApplicationAdapter { private static final String TAG = TextTest.class.getName(); private static final String TEXT = "Tap the screen to start"; private OrthographicCamera camera; private Viewport viewport; private SpriteBatch batch; private BitmapFont font; @Override public void …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.