Ressourcen
Asset-Typen
Referenz für alle unterstützten Asset-Typen und ihre Verwendung.
Typ-Referenz
gltfModel
Lädt eine GLTF- oder GLB-Datei. DRACO-Komprimierung wird automatisch unterstützt.
{
name: 'tree',
type: 'gltfModel',
path: '/models/tree.glb',
}
Als GLTF-Objekt zugreifen und an Entity3D.initModel() übergeben:
const gltf = resources.items['tree'] // GLTF
myEntity.initModel(gltf)
texture
Lädt eine THREE.Texture aus einer einzelnen Bilddatei.
{
name: 'ground',
type: 'texture',
path: '/textures/ground.jpg',
}
const texture = resources.items['ground'] // THREE.Texture
material.map = texture
cubeTexture
Lädt eine THREE.CubeTexture aus sechs Bildern (für Skyboxen / Umgebungskarten).
{
name: 'envMap',
type: 'cubeTexture',
path: [
'/textures/env/px.jpg', // +X
'/textures/env/nx.jpg', // -X
'/textures/env/py.jpg', // +Y
'/textures/env/ny.jpg', // -Y
'/textures/env/pz.jpg', // +Z
'/textures/env/nz.jpg', // -Z
],
}
sound
Lädt einen Audio-Puffer für die Verwendung mit Three.js-Audio.
{
name: 'explosion',
type: 'sound',
path: '/audio/explosion.mp3',
}
svg
Lädt eine SVG-Datei als Rohinhalt.
{
name: 'icon',
type: 'svg',
path: '/images/icon.svg',
}
font
Lädt eine Schriftart für die Verwendung mit THREE.FontLoader.
{
name: 'helvetiker',
type: 'font',
path: '/fonts/helvetiker_regular.typeface.json',
}
TypeScript-Typen
import type { Asset, AssetType } from '@mavonengine/core'
type AssetType = 'cubeTexture' | 'texture' | 'gltfModel' | 'sound' | 'svg' | 'font'
interface Asset {
name: string
type: AssetType
path: string | string[]
}