-1

通常、3D オブジェクトを *.dae 形式でエクスポートすると、ファイルに付属のフォルダーがあり、フォルダーにはオブジェクトのテクスチャが含まれています。*.dae ファイルとそのテクスチャをプロジェクトに追加する方法を知っている人はいますか?

4

1 に答える 1

1

*.dae を使用してテクスチャをフォルダに配置し、次のようにオブジェクトとテクスチャをロードする必要があります。

    var bm:BitmapFileMaterial = new BitmapFileMaterial('PATH_TO_TEXTURE', true);
    var mat:MaterialsList = new MaterialsList();
    mat.addMaterial(bm2, 'MATERIAL_NAME');
    mat.addMaterial(bm3, 'ANOTHER_MATERIAL_NAME');

    var obj:DAE = new DAE();
    obj.useOwnContainer = true;
    obj.load('PATH_TO_DAE', mat);

また、マテリアルは *.dae で正しくリンクされている必要があります。このようなもの:

    ...
      <library_images>
        <image id="TEXTURE_NAME-image" name="TEXTURE_NAME">
          <init_from>2/TEXTURE_NAME.png</init_from>
        </image>
      </library_images>
      <library_materials>
        <material id="TEXTURE_NAME" name="TEXTURE_NAME">
          <instance_effect url="#TEXTURE_NAME-fx"/>
        </material>
      </library_materials>
    ...
      <library_visual_scenes>
        <visual_scene id="RootNode" name="RootNode">
          <node id="TEXTURE_NAME_tp3_Mesh01" name="TEXTURE_NAME_tp3_Mesh01">
            <matrix sid="matrix">1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000</matrix>
            <instance_geometry url="#TEXTURE_NAME_tp3_Mesh01-lib">
              <bind_material>
                <technique_common>
                  <instance_material symbol="MATERIAL_NAME" target="#MATERIAL_NAME"/>
                </technique_common>
              </bind_material>
            </instance_geometry>
          </node>
        </visual_scene>
     </library_visual_scenes>

...

于 2012-09-09T19:47:01.237 に答える