【问题标题】:OpenGL and DirectXOpenGL 和 DirectX
【发布时间】:2013-06-22 08:21:28
【问题描述】:

谁能向我解释一下 OpenGL 和 directX 的愚蠢版本是什么?它们都是由纯计算机语言(如 java、c++、C#、Objective C)创建的,还是它们都是自己的语言。换句话说,LGjWL 使用 openGL 对吗?那么它是直接从纯 Java API 创建的,就像您在 java 中创建自己的包时一样吗?

【问题讨论】:

  • 给你..“OpenGL vs DirectX:战争远未结束”rastergrid.com/blog/2011/10/…
  • 谢谢,但我正在尝试将两者都连接到原始语言。我正在查找 OpenGL,他们使用的代码看起来很像 java,但它是从 java 本身派生的。我不想对两者进行比较,我希望两者都在简化版本中进行解释。
  • 快速和简短说明 - 从技术上讲,OpenGL 和 DirectX 不是语言,而是指令和/或图形处理操作的规范,它们在电子芯片中实现,并且在可用于您指定的编程语言。将 OpenGL 视为编程语言,您可能指的是 GLSL(GL Shaders Language),或 DirectX 的等价物。
  • 啊,好吧,但它们是语言的扩展。例如:理论上我可以通过使用我自己的包和方法等制作我自己的 API 来制作我自己的 OpenGL 版本。
  • 可能不会,除非您也想设计 GPU 的内部结构。理论上,您可以创建自己的 OpenGL 实现(例如,用于特定语言),但它仍会在图形卡上调用与已实现库中相同的指令。因此,您实现的可能性将受到图形芯片可能执行的操作的限制。

标签: java opengl directx


【解决方案1】:

OpenGL 和 DirectX 是 API:应用程序编程接口。

API 是一组可调用对象(函数)和标记(数字常量),它们构成了为程序提供某些功能的接口。 OpenGL 是一个 API,它允许程序绘制漂亮的图片。 DirectX 是一整套子 API 的保护伞,用于声音、图形、用户输入等。

API不是语言!

API不是用某种编程语言编写的。

API只是描述特定系统行为及其调用方式的文档。这些文件通常是用技术英语编写的。


您的计算机上实际拥有的不是纯粹的 API,而是一些实际的实现。 API 的实现可以用任何语言编写,只要它可以翻译成或直接提供 API 文档中指定的接口即可。当然,使用直接支持 API 指定的调用约定的语言会大大简化事情。

【讨论】:

    猜你喜欢
    • 2011-12-02
    • 1970-01-01
    • 2012-01-20
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 2012-08-02
    • 2014-06-14
    相关资源
    最近更新 更多