1. 제품
  2.   Aspose.3D
  3.   Aspose.3D FOSS for Java

Aspose.3D FOSS for Java

Java에서 3D 씬을 로드하고, 생성하고, 변환하며, 내보내세요 — 무료이며 오픈소스입니다.

3D 파일 처리를 위한 오픈소스 Java 라이브러리

Aspose.3D FOSS for Java은 MIT 라이선스를 가진 순수 Java 라이브러리로, 3D 파일 포맷 작업을 지원합니다. Maven 의존성을 하나 추가하면 네이티브 런타임, 외부 SDK, 서드파티 렌더러를 설치하지 않고도 즉시 3D 씬을 읽고, 구성하고, 기록할 수 있습니다.

이 라이브러리는 Scene, Node, Mesh, Camera, Transform을 중심으로 하는 깔끔한 씬 그래프 API를 제공하며, 이는 전문 3D 툴에서 사용하는 동일한 개념 모델입니다. 지원 포맷에는 OBJ(.mtl 재질 로딩 포함), STL(바이너리 및 ASCII, 라운드트립 검증), glTF 2.0(PBR 재질), GLB(바이너리 glTF), 그리고 FBX(읽기 전용)가 포함됩니다. 포맷별 로드 및 저장 옵션을 통해 좌표 뒤집기, 스케일, 노멀 정규화, 재질 로딩 등을 포맷 전용 파싱 코드를 작성하지 않고 제어할 수 있습니다.

Aspose.3D FOSS는 Java 21 이상이 필요하며 Windows, macOS, Linux CI 러너, Docker 컨테이너, 서버리스 환경에서 동일하게 실행됩니다. 컴파일할 네이티브 확장이나 설치할 시스템 패키지가 없습니다.

3D 포맷 지원 및 씬 그래프 API

  • OBJ / MTL: Wavefront OBJ 파일을 해당 재질 정의와 함께 로드합니다.
  • STL: 바이너리와 ASCII STL을 모두 읽고 쓰며 완전한 라운드트립 검증을 제공합니다.
  • glTF 2.0 / GLB: GltfSaveOptions를 통한 PBR 재질 로딩 및 내보내기. GLB 출력을 위해 setContentType(FileContentType.BINARY)를 사용합니다.
  • FBX: FBX 파일 로드를 위한 가져오기 지원(내보내기 기능은 제공되지 않음).
  • Scene-graph API: Scene, Node, Mesh, Camera, Transform.

Aspose.3D FOSS 를 사용할 수 있는 곳

  • Asset validation pipelines: CI에서 3D 에셋을 검증하고, 방향을 재조정하며, 재내보내기합니다.
  • Game development tooling: 네이티브 엔진 없이 OBJ 및 STL 메쉬를 일괄 처리합니다.
  • 3D printing workflows: STL 파일을 읽고, 검증하며, 재내보내기합니다.
  • Web backends: Docker 또는 서버리스 함수에서 3D 변환 엔드포인트를 제공합니다.
  • Content migration: 대규모로 포맷 패밀리 간 변환을 수행합니다.

포맷별 옵션 및 좌표 제어

  • Coordinate-system orientation: 축을 뒤집고 형식에 따라 스케일을 조정합니다(맞춤 코딩 없이).
  • Normal normalization: 로드하거나 저장할 때 정점 노멀을 자동으로 정규화합니다.
  • Material loading control: 더 빠른 파싱을 위해 MTL/텍스처 로드를 활성화하거나 비활성화합니다.
  • Pretty-print output: 옵션을 통해 압축형 또는 사람이 읽기 쉬운 glTF JSON을 선택합니다.
  • Round-trip fidelity: 알 수 없는 씬 그래프 노드는 재저장 시 그대로 보존됩니다.

개발자 경험

Aspose.3D FOSS for Java은 단일 Maven 의존성(com.aspose:aspose-3d-foss:26.1.0)으로 설치됩니다. 이 라이브러리는 순수 Java이며, 컴파일할 네이티브 확장이나 설치할 시스템 패키지가 없습니다.

scene-graph API는 전문 3D 툴의 개념 모델을 그대로 반영하므로 Three.js 또는 Blender의 데이터 모델에 익숙한 사람이라면 학습 곡선이 짧습니다. 이 라이브러리는 MIT 라이선스의 오픈 소스이며, GitHub에서 버그 보고 및 기여를 환영합니다.

OBJ 씬을 로드하고 glTF 로 내보내기

Maven 의존성을 추가한 뒤 Scene.fromFile("model.obj")를 호출하여 OBJ 파일과 해당 MTL 재질 정의를 로드합니다. .gltf 확장자를 사용한 단일 scene.save() 호출만으로 glTF 2.0 JSON 파일이 작성되며, 별도의 포맷 레지스트리나 변환기 객체가 필요하지 않습니다.

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-3d-foss</artifactId>
  <version>26.1.0</version>
</dependency>
import com.aspose.threed.*;

// OBJ 파일을 로드합니다 (.mtl 재질 포함)
Scene scene = Scene.fromFile("model.obj");

// glTF 2.0으로 내보내기
scene.save("model.gltf");

GltfSaveOptions 로 STL을 glTF 로 변환

좌표계 조정을 적용한 glTF 파일을 생성하려면 setFlipCoordinateSystem(true)가 설정된 GltfSaveOptions 인스턴스를 전달하십시오. 동일한 패턴이 모든 포맷별 옵션에 적용되며—대상으로 하는 포맷에 맞게 옵션 클래스를 교체하면 됩니다.

import com.aspose.threed.*;

Scene scene = new Scene();
scene.open("mesh.stl");

// 옵션을 사용하여 glTF로 저장
GltfSaveOptions opts = new GltfSaveOptions();
opts.setFlipCoordinateSystem(true);
opts.setPrettyPrint(true);
scene.save("mesh.gltf", opts);

자주 묻는 질문

Aspose.3D FOSS 가 Java에 대해 무엇인가요?

이는 무료이며 MIT-licensed pure-Java 라이브러리로, 네이티브 런타임이나 외부 SDK를 설치하지 않고 3D 씬을 로드, 조작 및 저장할 수 있습니다.

지원되는 3D 포맷은 무엇인가요?

OBJ(.mtl 포함), STL(바이너리 및 ASCII), glTF 2.0, GLB(바이너리 glTF), 그리고 FBX(수입 전용). 각 포맷마다 전용 로드/저장 옵션 클래스가 있습니다.

네이티브 종속성이 필요합니까?

아니요. Aspose.3D FOSS for Java은 순수 Java이며 네이티브 확장이 전혀 없습니다. Windows, macOS, Linux에서 컴파일 단계 없이 실행됩니다.

어떻게 설치하나요?

프로젝트에 Maven 의존성 com.aspose:aspose-3d-foss:26.1.0을 추가하세요. 추가 시스템 패키지나 네이티브 확장은 필요하지 않습니다.

좌표계 방향을 제어할 수 있나요?

예. 포맷별 옵션 클래스를 사용하면 축을 뒤집고, 스케일을 조정하며, 노멀을 정규화할 수 있으며, 포맷별 파싱 코드를 작성할 필요가 없습니다.

어떤 Java 버전이 지원되나요?

Java 21 및 이후 버전을 지원합니다. 이 라이브러리는 모든 주요 운영 체제에서 동일하게 실행됩니다.

소스 코드를 사용할 수 있나요?

예. 이 라이브러리는 MIT-licensed이며 GitHub에 호스팅됩니다. 버그 보고 및 풀 리퀘스트를 환영합니다.

  

지원 및 학습 자료

 한국어