UNPKG

@playcanvas/react

Version:

A React renderer for PlayCanvas – build interactive 3D applications using React's declarative paradigm.

28 lines 1.2 kB
import { useComponent } from "../hooks/index.js"; import { Asset, Entity } from "playcanvas"; import { createComponentDefinition, validatePropsWithDefaults, getStaticNullApplication } from "../utils/validation.js"; /** * The Sprite component allows an entity to render a 2D sprite. * * @param {SpriteProps} props - The props to pass to the sprite component. * @see https://api.playcanvas.com/engine/classes/SpriteComponent.html * @example * <Entity> * <Sprite asset={asset} /> * </Entity> */ export const Sprite = (props) => { const safeProps = validatePropsWithDefaults(props, componentDefinition); useComponent("sprite", safeProps, componentDefinition.schema); return null; }; const componentDefinition = createComponentDefinition("Sprite", () => new Entity("mock-sprite", getStaticNullApplication()).addComponent('sprite'), (component) => component.system.destroy(), "SpriteComponent"); componentDefinition.schema = { ...componentDefinition.schema, asset: { validate: (value) => value instanceof Asset, errorMsg: (value) => `Invalid value for prop "asset": "${value}". Expected an Asset.`, default: null } }; //# sourceMappingURL=Sprite.js.map