0

我在 Opengl ES 上介绍我,我可以用顶点绘制纹理并将其移动到屏幕上。

但我无法得到像素和单位之间的关系。例如:

我想画一个 64x64 的纹理,在屏幕的所有宽度上重复,如果屏幕宽度是 640,意味着纹理会重复 10 次,我该怎么做呢?

我真的在网上搜索过,但我找不到任何东西,这可以帮助我。

使用这个:

GLU.gluPerspective(gl, 45.0f, (float)width / (float)height, 0.1f,100.0f);

我可以“控制”(我认为)纹理的大小,将第二个参数更改为 45.0f,但我不知道在此函数中执行哪个操作以获得宽度的值screen 设置屏幕的单位数,并在以后正确使用它们。

 gl.glTranslatef(0.0f, 0.0f,-0.0f);

这用于获得纹理的正确视图,嗯,这就是我所理解的。

我真的不知道我是否走对了路。

4

1 回答 1

0

您需要阅读一些内容才能了解 openGL 世界。你可以试试 http://iphonedevelopment.blogspot.com/2009/05/opengl-es-from-ground-up-table-of.html

或任何其他。任何 iPhone 教程也适用。您应该尝试使用正交投影(或单位矩阵投影)来制作您想要的东西,但是尝试在 openGL 中使用屏幕像素作为单位是非常难看的。

于 2012-05-04T18:44:30.893 回答