Componenti

Il rendering remoto di Azure usa il modello di Sistema componente entità. Mentre le entità rappresentano la posizione e la composizione gerarchica degli oggetti, i componenti sono responsabili dell'implementazione del comportamento.

I tipi di componenti usati più di frequente sono , che aggiungono mesh componentsmesh alla pipeline di rendering. Analogamente, vengono usati componenti luminosi per aggiungere un'illuminazione e componenti del piano di taglio, per tagliare le mesh aperte.

Tutti questi componenti usano come punto di riferimento la trasformazione (posizione, rotazione, scala) dell'entità a cui sono collegati.

Uso dei componenti

È possibile aggiungere, rimuovere e modificare facilmente i componenti a livello programmatico:

// create a point light component
RenderingSession session = GetCurrentlyConnectedSession();
PointLightComponent lightComponent = session.Connection.CreateComponent(ObjectType.PointLightComponent, ownerEntity) as PointLightComponent;

lightComponent.Color = new Color4Ub(255, 150, 20, 255);
lightComponent.Intensity = 11;

// ...

// destroy the component
lightComponent.Destroy();
lightComponent = null;
// create a point light component
ApiHandle<RenderingSession> session = GetCurrentlyConnectedSession();

ApiHandle<PointLightComponent> lightComponent = session->Connection()->CreateComponent(ObjectType::PointLightComponent, ownerEntity)->as<PointLightComponent>();

// ...

// destroy the component
lightComponent->Destroy();
lightComponent = nullptr;

Un componente è associato a un'entità al momento della creazione e non può essere spostato successivamente in un'altra entità. I componenti vengono eliminati in modo esplicito con Component.Destroy() o automaticamente, quando l'entità proprietaria del componente viene distrutta.

È possibile aggiungere a un'entità una sola istanza di ogni tipo di componente alla volta.

Indicazioni specifiche per Unity

L'integrazione di Unity dispone di funzioni di estensione aggiuntive per l'interazione con i componenti. Vedere Oggetti e componenti di gioco Unity.

Documentazione sull'API

Passaggi successivi