2011-02-09 8 views
0

私はopenGlを全く新しくしました。私はこれまでに基本的な図形を描く方法と回転させる方法を研究しました。openGLnGLの2dオブジェクトを選択的に回転させる

半円形のダイヤルと時計の針が連続して回転するアプリケーションを作成したいと思います。 (0度から180度までの範囲であってもよい)。

どうすればよいですか?

これを行うにはいくつかの方法があるかもしれませんが、私が構築しようとしているものの全体像を考えれば、これを行う最良の方法は何でしょうか。

  1. ユーザーはレイヤーを作成します。上記の例では、円形ダイヤルは背景レイヤーです。どこで時計の手が前景の層になるか。

  2. 一部のレイヤーは静的であるため移動しません。

  3. レイヤーの移動は、ユーザーによって提供されます(設定ファイル内にある可能性があります)。上記の例では、ユーザーは(時計の手のレイヤーのためのある点と角度の範囲を提供し、レイヤーは与えられた点の周りのその範囲で回転します)。

可能性がありますか?私は2Dオブジェクトのみを使用しているので、各レイヤーがz軸に沿った平面になるかどうかは疑問です。

答えて

3

OpenGLはシーングラフではありません。それは鉛筆、ブラシ、染料、マスクのようなものです。また、OpenGLをプログラミングすることは、シーンを所望の画像を作成するために必要な描画ステップに分解することを意味する。だからあなたの場合には、それは順番に描画するPainter's Algorithmを使用するのと同じくらい簡単です

  1. ダイアル
  2. 最初に手
  3. 秒針
  4. thrird手
  5. なものは次のようにありません

」 OpenGLの "プレーン"プリミティブです。ちょうどポイント(スプライト)、ライン、三角形、クワッドがあります。ある程度多角形になりますが、大きく制約されます。これらのプリミティブに色とテクスチャを適用し、ベクトル計算を実行して照明をエミュレートすることができます。

関連する問題