2012-04-29 10 views
1

canvasの中に3D球の描画を作成しようとしています。私の目標は、小さな(300px四角形の)キャンバスのリアルタイムパフォーマンスです。 iPad。円弧に透視変換で作成された曲線

複雑なHTML5レンダリングのためのデモの大部分は素晴らしいですが、実際には(現時点では何もありませんが、技術的には可能です)WebGL(three.jsのようなもの) iOSでのサポート。

canvasしかし、素晴らしい作品です。

CSS3が私にHW Transformを与えてから初歩的なテクスチャリングにcanvasを使用できるので、初歩的なレンダリング機能をcanvasで構築することにもっと力を注いでいます。私はキャンバスに描画することによって照明を偽装することができます!これはまだ完全ではないのでかなり後退します。HW T & L(DX7!...)しかし、私はまだ非常にクールなものを作ることは可能であると確信しています。トリックは、(他のものの中でも)可能な限りジオメトリの量を最小限に抑えることです。

手元にあるトピックに戻る。私の実際の質問は非常に具体的です。私が描きたい球がカメラから遠く離れていれば、私はそれを正射影で投影することができます。この場合、アークパスを使用してワイヤフレーム球を構築することができ、回転とスケーリングの変換はcanvasに利用可能です。これは私に球をどのようにもテクスチャすることはできませんが、すばらしい滑らかな曲線を生成し、すばらしく見えるはずです。

画像に透視投影を投げたい場合はどうすればいいですか?このタイプの変換からどのような曲線が生成されますか?ベジェやアーク経路を使って近似曲線を近似できるようになる可能性はありますか?

私は、球の透視投影が楕円であることを知っています。円をスケーリングすることで、楕円を簡単に作成できます。投影パラメータが与えられると、その楕円の方程式を計算するだけで簡単になるかもしれません。誰かがこれで私を助けることができますか?

私にはいつも開いているオプションの1つは、アークを忘れて、私たちがいつも伝統的にやってきたやり方で、私のワイヤフレームを線で描くことです(それは便利です)。これを避ける方法はありません。たとえば、私の球体をテクスチャ化したい場合です。

答えて

0

この曲線の解析式を探して(そして、これをベジェのいくつかの種類に適合させようとすると)、穴を深く深く掘ることになります。

ビルトインカーブのパフォーマンスは恐らく私がとにかく使用するライン機能を使用するヘルパーであることから恐ろしいことでしょう。レンダリングとパフォーマンスのコントロールを減らすだけです。

関連する問題