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

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日

悬赏问题

  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
  • ¥15 VB.NET如何绘制倾斜的椭圆
  • ¥15 arbotix没有/cmd_vel话题
  • ¥20 找能定制Python脚本的
  • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
  • ¥15 用C语言怎么判断字符串的输入是否符合设定?
  • ¥15 通信专业本科生论文选这两个哪个方向好研究呀