0

取得するGLFW3 ドキュメントでネイティブ API アクセスを探していましたHWNDが、ファイルにありませんGLFW/glfw3.h#defineコンパイラでそれを見つけることができるものはありますか? を使用してファイル自体で手動で見つけることもできませんtext-finder。どうすれば取得できますか?

PS。タグ付けできませんglfw3

編集:

コード:

#define GLFW_INCLUDE_GLU

#define GLFW_EXPOSE_NATIVE_WGL
#define GLFW_EXPOSE_NATIVE_WIN32
#include <GL/GLFW/glfw3native.h>
#include <GL/GLFW/glfw3.h>

#include <ctime>
#include <cstdlib>
...

int main()
{
    //glfw setup
    ...
    //bla bla bla
    ...
    //all I want to do is to call this one
    ScreenToClient( glfwGetWin32Window(window), &point);
}
4

1 に答える 1

3

あなたの問題に混乱した後、私は自分で試してみましたが、インクルードの順序が問題だと思います。Windows で実行しようとすることを Linux で模倣する最小限のコード例は、コンパイルして意図したとおりに動作します。

#define GLFW_EXPOSE_NATIVE_X11
#define GLFW_EXPOSE_NATIVE_GLX
#include <GLFW/glfw3.h>
#include <GLFW/glfw3native.h>

int main (int argc, char ** argv)
{
  glfwInit();    
  GLFWwindow* window = glfwCreateWindow (256, 256, "GLFW", nullptr, nullptr);    
  glfwGetX11Window(window);      
  glfwTerminate();

  return 0;
}

EDITglfwTerminate() :適切なクリーンアップのための incovation を追加しました。もちろん、適切なエラーチェックが行われている必要がありますが、最小限の例を示す目的では、上記で十分です。

于 2013-10-30T11:43:37.240 に答える