使用 OpenGL GLFW 置顶窗口
想做一个BS刷野辅助器, 但是用WPF的TopMost不能在全屏游戏下置顶. 辗转了几天, 终于找到了解决方案 —— 使用 OpenGL GLFW.
我用的是 .Net + OpenTK 开发, 就把一些需要注意的一起写在这.
GLFW
有一个函数 SetWindowAttrib
, 顾名思义是设置窗口属性的, 属性里有一个 FLOATING
, 窗口浮动, 也就是置顶.
GLFW_FLOATING indicates whether the specified window is floating, also called topmost or always-on-top. This can be set before creation with the GLFW_FLOATING window hint or after with glfwSetWindowAttrib.
那么我们设置这个属性就行了.
大概这样写
|
|
吐槽一下LearnOpenTK的文档, 估计几百年没更新过了, GameWindow
的构造函数都不对
OpenTK.Windowing.Desktop.Window
下有一个 WindowPtr
指针变量, 专门用于传入 GLFW
使用的, 但是微软不让我用指针, 所以要在函数前面用 unsafe
声明一下, 然后编译选项里开启 /unsafe
(vs会提示, 写完直接在提示的地方点开启就行).