2009-07-07 12 views
2

OpenGLには本当に新しいですが、これは本当に悪いことです。 私はopenGlで星型(並べ替え)を描く必要がありますが、どこから始めるべきかはわかりません。OpenGl Star drawing

がこれを行う簡単な方法があります:

結果は次のようなものでなければなりませんか?

答えて

3

最も簡単な方法は、テクスチャマップされた四角形を「星」テクスチャで描画することです。テクスチャマッピングに関するチュートリアルをここで読むことができます:http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=06

このチュートリアルでは、テクスチャを使用して立方体を描画する方法を教えています。 6つすべてではなく、1つの顔を描くだけで済みます。

チュートリアルはC++で書かれていますが、最後にはDelphiのソースをダウンロードできます。

透明性など、後で追加する可能性があるその他の効果があります。また、NeHeサイトでそのことを読むことができます。 OpenGLには多くの便利なチュートリアルがあります。 OpenGLを学ぶのに最適な場所です。

+0

問題は、テクスチャマップされた四角形を描画したくないということです。 コーディングですべての作業を行う必要があります。画像を使用する必要はありません。ライトレベルを変更する必要があるため、これが必要です。 ありがとうございました! – Andy

+1

次に、別の例を得ることをお勧めします。表示する画像は、多角形のデータではなく、テクスチャ付きのクワッドのように見えます。もちろん、テクスチャ自体はコードから生成することもできますが、OpenGLとはまったく関係ありません。おそらくあなたが本当に達成したいことのより良い例を私たちに提供することができますか? –

2

OpenGLを初めて使用している場合、そしてDelphiを使用している場合、ほとんどの場合、必要なのはGLSceneです。成熟した、生きている、非常に良い品質のコードと、もちろん、無料です。

+0

GLSceneを試しましたが、マッピングされたテクスチャを使わない方法を見つけることはできません。 – Andy

+0

それらを確認する: ニュース://forums.talkto.net/glscene.general - または - ニュース://forums.talkto.net/glscene.support を書いている時点では、glsceneの '59884のメッセージ' であり一般。 (私はそれらを数えていない、私のサンダーバードはそう言う:-)) HTH、 –

0

Redbookの "checker.c"の例のように、2D GLuByte配列を使用してコード内に手続き的にテクスチャを生成するアルゴリズムを書いてみませんか?完璧なチェッカーボードパターンに従う代わりに、そのスターの2Dテクスチャを作成し、それをglTexImage2D(...)を使ってクワッドにマッピングする方法を理解してください。