2

そうです、私はOpenGL ESを始めたばかりです。正直なところ、それは非常に困難です。

私の現在の課題に対して正しい方向に私を向けるために、ちょっとしたガイダンスが必要です。

テクスチャがマッピングされた3D球(地球儀)を生成するコードがあります。

球のタッチ座標を取得し、それを処理することはできますが、私の質問は、その球に別のテクスチャを追加するにはどうすればよいですか?

地球儀に触れてから特定の領域を「ハイライト」できるようにしたいので、「画像をハイライト」して、その画像を地球儀にタッチでマッピングしたいと思います。

この画像は、タッチしたポイントで球を包み込みます。

これは、すでにテクスチャ化された球に別のテクスチャを追加する場合だと思いますか?これに対する正しいアプローチは何でしょうか?

マップする2Dテクスチャを作成する必要がありますか、それとも3Dテクスチャが必要ですか(そのようなものはありますか?)

球全体のテクスチャを再作成する必要がありますか?

そのすべてが非常に紛らわしく、いくつかの一般的な指針が高く評価されます。

よろしくお願いします!

4

1 に答える 1

0

タッチしたポイントに適用するハイライト画像がある場合は、簡単に言うと、最初にハイライト画像をベーステクスチャに適用できます(別のレンダリングパスで上下にレンダリングするだけです)。次に、複合画像をテクスチャとして使用します。

考慮事項:

  • テクスチャ座標はジオメトリの座標に依存しないため、まだ行っていない場合は、タッチポイントとテクスチャ上のポイント(座標ペア)の間のマッピングを作成する必要があります。
  • ハイライトをエッジにラップさせるには、適切なテクスチャパラメータを設定する必要があります。この場合はGL_REPEAT機能するはずです。

他の質問については、はい、OpenGLには3Dテクスチャがあります。しかし、私はそれらがあなたの仕事に関連しているとは考えません。

于 2010-12-17T13:23:12.937 に答える