【问题标题】:How to create OpenGL 3.x or 4.x context in Ruby?如何在 Ruby 中创建 OpenGL 3.x 或 4.x 上下文?
【发布时间】:2011-08-20 17:11:01
【问题描述】:

我到处寻找,但似乎没有允许创建 OpenGL 3/4 上下文的 ruby​​ 绑定。

它不必是完整的 OpenGL 绑定库,只是创建 OpenGL 上下文的部分。

更新: 如果我足够绝望,我会用 ruby​​ ffi 进行部分 glfw ruby​​ 绑定。所以请把我从那个中拯救出来;)

【问题讨论】:

    标签: ruby opengl-3 opengl-4


    【解决方案1】:

    我编写了一个库,可以在大多数平台上创建 OpenGL 3 或 4 上下文(只要它受支持)。它被称为Ray。您不必使用它的可绘制系统或 DSL,您只需使用它来创建一个窗口和一个 OpenGL 上下文。

    Ray::GL.major_version = 3
    Ray::GL.minor_version = 2
    Ray::GL.core_profile  = true # if you want/need one
    
    window = Ray::Window.new("test", [640, 480])
    window.make_current
    # You can make OpenGL calls yourself now
    

    【讨论】:

    • 如果我只使用上下文创建的东西,我是否需要所有依赖项?你使用 GLEW 来创建上下文,对吗? Ray 渲染器使用哪个 OpenGL? PS如果我能够设置赏金,我会在上面放50,但我不知道如何:(
    • 它使用窗口库提供的任何版本(传递参数来配置它)。它本质上需要 OpenGL 2.1 才能工作,但可以提供一些扩展(确实通过 GLEW 加载)。因为一切都是单一的 gem,是的,您必须获得所有依赖项才能使用它。
    • 所以你使用 C GLEW 而不是一些 ruby​​ 绑定?
    • 对——最低级别的部分是用 C 编写的。
    • 对于纯粹的 Ruby OpenGL 上下文创建来说,没有比这更好的替代方案了,它会保持最新状态。好的,现在我可以提供赏金了,所以你也别等了;)
    猜你喜欢
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    • 1970-01-01
    • 2016-10-03
    • 2018-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多