C# OpenTK - Linux 没有 X11 的控制台

C# OpenTK - Linux Console without X11

我只是想知道是否可以在没有任何 X11 桌面的情况下在 Linux 控制台(Raspberry Pi Raspbian)中呈现 OpenTK 游戏窗口?

如果可以的话,你是怎么做到的?

是的,从 1.1 或 1.2 开始它是实验性的。如果找不到某些 dll,请调整 OpenTK.dll.config,也许您必须找到正确的 libinput 版本(libinput-0.2.0 在我的 debian 上工作)以匹配 opentk 中的 api 绑定。我不完全确定,但我认为它只适用于现代 GL (>3.0)。 确保您的系统上有 libdrmlibgbm 和正确的 libinput 以及最新的 mesa.

如果从控制台启动程序,OpenTK 将自动检测 linux 控制台环境。 如果您在查找丢失的 dll 时遇到问题,请在 Otk 中启用完整的调试消息。

我有这个工作,但需要一些工作。首先,我创建了一个 c 库来调用本机库以控制 PI 上的 gl 芯片组并公开这些库,以便我可以从 C# 调用它们。

其次,我不得不重新编译 opentk 并切换为不使用动态绑定。最后,我去掉了大部分游戏 window 逻辑,只使用了 opentk 中的绑定和数学代码。

更多细节和代码在这里:

http://www.opentk.com/node/4024

基本上这足以让您清除/交换屏幕等,然后您可以将绑定代码添加到您可以在 opentk 项目/解决方案工具中生成的 GL ES 2.0 规范。