问题标签 [perspective]
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.
javascript - 画布中类似于 Mode7 的透视变换?
我正在制作一个基于画布的游戏引擎,我想知道是否有人对如何实现俯视视角有任何好的信息。我正在寻找的是介于传统鸟瞰图和旧 SNES mode7 视图之间的某个位置。只是一个轻微的角度,给人一种 3D 的错觉。
我试图找出处理透视倾斜的最佳方法。我没有进行旋转,所以 3D 矩阵的东西会过火,但我需要能够处理以一致的角度渲染地图图层,如果角度是可调节的,那就太好了。我还需要处理深度扭曲。基本上,像素的底行应该是 1:1 的像素宽度和高度,然后对于每一行,它会得到,例如,小 5% 或类似的东西。我想要的是能够提供一个大画布作为纹理,然后提供一个 0 到 90 之间的摄像机角度,其中 0 是完全水平的,90 是鸟瞰图。
任何人有任何相关的教程或示例代码?我在网上搜索了一下,但我发现的所有东西似乎要么不适合在这个特定的应用程序中使用,要么过于复杂,做各种疯狂的 3D 倾斜和旋转的东西。我想要的只是采用正常的平铺网格并将其向后倾斜一点,不要旋转或类似的复杂东西。
这是我想要的一个例子; 这是一个例子。http://img801.imageshack.us/img801/2176/perspectivesample.jpg
底部像素行是 1:1 的像素比,其上方的每一行在水平和垂直方向上逐渐变短。顶部中心区域的源纹理通常约为底部中心区域高度的一半,但它已在垂直和水平方向收缩以适应透视图。
我认为可能最有效的方法是将当前视口状态渲染到另一个平面鸟瞰画布上,顶部和侧面大约有 50% 的额外空间,然后从中切出一个向上的三角形区域并将其绘制到实际可见的画布。
唯一的问题是,在计算角度等方面,我的数学很烂。
java - 脚本错误:“页面上的脚本出现错误”
我的 JSP 页面出现错误:脚本错误:“页面上的脚本发生错误”跑步。由于错误,应用程序挂起,我无法测试我的应用程序。有什么解决办法吗?我必须一次又一次地重新启动我的日食。这会导致文件损坏。
python - 有没有办法将eclipse的java浏览透视图用于python?
我想使用 Eclipse 的浏览视角(“列视图”)进行 Python 开发。有没有办法做到这一点?
perspective - CATransform3D 的 m34 的含义
结构CATransform3D的m34是什么意思,我只知道可以改变视角,但是-0.001和0.001的值是什么意思呢?
language-agnostic - 从透视角度计算尺寸递减
我试图找出一个公式,如何在离我更近的查看窗格中计算远处物体的大小。我确定我在高中时有过这个,但我找不到任何关于正确计算的资源。
我发现以下页面解释了绘制此类事物的正确方法,但我没有看到公式(例如对象的大小、距离):Calculating reductioning size in perspective。我也知道我可以计算视角,就像这个角度大小计算器所示- 但是这假设一个三角形,而不是一个矩形。
图片比文字更有价值,看我的绘画技巧:
说明:从查看窗格(标记为红色)查看时,我将如何计算目标的大小。当您查看范围时,目标肯定看起来要小得多 - 就大小/关系而言要小多少?!
是不是像除以30cm/1000cm那么简单就可以知道10m距离目标的大小?我不需要做一些罪恶/cos功夫吗?假设它是我的整个视野,那么 2 厘米的范围呢 - 它肯定必须在等式中的某个地方。
我不是想在这里重新发明轮子,所有的自我射击游戏都已经自动完成了,但我只是想不出对正确公式的引用,一些指针?我正在寻找范围内目标的大小,无论是绝对数字(5mm)还是相对数字,假设范围是视野的 100%,目标将占据范围的 1/10看法。
opengl - 查找 OpenGL 图像平面坐标
我正在尝试实现一个使用任意相机位置和透视投影的光线跟踪器。我有相机位置、观察位置、视场角,但我无法弄清楚我必须拍摄光线的方向,以便每条光线对应一个像素。如果我能找到一种方法来找到图像平面的坐标,或者光线应该具有的方向矢量,那么它会从那里下坡。任何帮助表示赞赏。
eclipse - 如何在 Eclipse 插件中将文件与透视图相关联
我为 Eclipse 创建了一个与文件扩展名 .eap 关联的编辑器插件
我还创建了一个包含此数据视图的透视图。
我想添加以下行为:当我双击 .eap 文件时,我希望打开 EAP 透视图。
就像您第一次单击 Java 文件时发生的情况一样。
任何帮助表示赞赏!
将要
eclipse-rcp - 如果日食透视图显示在尖括号中,这意味着什么?
我为我们的 Eclipse RCP 项目编写了一个新的透视图,效果很好。但是由于配置错误,我不得不恢复到早期的代码版本,在该版本中这种观点还不存在。
奇怪的是,还原后透视图仍然显示在打开的透视图对话框中。唯一的区别是,它现在显示在尖括号中并出现两次。
尖括号是什么意思?
我怎样才能摆脱这些条目?
非常感谢!
projection - 斜透视 - 投影矩阵化处理
我想扩展处理,以便能够使用倾斜投影(内阁或骑士)渲染 3D 东西。在查看了 camera()、perspective() 和 ortho() 方法的源之后,我能够设置一个正交透视图,然后将 PGraphics3D#camera 矩阵调整为适当的值,并取得部分成功。
这导致正确的透视,但没有表面填充。当删除相机和正交方法调用或两者时,屏幕是空的,尽管我希望 camera(...) 对稍后被覆盖的相同矩阵进行操作。
此外,我对 PGraphics3D 中的矩阵有点困惑:相机、模型视图和投影。虽然 OpenGL 保留了两个矩阵堆栈 - modelView 和投影,但这里还有第三个 - 相机。任何人都可以阐明这些矩阵之间的区别和关系吗?
这将有助于了解何时使用/设置哪个。
eclipse - 管理遥不可及的 Eclipse 视图
当我在家工作时,我通常将显示器连接到我的笔记本电脑,启动 Eclipse,分离其控制台视图并将其放在该显示器上。当然,当我关闭笔记本电脑时,我忘记将该视图重新附加到 Eclipse 窗口的可能性约为 120%。
当我再次启动笔记本电脑(没有额外的显示)时,eclipse 启动并且控制台视图变得遥不可及。
有没有办法到达该视图并将其再次放在我的笔记本电脑的显示屏上(除了重新连接外接显示器)?