- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我只是使用 LWJGL 3 设置一个简单的渲染器,当它在我的外部显示器上运行时,它看起来像我预期的那样,但是当在我的 Macbook 上调整它的大小时,它会缩小视口(viewport)。然后,如果我移动窗口,它就会修复它。这是我在初始化 GL 内容和调整窗口大小时运行的代码。
public void resize(int width, int height)
{
val near = 0.1
val far = 100.0
GL11.glViewport(0, 0, width, height);
GL11.glMatrixMode(GL11.GL_PROJECTION);
GL11.glLoadIdentity();
float aspect = width / (float)height
float fov = (float)(45.0 / 360.0 * Math.PI)
float fH = Math.tan(fov) * near
float fW = fH * aspect
GL11.glFrustum(-fW, fW, -fH, fH, near, far);
GL11.glMatrixMode(GL11.GL_MODELVIEW);
GL11.glLoadIdentity();
}
这是我看到的
如果我在外接显示器上运行它,它不会改变,它总是正确的。
最佳答案
读取帧缓冲区的大小就是这里的答案。我使用用户传入的像素大小创建窗口,然后读取 frameBuffer 大小以传递给 glViewport。
public Window(String title, int width, int height)
{
_errorCallback = GLFWErrorCallback.createPrint(System.err);
GLFW.glfwSetErrorCallback(_errorCallback);
if (GLFW.glfwInit() != GLFW.GLFW_TRUE)
{
throw IllegalStateException("Unable to initialize GLFW");
}
GLFW.glfwDefaultWindowHints();
GLFW.glfwWindowHint(GLFW.GLFW_VISIBLE, GLFW.GLFW_FALSE);
GLFW.glfwWindowHint(GLFW.GLFW_RESIZABLE, GLFW.GLFW_TRUE);
_window = GLFW.glfwCreateWindow(width, height, title ?: "", 0, 0);
if (_window == 0L)
{
throw RuntimeException("Failed to create window");
}
// Setup Callbacks
// Get the resolution of the primary monitor
GLFWVidMode vidmode = GLFW.glfwGetVideoMode(GLFW.glfwGetPrimaryMonitor());
// Center our window
GLFW.glfwSetWindowPos(_window, (vidmode.width() - width) / 2, (vidmode.height() - height) / 2);
// Make the OpenGL context current
GLFW.glfwMakeContextCurrent(_window);
// Enable v-sync
GLFW.glfwSwapInterval(1);
// Make the window visible
GLFW.glfwShowWindow(_window);
}
然后我读取帧缓冲区大小以传递到 glViewport 和 glFrustum。
public Vector2 frameBufferSize()
{
IntBuffer bufferWidth = BufferUtils.createIntBuffer(4);
IntBuffer bufferHeight = BufferUtils.createIntBuffer(4);
GLFW.glfwGetFramebufferSize(_window, bufferWidth, bufferHeight);
return Vector2(bufferWidth.get(0), bufferHeight.get(0));
}
关于opengl - Macbook Pro 上的 glFrustum 给出了意想不到的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35638229/
标题可能说明了一切。 考虑到 ipad 的处理器与 macbook 相比不算什么,我认为 Macbook 应该能够运行模拟器。不过,我对iphone/ipad的开发不太了解,想就此发表一些看法。 例如
我正试着在新的M1芯片MacBook上运行Python3。我尝试通过官方网站(https://www.python.org/downloads/release/python-391/)和BREW安装p
好的,事情是这样的。我的一个客户声称他在使用 Safari 浏览器的 Macbook Pro 上查看网站时看不到社交图标(在屏幕的左侧)。这些图标在我测试过的所有设备上都清晰可见。是否有任何 Macb
☀️今天我们来给新电脑安装上一些开发工具,因为我的MacBook是 intel 版本的,直接安装anaconda即可,如果是m1芯片的版本,可参考下面教程: 链接: MacBook m1 安装anac
我有一台 MacBook,想在上面开始我的 Android 开发。但我担心它的可能性。是否可以在 Mac OS 上进行 Android 开发? 到目前为止,我知道可以通过像 VMWare 这样的虚拟工
我有一个问题,当我想将我的 PHP 代码连接到我的数据库时,这个错误显示在图片中但是当我通过终端连接我的数据库时,这是有效的 https://i.imgur.com/cpIzV9E.png __con
我目前正在本地开发一个网站(否则,我会直接链接到它),并且正在对一些设备进行一些最后的调试。我遇到的问题是,在配备 Retina 显示屏的 Macbook Pro 上,它迫使整个网站的分辨率宽度变小。
我创建了一些使用媒体查询的 CSS: @media (max-width: 1230px) { .under_navi { height: 300px; tex
我打算将我的 MacBook 放在我的楼梯平台/走廊上,以便当楼下的人上来翻查我的卧室/房间时,这样当检测到入侵者时,就会发生一组脚本事件,例如从 10 开始倒计时,然后是非常响亮的音乐,但现有的软件
因为m1芯片是arm版本的架构,以前在mac上的很多软件都是基于intel架构的软件,apple开发了rossta2,可以在m1上运行intel架构的软件,但是性能会有损失 python的3.9版
我想买一台新的 macbook Air M1。我想知道 selenium 测试工具在同一台机器上是否正常工作?如果有人尝试过,请分享您的经验。 最佳答案 selenium docker没有在M1上运行
我在他们的网站上安装了最新版本的 Node,但是我遇到了 png 和段错误等问题,查了一下发现这是版本 16 上的一个常见问题。所以我决定降级到稳定版本(14),这是我一直做不到的。我试过了 npm
关闭。这个问题需要debugging details .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 8 个月前关闭。 Improve this quest
我最近换了一个macbook。我错过了正确的控制键,我的小手指开始疼痛,因此我将我的 Cmd 映射到 Ctrl 单独在 emacs 中,我已经将 Caps 映射到 Ctrl 和 Ctrl 到 Caps
我正在编写一个小型音频处理程序,并且我需要某种方法来从 Macbook 中的麦克风获取音频输入。 缓冲区轮询?通知?我应该注意什么类/框架? 最佳答案 最简单的方法之一是使用音频队列。它相当抽象,有相
第一次得到新的MBP 2016。尝试设置PHP、MySQL 和 Apache。使用命令启动Apache sudo apachectl restart 然后通过安装PHP brew install ph
显示模式设置:全屏.displaywidth =(1440,900,16,0) 当前显示分辨率:1440*900 缩放。 代码: fullscreen.pixelperframe = ((full
在我寻找禁用 Macbook 键盘的解决方案时,我目前正在与 Launchd 作斗争。 首先介绍一些背景知识:我在我的 Macbook Pro 2010 型号上洒了一些水,此后键盘上的某些键不再起作用
我正在 Mac 上构建一个项目。它以 glibtoolize: command not found. 我没有找到安装 glibtool 和 glibtoolize 的任何说明。所有搜索结果都在讨论安装
我在一个有 Canvas 的网站上工作。我在 Canvas 上有一个图像,我想做的是捏缩放图像(网页最终将在触摸屏上显示)。我正在使用 jGestures 来检测捏合事件。但是,我想知道是否有一种方法
我是一名优秀的程序员,十分优秀!