【问题标题】:Save cube in variable and apply scale/rotate/move OpenTK将立方体保存在变量中并应用缩放/旋转/移动 OpenTK
【发布时间】:2013-04-16 12:33:53
【问题描述】:

我正在创建简单的 3D 编辑器。我现在可以绘制像立方体这样的简单基元,但是,我不知道如何将此对象保存到 som 变量,然后将其复制到其他坐标。我也不知道如何旋转/缩放/移动这个立方体并将这个新形状保存到变量中。我看过很多关于这个主题的教程,但在每一篇教程中,人都在移动相机,而不是绘制的对象(立方体)。所以基本上我只需要教程如何将一些对象保存到变量中,而不是从变量中加载这个对象并在场景的不同坐标上多次绘制它,并对这些新对象应用一些变换(移动、旋转、缩放)。我正在用 C# 和 OpenTK 创建这个应用程序

【问题讨论】:

    标签: c# 3d editor opentk


    【解决方案1】:

    使用GL.Translate(x,y,z)GL.Rotate(θ,x,y,z)GL.Scale(sx,sy,sz)函数移动坐标系原点、方向和缩放。

    所以在命令之后画一个立方体

    GL.Translate(10,10,100);
    

    将在上述位置绘制立方体。下面是这个过程的一个(笨拙的)示​​例:

    【讨论】:

    • 谢谢大佬,我只想知道,调用GL.Rotate后绘制的每一个对象,也会被旋转,对吗?
    • 好的,我还有一个问题。例如,我想用鼠标选择绘制的对象然后旋转它,你能告诉我怎么做吗? OpenTK 网站上的文档不太适合这个主题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 1970-01-01
    • 2012-08-06
    • 1970-01-01
    • 2013-07-17
    • 1970-01-01
    相关资源
    最近更新 更多