2012-02-27 17 views
1

をPHPするようPapervisionとしてフラッシュ3Dディスプレイエンジンは、データは、PHPバックエンドとその逆(モデルへPHP)にSWFからエクスポートされることを可能にしますか? Unityはこれを可能にしますか?インタラクティブな3Dモデルは、

私はPapervisionのような3DパッケージのUIを使って単純な「モデルの色を変更する」アプリケーションをビルドする場合、ユーザーの選択肢をPHPまたはJavaScriptの中間媒体にエクスポートできますか?任意の助け

おかげ MitchK

答えて

2

それは、フラッシュがサーバにGET/POSTリクエストを送信することができますが、HTMLでformularをコーディングするときと同じように、エクスポートまたはすることはできませんどのようなユーザーが情報を定義するのはあなた次第ですあなたはあなたが望むどんなデータもサーバに送り返すことができます。

+0

感謝。私はフラッシュからデータを読み込むのにはかなり経験がありますが、3DモデルやUIがペーパービジュアルなどのパッケージで設計されていれば、このデータをエクスポートできますか?あるいは、別の方法として、もし私がpapervisionに3Dオブジェクトを持っていたら、色を変えたり、モデルをラッパーフラッシュから更新したりできますか? – mitch

0

次のことができるようにする必要があります。ここでPapervisionからCollada形式にメッシュをエクスポートする方法についての些細な古い例です:

package { 
    import flash.net.FileReference; 
    import flash.display.*; 
    import flash.events.MouseEvent; 
    import flash.utils.ByteArray; 
    import org.papervision3d.core.io.exporters.ExportCollada; 
    import org.papervision3d.lights.PointLight3D; 
    import org.papervision3d.view.BasicView; 
    import org.papervision3d.materials.shadematerials.FlatShadeMaterial; 
    import org.papervision3d.objects.DisplayObject3D; 
    import org.papervision3d.objects.primitives.PaperPlane; 
    import org.papervision3d.objects.special.UCS; 

    public class PV3DExportTest extends BasicView { 
     private var mesh:DisplayObject3D; 
     public function PV3DExportTest() { 
      super(640,480,false,false,"Debug"); 
      scene.addChild(new UCS(1000)); 
      var light:PointLight3D = scene.addChild(new PointLight3D()) as PointLight3D; light.x = light.y = light.z = 100; 
      mesh = scene.addChild(new PaperPlane(new FlatShadeMaterial(light,0xFFFF00,0xFF6600),3));mesh.rotationY = 160;mesh.rotationX = 30; 
      startRendering(); 
      stage.doubleClickEnabled = true; 
      stage.addEventListener(MouseEvent.DOUBLE_CLICK,save); 
     } 
     private function save(event:MouseEvent):void{ 
      var data:ByteArray = new ByteArray(); 
      data.writeUTFBytes(ExportCollada.export(mesh)); 
      new FileReference().save(data,'mesh.dae'); 
     } 
    } 
} 

あなたはそれがhereを実行している見ることができます。

あなたはすでに使用しようとしているライブラリが独自に実装していない場合は、(色/素材は/ etc。)が必要とデータを保存することができ、3Dファイル形式にエクスポートするかどうかを確認する必要があります

。それが完了したら、データ転送は簡単ではありません。いくつかのオプションがありますので、どの方法があなたに最も適しているかはセットアップによって決まります。

+0

Thanks..Iは、このに(古い/休止状態のプロジェクトです)Papervisionとの基本的な例だ試して... – mitch

+0

を与えるだろう。 Away3Dはまた、[OBJ]のような輸出、(http://away3d.com/livedocs/3.6.0_lib/away3d/exporters/ObjExporter.html)いずれかを提供します。それでも、これらはASCII /テキストベースのフォーマットです。利点は、テキストエディタでそれらを開いたり、3Dエディタでそれらを読み込んだりすることができますが、ファイルサイズの欠点です。それが問題であれば、バイナリ形式を作成するか、既存のもの(.3dsなど)をエクスポートしてMySQLにBLOBとして保存することができます。バイナリも解析が高速です。 HTH –

関連する問題