UNPKG

@dcl/ecs

Version:
51 lines (50 loc) 1.2 kB
import { Material } from '../generated/index.gen'; const TextureHelper = { Common(texture) { return { tex: { $case: 'texture', texture } }; }, Avatar(avatarTexture) { return { tex: { $case: 'avatarTexture', avatarTexture } }; }, Video(videoTexture) { return { tex: { $case: 'videoTexture', videoTexture } }; } }; export function defineMaterialComponent(engine) { const theComponent = Material(engine); return { ...theComponent, Texture: TextureHelper, setBasicMaterial(entity, material) { theComponent.createOrReplace(entity, { material: { $case: 'unlit', unlit: material } }); }, setPbrMaterial(entity, material) { theComponent.createOrReplace(entity, { material: { $case: 'pbr', pbr: material } }); } }; }