当我过去编写Java代码时,有诸如“ grid bag”和box之类的布局管理器。

我正在使用Cocos2D-X进行游戏,在将对象放置在屏幕上时遇到麻烦,因此它们不是硬编码位置,而是基于布局。设备之间的像素差异是导致我出现问题的原因。

我知道Cocos2D有解决此问题的方法,但是我的作品又大又高质量,我想根据设备确定大小。

因此,我在考虑只使用本机OpenGL,但尝试尝试一下,可能无法弄清楚是否已有布局管理器。

谁能讨论在OpenGL中布局对象的方式? C ++

最佳答案

OpenGL具有视口的概念。这是您要绘制到的屏幕/窗口坐标中的框。设置视口后,现在使用的是有时称为“摄影机坐标”的摄影机。

相机坐标从视口最左端的-1.0变为最右端的1.0。同样,对于Y坐标,在最底端为-1.0,在最顶端为1.0。视口之外的任何东西都不会绘制。

您的模型可以存在于您喜欢的任何坐标系中。然后,您可以使用转换矩阵将对象转换为相机坐标。

关于c++ - OpenGL,C++->如何在屏幕上布置对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17002573/

10-11 22:49
查看更多