Exemplos de Scripting

Uma coleção de snippets e exemplos de script úteis.

Se é novo em scripting, altamente recomendamos ler os guias seguintes primeiro:

Abaixo encontrará alguns scripts básicos como referência rápida.

Também oferecemos muitas cenas de exemplo e projetos completos que pode descarregar e usar como ponto de partida:

Componente básico

@code ts twoslash

ver scripting para todos os eventos de componente

Referenciar um Objeto do Unity

@code ts twoslash

Referenciar e carregar um asset do Unity (Prefab ou SceneAsset)

@code ts twoslash

Referenciar e carregar cenas do Unity

::: tip Encontre um exemplo funcional nos nossos samples para descarregar e experimentar :::

@code ts twoslash

Receber Cliques em Objetos

Adicione este script a qualquer objeto na sua cena que deseja que seja clicável. Certifique-se de ter também um componente ObjectRaycaster na hierarquia pai desse objeto.

test

@code ts twoslash

Cliques em Objetos em Rede

Adicione este script a qualquer objeto na sua cena que deseja que seja clicável. Certifique-se de ter também um componente ObjectRaycaster na hierarquia pai desse objeto. O componente enviará o clique recebido para todos os clientes conectados e levantará um evento ao qual pode reagir na sua aplicação. Se estiver a usar Unity ou Blender, pode simplesmente atribuir funções para chamar ao evento onClick para, por exemplo, reproduzir uma animação ou ocultar objetos.

@code ts twoslash

Reproduzir Animação ao Clique

@code ts twoslash

Referenciar um Animation Clip

Isto pode ser útil se deseja executar a sua lógica de animação personalizada. Pode também exportar um array de clips. @code ts twoslash

Criar e invocar um UnityEvent

@code ts twoslash ::: tip Os eventos EventList são também invocados ao nível do componente. Isto significa que também pode subscrever o evento declarado acima usando myComponent.addEventListener("my-event", evt => {...}) também. Esta é uma funcionalidade experimental. Por favor, forneça feedback no nosso fórum :::

Declarar um tipo de evento personalizado

Isto é útil quando deseja expor um evento ao Unity ou Blender com alguns argumentos personalizados (como uma string) @code ts twoslash

Exemplo de uso:

Usar objetos aninhados e serialização

Pode aninhar objetos e os seus dados. Com decoradores @serializable(SomeType) que correspondam corretamente, os dados serão serializados e desserializados nos tipos corretos automaticamente.

No seu componente typescript: @code ts twoslash

Em C# em qualquer script: @code

::: tip Sem os decoradores de tipo corretos, ainda obterá os dados, mas apenas como um objeto simples. Isto é útil quando está a portar componentes, uma vez que terá acesso a todos os dados e poderá adicionar tipos conforme necessário. :::

Usar Web APIs

::: tip Tenha em mente que ainda tem acesso a todas as web apis e pacotes npm! Essa é a beleza do Needle Engine, se nos permitem dizê-lo aqui 😊 :::

Exibir localização atual

@code ts twoslash

Exibir hora atual usando uma Coroutine

@code ts twoslash

Alterar propriedade de shader personalizada

Assumindo que tem um shader personalizado com um nome de propriedade _Speed que é um valor float, é assim que o alteraria a partir de um script. Pode encontrar um exemplo live para descarregar nos nossos samples

Alternar atributo src

Ver exemplo live no StackBlitz

Adicionar novos efeitos de postprocessing

Certifique-se de instalar npm i postprocessing no seu projeto web. Então pode adicionar novos efeitos derivando de PostProcessingEffect.

Para usar o efeito, adicione-o ao mesmo objeto que o seu componente Volume.

Aqui está um exemplo que envolve o efei de postprocessing Outline. Pode expor variáveis e configurações como de costume, pois qualquer efeito é também apenas um componente na sua cena three.js.

@code

Comportamento de ParticleSystem personalizado

@code ts twoslash

Componente de Áudio 2D personalizado

Este é um exemplo de como poderia criar o seu próprio componente de áudio. Para a maioria dos casos de uso, no entanto, pode usar o componente AudioSource principal e não precisa de escrever código.

@code ts twoslash

Ficheiros externos arbitrários

Use o tipo FileReference para carregar ficheiros externos (por exemplo, um ficheiro json) @code ts twoslash

Página traduzida automaticamente usando IA

Last updated