问题标签 [orthographic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4197 浏览

android - OpenGL ES 2.0 (Android) 中的 2D 渲染(特别是矩阵)

所以我试图渲染两个移动的四边形,每个在不同的位置。我的着色器尽可能简单(顶点仅由模型视图投影矩阵转换,只有一种颜色)。

每当我尝试渲染某些东西时,我只会得到一些颜色!我之前只在 OpenGL 中完成了 3D 渲染的工作,所以我遇到了 2D 的问题。

这是我的基本渲染循环,稍微简化了一点(我正在使用由提供的矩阵操作方法,android.opengl.Matrix并且program是我创建的一个自定义类,它只是调用GLES20.glUniformMatrix4fv()):

此时,我渲染四边形(对每个四边形重复此操作):

我所看到的只是每个四边形的一小部分颜色!我在这里束手无策,我已经尝试了我能想到的一切,我正处于我对着我的电脑尖叫并在房间里扔手机的地步。有人有任何指示吗?我使用 Ortho 错误吗?我 100% 确定我以 Z 值为 0 渲染所有内容。我尝试使用frustumM而不是orthoM,这样我就可以看到四边形,但只要它们移动它们就会完全倾斜,如果我这样做是有道理的正确理解截锥体的工作方式(无论如何,它更适用于 3D 渲染)。

如果有什么不同,我定义了我的视口

传递给 orthoM 的值在哪里windowWidth和是相同的windowHeight

编辑:可能值得注意的是,这些android.opengl.Matrix方法将偏移量作为第二个参数,以便可以将多个矩阵推入一个数组中,这就是第一个0的用途

另一个编辑:作为参考,这是我的顶点着色器代码:

另一个编辑:我尝试交换Projection * ModelViewModelView * Projection但现在我得到了一些非常时髦的形状......

0 投票
1 回答
771 浏览

ios - ios opengl es 2.0,当我应用正交时,我的矩形不是正方形

我正在学习opengl es 2.0。我正在尝试在 opengl es 2.0 中应用正射投影我画了一个正方形,但实际上我没有在屏幕上得到正方形。而且我不确定我缺少哪一部分。感谢您的帮助!setupRenderingEnv 中有一些我没有发布的方法。但这些方法用于设置框架并且效果很好。并且 m_program 创建得很好。再次感谢您的帮助。

0 投票
3 回答
7659 浏览

scroll - libGDX:如何让相机指向移动的精灵?

我是 libGDX 和 android 游戏开发的新手。我想实现这一点:我有一个Screen和在其中,一个沿 X 轴移动的球精灵。现在我想在精灵移动时将视口居中。就像在愤怒的小鸟中一样,相机跟随小鸟飞过天空。

我怎样才能在我的游戏中使用OrthographicCamera

0 投票
1 回答
452 浏览

unity3d - 具有 DirectionalLight 组件的 GameObject 未被照亮

我正在使用 Unity3D 和 Vuforia 做一个增强现实应用程序。
对于我的增强现实场景中的每个游戏对象,我都会向它添加一个 Light 组件并将其定义为 DirectionalLight。在这个场景中,游戏对象被照亮,但是当我切换到另一个场景(不破坏游戏对象)时,它们没有。
我已经检查过了,他们仍然有 Light 组件,但由于某种原因没有被照亮。
你们有什么线索可能是什么问题吗?

PS:第二个场景是正常场景,与手机摄像头没有互动。并且相机上的投影是正交的。

0 投票
1 回答
477 浏览

textures - 具有正交投影的 JOGL 场景中的白框

我正在使用最新版本的 JOGL 2.0

我的场景是使用正交投影设置的,我正在尝试在场景底部添加纹理。纹理是 1600 x 100 PNG 文件。

如果我使用 1000 x 1000 PNG 文件,则纹理呈现正常,但是当我使用 1600 x 100 纹理时,我得到一个白框。

我已经使用

我正在使用加载纹理

我正在使用

0 投票
1 回答
1093 浏览

opengl - 如何在 OpenGL 3.0+ 中从模型空间移动到正交视图?

我最近在 OpenGL 中完成了一些示例,这导致我在空间中绘制了一些三角形-1 >= x <= 1-1 >= y <= 1. 我需要做什么才能移动到正交视图?我需要执行哪些转换?我假设生成的变换将作为统一变量设置到顶点着色器中,然后应用于任何传入的顶点。

使用像素作为视图的比例(即 1024x768)还是使用逻辑单位(例如像素 x1000)是否明智?

0 投票
1 回答
1179 浏览

opengl - 使用 GL_LINE_STRIP 绘制 OpenGL 正交草图

在将我的草图线绘制到屏幕上时,我遇到了 openGL 的问题,因为它似乎在原点添加了一个额外的点,而该点不在点列表中:

图像

(0,0) 绝对不在要绘制的数组中的点中,只是似乎无法推理出来。我猜可能是我的数组大小太大或其他什么,但我看不到它

这是我用于填充数组和绘制调用的代码

这是我在鼠标回调中添加点的地方

最后是我简单的正交顶点着色器

0 投票
1 回答
3971 浏览

c - 从 glOrtho 切换到 gluPerspective

我在 (0,0) 处有一辆汽车,并设置了一些障碍,但现在我主要关心的是从 glPerspective 切换到 glOrtho,反之亦然。当我从透视切换到正交时,我得到的只是黑屏。

我已经尝试使用清除深度缓冲区,但仍然无法正常工作。

0 投票
3 回答
1742 浏览

math - 原点在屏幕左下角的正交投影

我正在使用 python OpenGL 绑定,并尝试只使用现代 opengl 调用。我有一个带有顶点的 VBO,我正在尝试使用传递给顶点着色器的正交投影矩阵进行渲染。

目前我正在用以下值计算我的投影矩阵:

我从这里得到的代码:

正交投影矩阵的公式?

这似乎工作正常,但我希望我的 Origin 位于屏幕的左下角。这是一个我可以在我的矩阵上应用的函数,所以一切都“正常工作”,还是我必须手动翻译每个对象 w/2 h/2?

旁注:坐标是否会与像素位置匹配,并且可以正常工作?

因为我使用的是现代 OpenGL 技术,所以我认为我不应该使用 gluOrtho2d 或 GL_PROJECTION 调用。

0 投票
0 回答
110 浏览

opengl - 顶点着色器中的正交透视,原点左下方

我正在尝试使用正交投影显示我的场景,屏幕左下角的位置为 0,0。到目前为止,我已经得到了一个正交投影,但是当我试图移动原点(使用 glViewport)时,我只得到了屏幕渲染的四分之一。

这是我的代码

http://pastebin.com/BUSuy9fs

任何人都可以帮忙吗?