SVGファイルを持っています。このファイルは漫画のキャラクター(2Dキャラクター)の概要を示しています。私の質問は、ユーザーがアウトラインを操作して変形できるプログラムを作成できるかどうかです。例として、マウスでキャラクターの腕の輪郭を引っ張ると、腕が大きくなります。
Bezier Curves and Elliptical Arcsが解決策だと思います。また、OPENGLを使用するのであれば、もっと柔軟に対応できるのではないかと思います。
SVGファイルを持っています。このファイルは漫画のキャラクター(2Dキャラクター)の概要を示しています。私の質問は、ユーザーがアウトラインを操作して変形できるプログラムを作成できるかどうかです。例として、マウスでキャラクターの腕の輪郭を引っ張ると、腕が大きくなります。
Bezier Curves and Elliptical Arcsが解決策だと思います。また、OPENGLを使用するのであれば、もっと柔軟に対応できるのではないかと思います。
あなたが自分自身に対処する必要がある相互作用の側面。最近のOpenGL拡張機能であるNV_path_renderingがあり、SVGやその他のベクター形式の正確なハードウェアアクセラレーションによるレンダリングを非常に簡単にします。SDKには、コントロールポイントとの相互作用が示されている例が少なくとも1つ含まれています。これは、開始点として適している場合があります。明らかに、これにはあなた/エンドユーザーが拡張機能をサポートするGPUを持っている必要があります。これは、拡張機能とその機能を説明する開発者のビデオです。
また、OPENGLを使用するのではないかと思いますが、もっと柔軟に使用できるのではないでしょうか。
OpenGLは決して物事を簡単にすることはありません。OpenGLは描画APIであり、ある種の魔法のシーンやジオメトリマネージャーではありません。提供されるのは、点、線、三角形、およびそれらをフレームバッファに描画する方法を定義するメソッドだけです。
ユーザーとの対話は、OpenGLの範囲外に完全にあります。
iscriptdesignを使用すると、インタラクティブなグラフィックを作成できますが、それらを自分でプログラム/スクリプト化する必要があります。