Java で 3D シーンを作成する

3D シーンは、コンピューター上で 3D 形状を表示する方法です。このガイドでは、特別な 3D ソフトウェアを必要とせずに、Java を使用して 3D シーンを作成する方法を学びます。その後、3D シーンを FBX ファイル形式で保存します。これは、3D のものを共有する一般的な方法です。それでは、始めましょう。

この記事では次のトピックについて説明します。

  1. 3D シーンを作成するための Java 3D API — 無料ダウンロード
  2. Java で簡単な 3D シーンを作成する
  3. Java を使用して 3D シーンを読み取る
  4. 無料の学習リソース

3D シーンを作成するための Java 3D API - 無料ダウンロード

Aspose.3D for Java API を使用して 3D シーンを作成および読み取ります。これは、3D シーンをさまざまな 形式 で作成、編集、保存できる強力な API です。 3D メッシュ、マテリアル、テクスチャを作成および編集できます。 API を使用すると、ライト、カメラ、アニメーションを追加および構成することもできます。

API の JAR をダウンロードするか、Maven ベースの Java アプリケーションに次の pom.xml 設定を追加してください。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-3d</artifactId>
    <version>23.9.0</version>
</dependency>   

Java を使用して単純な 3D シーンを作成する

以下の手順に従って、単純な 3D シーンを作成できます。

  1. Scene クラスのインスタンスを作成します。
  2. createChildNode() メソッドを呼び出して、画面上に表示するジオメトリまたは形状 (円柱など) を追加します。
  3. マテリアルなどの子ノードのプロパティを設定します。
  4. Light クラスのオブジェクトを初期化します。
  5. createChildNode() メソッドを呼び出して、Light エンティティを追加します。
  6. 最後に、save() メソッドを使用してシーンを FBX として保存します。出力ファイルのパスと FileFormat.FBX7500ASCII を引数として受け取ります。

次のコード サンプルは、Java を使用して単純な 3D シーンを作成する方法を示しています。

// このコード例は、単純な 3D シーンを作成し、FBX ファイルに保存する方法を示します。
// 3Dシーンの初期化
Scene scene = new Scene();

// 円柱オブジェクトの初期化
Cylinder cylinder = new Cylinder();
cylinder.setName("Cylinder");

// 子ノードを作成し、Cylinderオブジェクトを追加します。
Node node = scene.getRootNode().createChildNode(cylinder);

// 子ノードのプロパティを設定する
LambertMaterial material = new LambertMaterial();
material.setDiffuseColor(null);
material.setName("Lambert");
node.setMaterial(material);

// ライトエンティティの追加
Light light = new Light();
light.setLightType(LightType.POINT);
light.setName("Light");
scene.getRootNode().createChildNode(light).getTransform().setTranslation(new Vector3(10, 0, 10));

// 出力ファイルのパス
String output = "C:\\Files\\document.fbx";

// 3Dシーンドキュメントの保存
scene.save(output, FileFormat.FBX7500ASCII);
Java を使用して単純な 3D シーンを作成する

Java を使用して単純な 3D シーンを作成します。

Javaを使用して3Dシーンを読み取る

以下の手順に従って、FBX ドキュメントをロードして 3D シーンを読み取ることもできます。

  1. Scene クラスのインスタンスを作成します。
  2. open() メソッドを使用して、既存の 3D ドキュメントを読み込みます。
  3. ChildNodes プロパティをループする
  4. 最後に、プロパティ値を表示します。

次のコード サンプルは、Java を使用して 3D シーンをロードして読み取る方法を示しています。

// このコード例は、FBX ファイルから 3D シーンを読み取る方法を示します。
// Scene クラス オブジェクトを初期化する
Scene scene = new Scene();

// 既存の 3D ドキュメントをロードする
scene.open("C:\\Files\\document.fbx");

for(Node node : scene.getRootNode().getChildNodes())
{
    Entity entity = node.getEntity();
    System.out.println("Entity Name: " + entity.getName()); 

    if (node.getMaterial() != null)
    {
        Material material = node.getMaterial();
        System.out.println("Material Name: " + material.getName());

        PropertyCollection props = material.getProperties();

        // foreach を使用してすべてのプロパティを一覧表示する
        for(Property prop : props)
        {
          System.out.println(prop.getName() + " : " + prop.getValue());
        }
    }
}
Entity Name: Cylinder
Material Name: Lambert
Emissive : (0 0 0)
Diffuse : (1 1 1)
Ambient : (0 0 0)
Entity Name: Light

無料ライセンスを取得する

無料の一時ライセンスを取得して、評価制限なしで Aspose.3D for Java を試すことができます。

無料の学習リソース

単純な 3D シーンの作成または読み取りに加えて、以下のリソースを使用してライブラリについて詳しく学び、他のさまざまな機能を探索してください。

結論

この記事では、Java で 3D シーンを作成する方法を学習しました。また、3D シーンを FBX 形式でレンダリングし、その子のノートとプロパティを Java でプログラム的に読み取る方法についても説明しました。 Aspose.3D for Java を利用すると、Java アプリケーションでの 3D グラフィックス プログラミングを簡素化できます。不明な点がある場合は、無料サポート フォーラムまでお気軽にお問い合わせください。

関連項目