2012-03-07 23 views
1

に新しいイベントをプッシュすることはできません、それがうまく動作するはずです:SDL2イベントループは - 私は私の新しいAndroidアプリケーションでSDL2を使用しようとしていますキュー

http://wilbefast.com/2011/11/11/recent-sdl-android-goodies/

これは、単一問題なくコンパイルされ、サンプルプロジェクトがあるので、それを使い始めるのは簡単です。私は、ライブラリをコンパイルし、私のアプリケーションで開始、イベントループを作成 - SDL 1.2のような機能によって、その中にいくつかのイベントをプッシュしようとした:

int SDL_PushEvent(SDL_Event * event); 

しかし、それは常にエラー値で失敗-1。

http://hg.libsdl.org/SDL/file/6bb657898f55/src/main/android/SDL_android_main.cpp

マイSDL_main機能が含まれているシンプルなイベントループ:私はちょうどこのソースファイルのSDL_main関数を定義し

SDL_Event event; 

for (;;) 
{ 
    SDL_WaitEvent(&event); 
    switch (event.type) 
    { 
case SDL_QUIT: 
    return; 
    case SOME_EVENT: 
     break; 
    default: 
     break; 
    } 
} 

、それがすべて、ノースレッド、ないミューテックス、無待機、ちょうど簡単ですメイン機能。 SDL_PushEvent機能が動作しないのはなぜhttp://hg.libsdl.org/SDL/file/6bb657898f55/android-project/src/org/libsdl/app/SDLActivity.java

:私はいくつかのイベント私のイベントループ処理することを、彼らのevent.typeが2151293988に等しく、それはJavaコードで作成され、そのソースはSDLSurfaceインスタンスで見える気づきましたか?誰かが間違っていると思われるアイデアはありますか?

+1

を呼び出すことによって明示的に開始する必要があります。待ち行列はまだ始まっていませんでした!私はキューが初期化時に自動的にSDL2を実行しますが...メイン関数に 'SDL_StartEventLoop();'呼び出しを追加して、今すぐ動作します - 私のライブのほぼ5時間が少し省略されました... – vitakot

答えて

3

SDLキューが初期化後に自動的に起動しない、それは私が理由を見つけたようだSDL_StartEventLoop();

関連する問題