gpt4 book ai didi

macos - 如何修复我不赞成使用的 gluOrtho2D()?

转载 作者:行者123 更新时间:2023-12-04 00:41:29 25 4
gpt4 key购买 nike

我有调用的现有代码(OS X、Obj-C、NSOpenGLView):

gluOrtho2D(0.0, newSize.width, newSize.height, 0.0);

它工作正常,只是我收到一个已弃用的函数警告,敦促我改用 GLKMatrix4MakeOrtho()。好的——但是怎么做呢?我似乎甚至找不到那个功能的存在;我包括:

#import <OpenGL/gl.h>
#import <OpenGL/glu.h>

并且 Xcode 不知道该名称的函数。我的 OpenGL 引用手册没有提到它,或者实际上没有提到任何带有前缀 GLK 的函数;那里发生了什么事?然后,如果我设法找到该函数并包含正确的 header 并链接到我需要链接的任何内容,那么什么是 GLKMatrix4MakeOrtho() 的等效调用,它会做与我的 gluOrtho2D() 调用相同的事情?我尝试使用谷歌搜索,发现很多点击显示其他人也收到同样的弃用警告,但我找不到任何人说如何修复它...

最佳答案

GLKMatrix4MakeOrtho() 所需的包含是:

#include <GLKit/GLKMatrix4.h>

然后使用与 glOrtho() 相同的参数调用该函数,例如:

GLKMatrix4 orthoMat = GLKMatrix4MakeOrtho(-1.0f, 1.0f, -1.0f, 1.0f, -1.0f, 1.0f);

如何使用它取决于您使用的 OpenGL 类型。对于传统矩阵堆栈的固定功能,您可以使用例如:

glLoadMatrix(orthoMat.m);

使用可编程管道,您通常会将其作为统一加载:

glUniformMatrix4fv(loc, 1, GL_FALSE, orthoMat.m);

关于macos - 如何修复我不赞成使用的 gluOrtho2D()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30361168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com