原来是悟净 2022-02-10 15:27 采纳率: 100%
浏览 56
已结题

opengl中从世界坐标转化为屏幕坐标该如何变换?、

比如我拿到的是一个如下所示的数组,他表示为一个正方形,坐标是世界坐标;

    float vertices[] = {
        // positions          
         5.0f,  5.0f, 0.0f,  
         5.0f,  -5.0f, 0.0f,  
        -5.0f, -5.0f, 0.0f, 
        -5.0f,  5.0f, 0.0f,  
    };

而我想要将这个坐标最终绘制到屏幕上,需要经过 model、view、project变换;
但是这个过程我该如何用代码实现,将其转换为如下所示的,能够让opengl绘制的归一化坐标?

       0.5f,  0.5f, 0.0f,   
         0.5f, -0.5f, 0.0f,   
        -0.5f, -0.5f, 0.0f, 
        -0.5f,  0.5f, 0.0f,

我看了https://learnopengl-cn.github.io/01%20Getting%20started/08%20Coordinate%20Systems/这个教程里面说的,看他的代码还是没有太明白opengl是如何使用他自己的函数实现的坐标转换最终绘制到屏幕上的?
代码地址:https://learnopengl.com/code_viewer_gh.php?code=src/1.getting_started/6.1.coordinate_systems/coordinate_systems.cpp

  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-02-10 17:05
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月22日
  • 已采纳回答 2月14日
  • 创建了问题 2月10日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装