Jelenet megjelenítése kockatérképbe hat arccal

Bevezetés

Üdvözöljük ebben a lépésről-lépésre szóló útmutatóban, amely egy jelenet hat arcú kockatérképpé való renderelésére vonatkozik az Aspose.3D for .NET használatával. Ebben az oktatóanyagban végigvezetjük a lenyűgöző kockatérkép létrehozásának folyamatán egy 3D-s jelenet renderelésével. Az Aspose.3D egy hatékony .NET API, amely leegyszerűsíti a 3D grafikus manipulációt, és ezzel az útmutatóval kihasználhatja a képességeit lenyűgöző kockatérképek létrehozásában.

Előfeltételek

Mielőtt belevágnánk az oktatóanyagba, győződjön meg arról, hogy a következő előfeltételek teljesülnek:

  • C# és .NET fejlesztési ismeretek.
  • Aspose.3D for .NET telepítve. Letöltheti itt .
  • 3D jelenetfájl GLB formátumban (pl. “VirtualCity.glb”) a megjelenítéshez.

Névterek importálása

Kezdje azzal, hogy importálja az Aspose.3D szükséges névtereit a C# kódban:

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. lépés: Töltse be a jelenetet

Töltse be a 3D-s jelenetfájlt a következő kóddal:

Scene scene = new Scene(RunExamples.GetDataFilePath("VirtualCity.glb"));

2. lépés: Hozza létre a kamerát és a fényeket

Hozzon létre egy kamerát és két lámpát a jelenet megvilágításához:

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. lépés: Hozzon létre renderelőt és renderelő célt

Hozzon létre egy megjelenítőt és egy kockatérkép renderelő célt mélységi textúrával:

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. lépés: Mentse el a Cubemap arcokat

Mentse a kockatérkép minden oldalát a lemezre meghatározott fájlnevekkel:

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);

Következtetés

Gratulálunk! Sikeresen megjelenített egy 3D-s jelenetet kockatérképben az Aspose.3D for .NET használatával. Fedezze fel a további testreszabási lehetőségeket, és javítsa 3D grafikus projektjeit ezzel a hatékony API-val.

Gyakran Ismételt Kérdések

K: Használhatom az Aspose.3D for .NET fájlt más 3D fájlformátumokkal?

Igen, az Aspose.3D különféle 3D fájlformátumokat támogat, rugalmasságot biztosítva a projektekben.

K: Hogyan kaphatok támogatást az Aspose.3D-hez?

Meglátogatni a Aspose.3D fórum közösségi támogatásra és beszélgetésekre.

K: Van ingyenes próbaverzió?

Igen, hozzáférhet az ingyenes próbaverzióhoz itt .

K: Renderelhetek jeleneteket animációkkal az Aspose.3D használatával?

Teljesen! Az Aspose.3D támogatja az animált 3D jelenetek megjelenítését.

K: Hol találok részletes dokumentációt?

Utal Aspose.3D dokumentáció mélyreható tájékoztatásért.