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

Aspose.3D FOSS for .NET

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

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

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

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

Aspose.3D FOSS는 .NET 10.0을 대상으로 하며 Windows, macOS, Linux에서 실행됩니다. 컴파일할 네이티브 확장이나 설치할 시스템 패키지가 없습니다.

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

  • OBJ / MTL: Wavefront OBJ 파일과 함께 제공되는 재질 정의를 로드합니다.
  • STL: 바이너리와 ASCII STL을 모두 읽고 쓰며 전체 라운드트립 검증을 제공합니다.
  • glTF 2.0 / GLB: PBR 재질 로딩 및 익스포트. 바이너리 glTF 출력을 위해 .glb로 저장합니다.
  • FBX: ASCII와 바이너리 모드 모두에서 FBX 파일을 임포트하고 익스포트합니다.
  • Collada / 3MF: 보다 넓은 상호 운용성을 위한 추가 포맷 지원.
  • 씬 그래프 API: Scene, Node, Mesh, Camera, Transform.

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

  • 에셋 검증 파이프라인: CI에서 3D 에셋을 검증하고, 재정렬하며, 재내보내기합니다.
  • 게임 개발 도구: 네이티브 엔진 없이 OBJ 및 STL 메쉬를 일괄 처리합니다.
  • 3D 프린팅 워크플로: STL 및 3MF 파일을 읽고, 검증하고, 다시 내보냅니다.
  • 웹 백엔드: Docker 또는 서버리스 함수에서 3D 변환 엔드포인트를 제공합니다.
  • 콘텐츠 마이그레이션: 대규모로 포맷 패밀리 간 변환을 수행합니다.

포맷별 옵션 및 좌표 제어

  • 좌표계 방향: 형식별로 축을 뒤집고 스케일을 조정하며 사용자 코드를 작성할 필요가 없습니다.
  • 노멀 정규화: 로드하거나 저장할 때 정점 노멀을 자동으로 정규화합니다.
  • 재질 로딩 제어: 더 빠른 파싱을 위해 MTL/텍스처 로딩을 활성화하거나 비활성화합니다.
  • 형식별 로드 옵션: 형식마다 좌표 뒤집기, 스케일, 재질 로딩을 설정합니다.
  • 왕복 정확도: 알 수 없는 씬 그래프 노드는 재저장 시 그대로 보존됩니다.

개발자 경험

Aspose.3D FOSS for .NET installs with a single NuGet package (dotnet add package Aspose.3D.Converter --version 1.0.0). 이 라이브러리는 순수 C#이며, 컴파일할 네이티브 확장이나 설치해야 할 시스템 패키지가 없습니다.

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

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

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

dotnet add package Aspose.3D.Converter --version 1.0.0
using Aspose.ThreeD;

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

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

옵션을 사용해 OBJ를 로드하고 STL 로 내보내기

포맷별 옵션 클래스는 가져오기 동작을 제어할 수 있게 합니다. 예를 들어, ObjLoadOptions는 좌표 플리핑, 스케일 및 재질 로드를 토글할 수 있게 합니다. 동일한 패턴이 모든 포맷에 적용됩니다 — 대상 포맷에 맞는 옵션 클래스로 교체하십시오.

using Aspose.ThreeD;
using Aspose.ThreeD.Formats;

var scene = new Scene();
var opts = new ObjLoadOptions();
opts.FlipCoordinateSystem = true;
opts.NormalizeNormal = true;
scene.Open("mesh.obj", opts);

// STL로 다시 내보내기
scene.Save("mesh.stl");

자주 묻는 질문

Aspose.3D FOSS for .NET 은 무엇인가요?

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

어떤 3D 포맷을 지원하나요?

OBJ (with .mtl), STL (binary and ASCII), glTF 2.0, GLB (binary glTF), FBX (import and export), Collada, 및 3MF. 각 포맷마다 전용 로드/저장 옵션 클래스가 있습니다.

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

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

어떻게 설치하나요?

dotnet add package Aspose.3D.Converter --version 1.0.0 명령을 실행하여 NuGet 패키지를 프로젝트에 추가하세요. 추가적인 시스템 패키지나 네이티브 확장은 필요하지 않습니다.

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

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

어떤 .NET 버전이 지원되나요?

.NET 10.0 및 이후 버전을 지원합니다. 이 라이브러리는 모든 주요 운영 체제에서 실행됩니다.

소스 코드를 제공하나요?

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

  

지원 및 학습 자료

 한국어