6개의 면이 있는 큐브맵으로 장면 렌더링
소개
.NET용 Aspose.3D를 사용하여 6개의 면이 있는 큐브맵으로 장면을 렌더링하는 방법에 대한 단계별 가이드에 오신 것을 환영합니다. 이 튜토리얼에서는 3D 장면을 렌더링하여 놀라운 큐브맵을 만드는 과정을 안내합니다. Aspose.3D는 3D 그래픽 조작을 단순화하는 강력한 .NET API이며, 이 가이드를 통해 그 기능을 활용하여 매력적인 큐브맵을 만들 수 있습니다.
전제 조건
튜토리얼을 시작하기 전에 다음 전제 조건이 충족되었는지 확인하세요.
- C# 및 .NET 개발에 대한 실무 지식.
- .NET용 Aspose.3D가 설치되었습니다. 당신은 그것을 다운로드 할 수 있습니다 여기 .
- 렌더링을 위한 GLB 형식(예: “VirtualCity.glb”)의 3D 장면 파일입니다.
네임스페이스 가져오기
C# 코드에서 Aspose.3D에 필요한 네임스페이스를 가져오는 것부터 시작하세요.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Render;
using Aspose.ThreeD.Utilities;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
1단계: 장면 로드
다음 코드를 사용하여 3D 장면 파일을 로드합니다.
Scene scene = new Scene(RunExamples.GetDataFilePath("VirtualCity.glb"));
2단계: 카메라와 조명 만들기
장면을 비추는 카메라와 두 개의 조명을 만듭니다.
Camera cam = new Camera(ProjectionType.Perspective)
{
NearPlane = 0.1,
FarPlane = 200,
RotationMode = RotationMode.FixedDirection
};
scene.RootNode.CreateChildNode(cam).Transform.Translation = new Vector3(5, 6, 0);
scene.RootNode.CreateChildNode(new Light() { LightType = LightType.Point }).Transform.Translation = new Vector3(-10, 7, -10);
scene.RootNode.CreateChildNode(new Light()
{
Color = new Vector3(Color.CadetBlue)
}).Transform.Translation = new Vector3(49, 0, 49);
3단계: 렌더러 및 렌더 대상 생성
깊이 텍스처를 사용하여 렌더러 및 큐브 맵 렌더 대상을 만듭니다.
using (var renderer = Renderer.CreateRenderer())
{
IRenderTexture rt = renderer.RenderFactory.CreateCubeRenderTexture(new RenderParameters(false), 512, 512);
rt.CreateViewport(cam, RelativeRectangle.FromScale(0, 0, 1, 1));
renderer.Render(rt);
ITextureCubemap cubemap = rt.Targets[0] as ITextureCubemap;
4단계: 큐브맵 면 저장
큐브맵의 각 면을 지정된 파일 이름으로 디스크에 저장합니다.
CubeFaceData<string> fileNames = new CubeFaceData<string>()
{
Right = "Your Output Directory" + "right.png",
Left = "Your Output Directory" + "left.png",
Back = "Your Output Directory" + "back.png",
Front = "Your Output Directory" + "front.png",
Bottom = "Your Output Directory" + "bottom.png",
Top = "Your Output Directory" + "top.png"
};
cubemap.Save(fileNames, ImageFormat.Png);
결론
축하해요! .NET용 Aspose.3D를 사용하여 3D 장면을 큐브맵으로 성공적으로 렌더링했습니다. 이 강력한 API를 사용하여 추가 사용자 정의 옵션을 탐색하고 3D 그래픽 프로젝트를 향상시키십시오.
자주 묻는 질문
Q: 다른 3D 파일 형식과 함께 .NET용 Aspose.3D를 사용할 수 있습니까?
예, Aspose.3D는 다양한 3D 파일 형식을 지원하여 프로젝트에 유연성을 제공합니다.
Q: Aspose.3D에 대한 지원은 어떻게 받을 수 있나요?
방문하다 Aspose.3D 포럼 커뮤니티 지원 및 토론을 위해.
Q: 무료 평가판이 제공됩니까?
예, 무료 평가판에 액세스할 수 있습니다 여기 .
Q: Aspose.3D를 사용하여 애니메이션이 포함된 장면을 렌더링할 수 있습니까?
전적으로! Aspose.3D는 애니메이션 3D 장면 렌더링을 지원합니다.
Q: 자세한 문서는 어디서 찾을 수 있나요?
다음을 참조하세요. Aspose.3D 문서 자세한 정보를 확인하세요.