2011-08-04 5 views
1

私は2dレンダリングでOpenGLを使用していますが、イベントではSDLを使用していることを確認します。私が聞いたことから、SDLはソフトウェアレンダリングを使用し、OpenGLはハードウェアアクセラレーションです。私はSDLで1冊の本を読んでいる途中ですが、まだレンダリングにはOpenGLを使用し、イベントにはSDLを使用することについては言及していません。あなたが読書によって開始することができますOpenGLでレンダリングするにはどうしたら、イベント用にSDLを使用しますか?

答えて

5

http://www.gpwiki.org/index.php/SDL:Tutorials:Using_SDL_with_OpenGL

は、あなたは、あなたのOpenGLベースのレンダリングのすべてを行いますその中でOpenGLコンテキストを作成するためにSDLを使用します。

イベントによって、あなたはユーザーの入力を意味しますか?もしそうなら、単に各フレーム/ループの最後にそうような入力をチェックするためにSDLを利用します。

int main() 
{ 
    ... 

    while(running) 
    { 
     ... 

     update(); 
     draw(); 

     ... 

     handleKeys(); 
    } 

    return 0; 
} 

void handleKeys() 
{ 
    SDL_Event event; 

    while(SDL_PollEvent(&event)) 
    { 
     switch(event.type) 
     { 
     case SDL_KEYDOWN: 
      //Check for event and act accordingly 
      break; 

     case SDL_KEYUP: 
      //Check for event and act accordingly 
      break; 

     case SDL_MOUSEBUTTONDOWN: 
      //Check for event and act accordingly 
      break; 

     default: 
      break; 
     } 
    } 
} 

は明らか入力を得るためのはるかにエレガントかつ効果的な手段がありますが、単純なを見せたかったです例。

+1

私のサイトであなたを助けるかもしれないチュートリアルがあります:http://www.sdltutorials.com/sdl-opengl-tutorial-basics/ – MetaCipher

関連する問題