2018.2 já está disponível

Unity 2018.1 marcou o início de um novo ciclo com duas inovações principais no núcleo. Juntas, o Scriptable Render Pipeline (SRP) e o Shader Graph dão mais poder a artistas e desenvolvedores, enquanto o C# Job System, o Burst Compiler e o ECS tornam possível aproveitar processadores multi-core sem a dor de cabeça da programação. Unity 2018.2 se baseia nessas inovações e adiciona várias novas funcionalidades. Este post fornece uma visão geral das atualizações mais importantes em 2018.2.
Enquanto você percorre a lista de novos recursos, você pode baixar o Unity 2018.2 aqui ou via Unity Hub.
Um dos objetivos do Unity 2018.2 tem sido construir sobre os Scriptable Render Pipelines (SRPs) para permitir renderização de próximo nível. Outra área de foco tem sido desenvolver uma gama de recursos e melhorias que ajudarão você a ter sucesso em dispositivos móveis. Vamos dar uma olhada rápida no que fizemos nessas duas áreas antes de entrar em mais detalhes sobre todo o lançamento.
Unity 2018.2 otimiza o desempenho do Lightweight Render Pipeline (LWRP) e aprimora o High Definition Render Pipeline (HDRP) para ajudar você a alcançar qualidade visual de alto nível, incluindo várias melhorias no Shader Graph, que agora suporta ambos os pipelines (por favor, note que tanto o LWRP quanto o HDRP estão atualmente em pré-visualização).
Também adicionamos suporte para depuração de código gerenciado no iOS e Android, Windows, macOS, Nintendo Switch, UWP e PS4 para IL2CPP, e começamos a adicionar algumas otimizações móveis ao Lightweight Render Pipeline (LWRP).
Para projetos Android, o suporte a 64 bits (ARM64) recebe seu lançamento final, e agora permitimos que você adicione código Java à sua pasta de plugins do Unity sem precisar criar bibliotecas com antecedência.
Finalmente, vários novos recursos 2D estão disponíveis como pacotes de Pré-visualização, incluindo o importador de Gráficos Vetoriais e Pixel Perfect. O importador de Gráficos Vetoriais facilita o trabalho com gráficos SVG, e o Pixel Perfect facilita a obtenção de uma aparência retro perfeita em diferentes resoluções em uma ampla gama de dispositivos.
Para obter uma visão geral de todas as melhorias neste lançamento, continue lendo.
Em 2018.1, introduzimos o Scriptable Render Pipeline (em pré-visualização), que coloca o controle de novos pipelines de renderização poderosos nas mãos de artistas e desenvolvedores. Este lançamento inclui as seguintes atualizações do SRP:
Acelera a renderização da CPU
O agrupador SRP é um novo loop interno do motor Unity que acelera a renderização da CPU sem afetar o desempenho da GPU. Ele substitui o código de renderização SRP legado.
Jogos que usam Renderização Baseada em Físicas (PBR) geralmente têm muitos objetos e malhas diferentes que compartilham o mesmo shader e palavras-chave para todos os diferentes materiais por objeto. O agrupador SRP dá aos jogos que usam PBR um grande aumento de velocidade na CPU.
O agrupador SRP funciona com o Pipeline de Renderização de Alta Definição (HDRP) e o Pipeline de Renderização Leve (LWRP), com suporte atualmente para PC DirectX-11, Metal e PlayStation 4.
Reduz o tempo de construção e o tamanho dos dados do jogador
O tempo de construção e o tamanho dos dados do jogador aumentam com a complexidade do seu projeto devido ao aumento do número de variantes de shader.
Com a remoção de variantes de shader scriptáveis, introduzida em 2018.2, você pode gerenciar o número de variantes de shader geradas e, portanto, reduzir drasticamente o tempo de construção e o tamanho dos dados do jogador.
Esse recurso permite que você remova todas as variantes de shader com caminhos de código inválidos e/ou recursos não utilizados, e crie configurações de construção de shader, como "debug" e "release", sem afetar o tempo de iteração ou a complexidade de manutenção. A remoção de variantes de shader scriptáveis pode levar a um aumento massivo na eficiência da equipe. Veja este post no blog para saber mais sobre como a remoção de variantes de shader scriptáveis é implementada na arquitetura do pipeline de shader Unity.

Oferece alto desempenho
O Pipeline de Renderização Leve (LWRP) oferece alto desempenho, o que é especialmente útil para hardware de baixo desempenho, aplicações que consomem muitos recursos, como XR, e plataformas, como dispositivos móveis.
O LWRP melhora ainda mais o desempenho e a otimização com a utilização otimizada de tiles. O LWRP ajustará o número de carregamentos e armazenamentos em tiles para otimizar a memória das GPUs móveis. Ele também sombreia a luz em lotes, o que reduz o overdraw e as chamadas de desenho.
O LWRP básico é atualmente suportado em todas as plataformas de VR, no entanto, não suportará anti-aliasing por múltiplas amostras (MSAA) até 2018.3.
Observe que o LWRP atualmente não é suportado para AR portátil, como ARCore ou ARKit, ou dispositivos HoloLens ou Magic Leap. Novos planos de produtos serão comunicados em uma data futura.

Lançado pela primeira vez como uma Prévia em 2018.1, o Pipeline de Renderização de Alta Definição (HDRP) prioriza visuais de alta definição, visando principalmente plataformas de alto desempenho, como PC e consoles.
Em 2018.2, fomos mais longe para ajudá-lo a alcançar qualidade visual de alto nível. No entanto, é importante notar que os SRPs ainda são Prévias e, consequentemente, ainda não são recomendados ou suportados para produção. As melhorias incluem volumétricos, reflexão planar brilhante, AA especular geométrico e Reflexão & Refração de Espaço de Tela Proxy, decalques de malha e Máscara de Sombra.
Volumetrics: A névoa volumétrica recebe iluminação de todos os tipos de luz suportados, exceto luz de área. Também é possível controlar a densidade da névoa localmente com volume de densidade.
Reflexão planar brilhante: A reflexão planar agora suporta reflexão brilhante, o que significa que leva em conta a suavidade do material.
AA especular geométrico: Malhas com números densos de triângulos podem causar aliasing especular. Para resolver isso, agora há uma opção para reduzir e limitar a quantidade de aliasing.
Reflexão & Refração de Espaço de Tela Proxy: Esse recurso permite que você use volume proxy (volume que aproxima a borda da cena) para realizar reflexão e refração em espaço de tela. Embora não seja tão preciso quanto usar o buffer de profundidade, o custo em tempo de execução é menor.
Decalques de malha: Isso permite que você use malha para decalques além de decalques projetores.
Máscara de sombra: Anteriormente, este recurso no HDRP usava o modo Distance Shadowmask (desvanecimento dinâmico de sombra para máscara de sombra na distância máxima da sombra). Com 2018.2, agora é possível selecionar por luz se a sombra dinâmica renderiza apenas um objeto não mapeado por luz (correspondente ao modo de máscara de sombra do pipeline embutido). Assim, ao contrário do pipeline embutido, o HDRP permite que ambos os modos de máscara de sombra sejam ativados ao mesmo tempo, e você tem um controle por luz para o modo de máscara de sombra embutido.
Além disso, adicionamos suporte limitado ao Shader Graph para que você possa criar shaders visualmente, e estamos trabalhando para melhorar a estabilidade e o desempenho geral. Suporte limitado significa que apenas um subconjunto de recursos do HDRP está disponível no Shader Graph. Atualmente, não há recursos avançados de material (SSS, camada transparente), e a tesselação também não está disponível no momento.
Por fim, adicionamos um recurso de remoção de shaders, que torna possível evitar a compilação de shaders que não são necessários ao construir um jogador. Isso resulta em um tempo de construção muito mais rápido.
Observe que o HDRP não é atualmente suportado em nenhuma plataforma AR ou VR. O suporte para essas plataformas está programado para 2019. Novos planos de produtos serão comunicados em uma data futura.

Há várias melhorias no Lightmapper Progressivo, que saiu da Prévia em 2018.1.
A queda configurável no Lightmapper Progressivo permite que você combine curvas de queda fisicamente plausíveis ao assar suas luzes. Anteriormente, a intensidade observada de luzes spot e ponto era muito afetada pelo valor de alcance da luz. Isso não é fisicamente plausível porque a distância de queda (ou atenuação) de uma luz na realidade é determinada por sua intensidade.

Esse recurso permite que o Lightmapper Progressivo desacople alcance e intensidade, tendo uma queda de distância que está ligada à distância no espaço mundial. Embora a queda legada ainda seja suportada, agora também suportamos queda linear, distância ao quadrado e distância ao quadrado com atenuação a zero nos limites de alcance. O efeito de queda em quadrado inverso é ativado por padrão no HDRP para corresponder à iluminação em tempo real e habilita unidades físicas para intensidade de luz.
Costumávamos alocar a emissão e o albedo em um espaço de lightmap único para todos os nossos lightmaps. No entanto, como as instâncias geralmente compartilham as características de albedo/emissão, agora suportamos a geração desses mapas por instância única. Isso reduz a quantidade de memória que o Progressive Lightmapper usa, permitindo que você bake cenas ainda maiores.
Por razões de desempenho, muitas vezes é preferível dividir cenas maiores em "sub-cenas" menores que podem ser carregadas ou descarregadas durante a execução, dependendo da visibilidade. Isso é conhecido como "carregamento aditivo" ou uma configuração de "multi-cena".
O fluxo de trabalho suportado que o Unity oferece ao gerar iluminação GI para configurações de multi-cena permite que o usuário carregue todas as sub-cenas necessárias e, em seguida, faça com que elas gerem iluminação para essa hierarquia de cena completa. A saída é um LightingData.asset que armazena lightmaps, GI em tempo real pré-computada e dados de sonda. Isso está associado à primeira cena que é carregada, o que pode ser inferido como a cena "mestre".
Cenas que são carregadas/descarregadas durante a execução derivam seus dados de iluminação do LightingData.asset associado à cena mestre. Nesse cenário, as Configurações de Iluminação das sub-cenas são irrelevantes. No entanto, as cenas também podem ser baked individualmente ou carregadas em uma ordem diferente, dependendo da intenção. Isso pode levar a cenas com Configurações de Iluminação incompatíveis e dados de iluminação desalinhados. Por exemplo, skyboxes podem diferir, resoluções de lightmap podem variar ou modos de iluminação mistos podem ser diferentes.
Anteriormente, o Unity não alertava o usuário sobre esse problema e isso levou a alguma confusão quando os resultados não eram os esperados. O Unity agora gera um aviso para informar o usuário que há uma incompatibilidade. Em seguida, informações explícitas sobre quaisquer incompatibilidades são fornecidas para facilitar a depuração e validação.
Também expusemos a opção "por luz" para a função de ocultar sombras mapeadas por luz (somente API de script), permitindo que seja usada pelo HDRP.
Em 2018.1, introduzimos o Shader Graph como um pacote de Prévia, para permitir que você crie shaders visualmente. Em vez de escrever código, você pode criar e conectar nós em uma rede de gráficos. Cada nó no gráfico fornece feedback instantâneo sobre as mudanças, e sua facilidade de uso significa que até mesmo novos usuários podem participar da criação de shaders. Para este lançamento, fizemos várias melhorias, incluindo:
O Shader Graph agora suporta o HDRP com nós PBR e Unlit Master. Shaders construídos com o Shader Graph funcionam tanto com o LWRP quanto com o HDRP.

Agora você pode modificar a posição do vértice através do slot Posição nos nós PBR e Unlit Master. Por padrão, a entrada para este nó é posição do espaço do objeto. Entradas personalizadas para este slot devem especificar a posição local absoluta de um determinado vértice. Certos nós (como Formas Procedurais) não são viáveis no shader de vértice. Esses nós são incompatíveis com este slot.

As configurações para nós mestres agora estão disponíveis em uma pequena janela que você pode alternar para mudar várias configurações de renderização para seu shader.

Agora você pode editar o nome de referência para uma propriedade, facilitando muito a referência às suas propriedades de shader a partir do script. Para fazer isso, selecione a propriedade e digite um novo nome ao lado de Referência. Se você quiser redefinir para o nome padrão, clique com o botão direito em Referência e selecione, Redefinir referência.
Na janela de Propriedades expandida, você também pode alternar a caixa de seleção Exposto.
Agora você pode mudar o caminho dos Shader Graphs e Sub-Graphs. Quando você muda o caminho de um Shader Graph, isso modifica a localização que ele tem na lista de seleção de shaders. Quando você muda o caminho do Sub-Graph, ele terá uma localização diferente no menu de criação de nós.

Com este nó, você pode mudar a saída do gráfico dependendo do sinal da face de um fragmento dado. Se o fragmento atual faz parte de uma face frontal, o nó retorna Verdadeiro. Para uma face traseira, o nó retorna Falso. Observação: Essa funcionalidade requer que você tenha ativado duas faces no nó Master.

Isso adiciona funcionalidade de gradiente através de dois novos nós. O nó Amostra Gradiente amostra um gradiente com um parâmetro de Tempo dado. Você pode definir esse gradiente na visualização de controle do slot Gradiente. O nó Ativo de Gradiente define um gradiente que pode ser amostrado por múltiplos nós Amostra Gradiente usando diferentes parâmetros de Tempo.

Essa mudança expande o suporte da Unity para tipos de Textura através de dois novos tipos de propriedade e quatro novos nós. Esses permitem que você defina e amostre ativos do tipo Textura 3D e Textura 2D Array no Shader Graph.
Isso adiciona um novo nó para a funcionalidade LOD em um Sample de Textura 2D. O Sample de Textura 2D LOD usa os mesmos slots de entrada e saída que o Sample de Textura 2D, mas também inclui uma entrada para ajustes de nível de detalhe via um slot Vector1.
Agora você pode ver o código gerado para qualquer nó específico. Para fazer isso, clique com o botão direito no nó e selecione Mostrar Código Gerado. O trecho de código será aberto no editor de código que você vinculou ao Unity.
Esta versão inclui suporte experimental para executar o Editor no Vulkan tanto para Windows quanto para Linux. Vulkan é uma API de gráficos e computação de nova geração que fornece acesso de alta eficiência e multiplataforma a GPUs modernas usadas em uma ampla variedade de dispositivos, desde PCs e consoles até telefones móveis e plataformas embarcadas.
Nesta versão, adicionamos suporte para streaming de mipmaps de textura para a memória sob demanda (ou seja, apenas quando são necessários).
Qual é o benefício?
Você pode habilitar esse recurso para reduzir os requisitos de memória de textura de uma aplicação Unity.
Como funciona
Quando esse sistema está habilitado, o Unity só carregará os mipmaps de textura de maior resolução quando as malhas estiverem próximas a uma câmera ativa. Os dados de mipmap de alta resolução são mantidos na memória enquanto a memória total de textura estiver dentro de um orçamento definido pelo usuário. Se carregar um novo nível de mipmap de textura fizer com que a memória de textura exceda o orçamento, então os mipmaps de maior resolução, nas malhas mais distantes da câmera, serão liberados da memória.
Acelera o tempo de carregamento inicial
O tempo de carregamento da cena inicial também pode ser acelerado devido à redução nos dados de textura que são carregados primeiro (ou seja, carregando apenas os níveis de mipmap de menor resolução). As melhorias na velocidade de carregamento inicial são dependentes da plataforma.
Mais controle
O sistema de Streaming de Mipmap de Textura oferece controle total sobre quais níveis de mipmap são realmente carregados na memória. Normalmente, o Unity carrega todos os níveis de mipmap que estão armazenados no disco, mas com este sistema, você pode ter controle direto sobre quais níveis de mipmap são carregados.
Este sistema também troca uma pequena quantidade de tempo de CPU por economias potenciais significativas de memória GPU.
Simples de habilitar e gerenciar
O recurso é simples de habilitar através das Configurações de Qualidade, onde você pode definir, por textura, se cada uma deve ser transmitida pelo sistema. Você pode consultar as métricas para identificar o uso de memória da textura, enquanto ainda consegue ver as economias de memória.
Várias configurações também podem ser ajustadas para controlar o sistema, equilibrando as economias de memória e o custo de CPU, e permitindo que você priorize algumas texturas em relação a outras (por exemplo, texturas de personagens em relação a texturas de ambiente).

AnimationPlayables agora permite que os usuários escrevam seus próprios Playables em C# para interagir diretamente com os dados de animação.
Os usuários também podem escrever código C# multithread para controlar os dados de AnimationStream usados pelo PlayableGraph, o que também permite a integração de solucionadores IK feitos pelo usuário, animação procedural ou até misturadores personalizados no sistema de animação atual.
Aqui estão as melhorias em 2018.2:
Suporte para oito UVs
Isso permite que você use mais dados personalizados do que nunca.
MinMaxCurve e MinMaxGradient
Agora é possível usar esses tipos em seus scripts personalizados, fora dos Sistemas de Partículas, para combinar com o estilo usado pela interface do Sistema de Partículas.
Espaço de Cor Linear
Os Sistemas de Partículas agora convertem cores em espaço linear, quando apropriado, antes de enviá-las para a GPU.
Emitir de Sprites
Adicionamos dois novos modos ao módulo Shape, a fim de emitir de um componente sprite ou SpriteRenderer e combinar a emissão de partículas perfeitamente com os visuais do sprite.
BakeMesh
Existem duas novas APIs para assar a geometria de um sistema de partículas em uma malha: BakeMesh assa a geometria das partículas, e BakeTrailsMesh assa o módulo Trails em uma malha.
Mostrar Apenas Selecionado (também conhecido como Modo Solo)
Um recurso muito solicitado, isso foi tornado mais descobrível e acessível junto com todos os outros controles de visualização na sobreposição da Visualização da Cena, com os controles de Reproduzir/Reiniciar/Parar, etc.
Suporte a Textura ETC
Shaders que usam texturas alfa separadas agora podem ser usados com partículas, quando você usa sprites no módulo de Animação de Folha de Textura.
Experimente o pacote de pré-visualização Pixel Perfeito para manter-se fiel à sua visão de arte em pixel. O componente Câmera Pixel Perfeita ajudará você a obter pixels perfeitos e nítidos – independentemente do tamanho da tela – fazendo todos os cálculos automaticamente para você.
Seus sprites ainda se beneficiarão do recurso quando estiverem em movimento ou rotacionando, sempre mantendo uma pixelização nítida, sem precisar adicionar interpolação para suavizar as bordas, como ilustrado abaixo.

Tradicionalmente, a distância entre o centro de um Renderizador de Sprite e o eixo é usada para determinar qual sprite seria renderizado por último e, portanto, apareceria na frente da imagem.
Com este lançamento, você pode usar o ponto de pivô em vez do centro do sprite como ponto de referência nos vários métodos de classificação, como arranjar pela distância até o topo da tela. Por exemplo, em jogos RPG de cima para baixo, você precisa da parte inferior do sprite para determinar a ordem de renderização do sprite.
A nova configuração de ponto de pivô permite que você defina critérios que melhor se adequem ao seu jogo.

Agora você pode construir Tilemaps Hexagonais. Isso inclui suporte para Tiles Hexagonais de topo plano e de ponto, que são especialmente úteis para fazer jogos de estratégia ou jogos de tabuleiro digitais.


Este recurso permite que você importe Gráficos Vetoriais Escaláveis (SVG) diretamente para seus projetos. O Importador SVG permite que você crie ativos de sprite com um tamanho de arquivo muito pequeno que manterão sua qualidade em qualquer resolução.
O importador SVG suporta os recursos mais comuns da especificação SVG 1.1, como gradientes, preenchimentos, caminhos de recorte, linhas tracejadas e cantos arredondados. Sprites de gráficos vetoriais importados dessa maneira são suportados pelas ferramentas 2D do Unity.
Uma vez que um arquivo SVG é importado, os dados vetoriais são tessalados em triângulos e um sprite é gerado. Esse sprite pode então ser usado pelo sistema 2D. A fonte para o Importador SVG pode ser encontrada na pasta Editor do pacote.
Obtenha o Importador SVG como parte do pacote de visualização de Gráficos Vetoriais no Gerenciador de Pacotes.
As APIs de gráficos vetoriais podem ser usadas para criar e manipular construções vetoriais diretamente no código. A fonte para as APIs de Gráficos Vetoriais pode ser encontrada no namespace de Gráficos Vetoriais na pasta Runtime.
Você pode usar a API de Gráficos Vetoriais para criar ou manipular dados vetoriais diretamente no código. A nova API de Atlas 2D permite que você escreva ferramentas personalizadas para criar ou atualizar atlas. Por exemplo, você poderia criar texturas de personagens personalizadas usando a foto de perfil do jogador, ou poderia otimizar o atlas com base na configuração do jogador.
Agora você tem a capacidade de adicionar arquivos de origem .java (assim como .cpp e .a) às pastas de plugins do projeto Unity. Esses arquivos serão reconhecidos como plugins do Unity e compilados no APK sem exigir que o usuário construa bibliotecas separadamente no Android Studio. O código do plugin permanece parte do projeto Unity, eliminando a necessidade de criar um projeto separado no Android Studio.
Removemos a versão 5.0 dos assets padrão do Instalador na versão 2018.2 e estamos trabalhando em pacotes de substituição para cada parte do antigo pacote de prototipagem. O primeiro pacote (Assets Padrão: Personagens) estará disponível como uma Prévia logo após o lançamento da versão 2018.2. Ele conterá um Controlador de Primeira Pessoa e um Controlador de Terceira Pessoa integrados com Cinemachine, além de um ambiente de prototipagem construído com ProBuilder. Para mais detalhes, fique atento a um post no blog sobre o assunto nas próximas semanas. Para aqueles que precisam do pacote legado 5.0, ele permanecerá na loja de Assets.
Unity Hub (v1.0), que será lançado em breve, é uma nova ferramenta projetada para simplificar os processos de integração e configuração para todos os usuários. Ele fornece um local centralizado onde você pode gerenciar seus Projetos Unity, e simplifica como você encontra, baixa e gerencia suas licenças do Unity Editor e componentes adicionais.
Desde nosso lançamento inicial, temos trabalhado arduamente para corrigir bugs e aprimorar a experiência. Nas últimas seis semanas, já publicamos mais de quatro lançamentos que foram baixados e atualizados automaticamente nas máquinas dos nossos usuários. Aqui estão algumas coisas que serão lançadas com o Hub 1.0:
- Modelos de projeto
- Local de instalação personalizado
- Pacotes da Asset Store adicionados a novos projetos
- Alvo de construção de projeto modificado
- Editor: Componentes adicionados após a instalação
Caso você tenha perdido o lançamento beta em janeiro, você pode ler sobre isso no post do blog aqui.
Esta versão inclui novos recursos que fazem com que artistas e cineastas se sintam mais confiantes e no controle ao trabalhar no Unity, incluindo o seguinte:
- Um novo botão de Câmera Física permite que você revele configurações que artistas e cineastas acharão instantaneamente familiares, como Comprimento Focal padrão, Tamanho do Sensor e propriedades de Deslocamento da Lente.
- O Importador de Modelos agora preserva as propriedades das Câmeras Físicas exportadas do Autodesk® Maya® e outros DCCs compatíveis.
- As câmeras no Unity agora correspondem perfeitamente às câmeras em outros DCCs sem a necessidade de componentes adicionais ou cálculo manual de FOV.
- O componente da Câmera agora fornece um menu suspenso de Tamanhos de Sensor para câmeras comuns do mundo real.



O Unity Recorder 1.0, que será lançado em breve, vem com muitas atualizações que oferecem aos usuários uma maneira simples de gerenciar e gravar clipes de animação, vídeos e sequências de imagens a partir do Editor:
- Nova Interface: Uma visão limpa e uma maneira fácil de gerenciar suas gravações.
- Predefinições: Salve suas configurações para que você não precise começar do zero.
- API: Use scripts para acionar gravações através da API.
- Múltiplas gravações: Inicie várias gravações ao mesmo tempo e salve-as em uma lista se precisar usar as mesmas configurações no futuro.
- Grave clipes de vídeo com áudio em vários formatos.
- Grave sequências de imagens em vários formatos.
- Grave e exporte animações: Exporte clipes de animação (via FBX) para seus aplicativos DCC favoritos.
O Unity Recorder v1.0 estará disponível na Asset Store.
RakNet, nosso antigo recurso de rede, foi descontinuado na versão 5.1 e foi removido do Unity 2018.2. Isso significa que qualquer projeto que use RakNet não funcionará com esta versão.
O Sistema de Ativos Endereçáveis facilita a gestão de todas as coisas que compõem seu jogo, como prefabs, texturas, materiais, clipes de áudio, animações e assim por diante. À medida que os projetos crescem, o número de ativos também aumenta. Os usuários precisam referenciá-los de forma inteligente, caso contrário, tudo em seu jogo, desde a memória local até a distribuição de conteúdo, se tornará difícil de gerenciar.
Sua estratégia de distribuição de conteúdo, em particular, será mais difícil de gerenciar porque as referências de ativos geralmente são resolvidas no momento da construção, e os usuários frequentemente enfrentam uma refatoração pesada para fazer modificações.
O novo Sistema de Ativos Endereçáveis facilita para sua equipe escalar à medida que seu jogo aumenta de tamanho. Ele separa as três principais preocupações da gestão de ativos em tempo de execução: referência, empacotamento e distribuição. Isso simplifica a referência de conteúdo, seja na máquina local ou distribuído online via CDN, porque o conteúdo é carregado e descarregado automaticamente para melhor gerenciamento de memória. Também fornecemos ferramentas de profiler para otimizar ainda mais o uso da memória. No final, isso resulta em um tempo de iteração mais rápido para você.
O novo Sistema de Ativos Endereçáveis é enviado separadamente. Está disponível como um complemento via Package Manager e agora está em Pré-visualização.
Se você tem um monitor 4K, agora pode desfrutar do suporte de escalonamento de alta DPI tanto no Linux quanto no Windows no Editor e suporte para fatores de escala de exibição por monitor no Windows.
Desde o Unity 2018.1, temos apoiado duas plataformas de script na Plataforma Universal do Windows (UWP): .NET e IL2CPP. Com este lançamento, estamos descontinuando o suporte para a plataforma de script .NET. Os objetivos para esta descontinuação são duplos.
Mais fácil portar jogos para UWP
O primeiro objetivo desta descontinuação é facilitar para você portar jogos para UWP. Grande parte da dor dos desenvolvedores associada à portabilidade de jogos para UWP no passado foi devido a diferenças na área da API e diferenças entre o .NET Native e os tempos de execução Mono e IL2CPP que o Unity usa em outras plataformas. Essa mudança, em última análise, tornará mais fácil para a maioria dos desenvolvedores portar jogos para UWP.
Nos ajuda a oferecer melhor suporte
A segunda razão para esta descontinuação é facilitar para nós apoiá-lo, corrigindo problemas de forma eficiente. Como a plataforma de script .NET é completamente diferente dos tempos de execução que usamos para todas as outras plataformas do Unity, tem sido desafiador para nós manter um nível de qualidade consistente, em relação ao restante do Unity. Esta descontinuação, em última análise, nos permitirá gastar menos tempo mantendo a plataforma de script .NET e mais tempo trabalhando nas funcionalidades e problemas que são mais importantes para você.
IL2CPP tem a mesma área de API .NET que todas as outras plataformas do Unity, e o IL2CPP tem suporte para acessar tipos e APIs WinRT há algum tempo. Portanto, com a adição do depurador gerenciado IL2CPP em 2018.2, a experiência do desenvolvedor no IL2CPP agora está em pé de igualdade e é superior ao que a plataforma de script .NET oferece.
IL2CPP tem sido o padrão desde 2017.2, então esperamos que a maioria dos usuários não tenha problemas com isso. No entanto, se você ainda não tentou usar o IL2CPP e tiver algum problema, por favor, certifique-se de relatá-los. Planejamos encerrar o suporte de backend para a plataforma de script .NET em 2019.1.
Com nosso novo sistema multithread de alto desempenho introduzido em 2018.1, estamos reconstruindo a própria base do Unity. O novo sistema permitirá que seus jogos aproveitem ao máximo os processadores multicore atualmente disponíveis — sem a dor de cabeça da programação. Isso é possível graças ao novo Sistema de Trabalho C#, que oferece um ambiente seguro e fácil para você escrever código paralelo. Estamos também introduzindo um novo modelo para escrever código performático por padrão com o Sistema de Componentes de Entidade (ECS) e o Compilador Burst para produzir código nativo altamente otimizado.
Com grande desempenho por padrão, não só você poderá rodar seus jogos em uma variedade maior de hardware, como também poderá criar mundos de jogo mais ricos com mais unidades e simulações mais complexas. Você pode aprender mais aqui.
Em 2018.2, adicionamos várias melhorias, incluindo exemplos de sistemas reativos. O sistema reativo permitirá que você responda quando houver mudanças no estado do componente e emule um comportamento orientado a eventos. Você pode aprender mais sobre sistemas reativos assistindo a palestra de Joachim Ante na Unite Berlin sobre o assunto.
Também estaremos fornecendo uma série de exemplos e documentação sobre como implementar sistemas reativos usando ECS.
Durante a segunda metade do ano, estaremos fornecendo pequenos exemplos de jogos Unity criados por usuários da Unity e convertidos para ECS por nós.
Com este lançamento, a compilação burst para ECS está disponível em todas as plataformas de editor (Windows, Mac, Linux), e você poderá construir AOT para jogadores independentes (Desktop, PS4, Xbox, iOS, Android e Nintendo Switch).
À medida que avançamos para 2018.3, continuaremos a focar no desempenho do ECS, lançaremos uma Prévia de determinismo e suportaremos mais construções da linguagem .NET C# (DllImport, arrays constantes, foreach, etc.).
Estamos visando trazer o Compilador Burst para fora da Prévia no período de 2018.3.
A depuração gerenciada IL2CPP agora está disponível, permitindo que os desenvolvedores usem seu depurador preferido para encontrar e corrigir erros, mesmo ao usar o backend IL2CPP.
Todos os recursos de depuração serão suportados para Visual Studio (com Ferramentas do Visual Studio para Unity) e JetBrains Rider em plataformas independentes, PlayStation 4, plataformas móveis e Xbox One planejadas para mais tarde.

Unity 2018.2 é lançado com dezenas de correções de bugs relacionadas ao tempo de execução de script, graças a todo o ótimo feedback que recebemos desde o .NET 4.x.
Com este lançamento, o suporte ARM64-bit para Android, baseado na tecnologia IL2CPP, remove o rótulo de Prévia. Esta versão oferece benefícios de desempenho porque aplicativos Android de 64 bits e seus jogos poderão endereçar mais de 4GB de espaço de memória.
Agora você tem a opção de dividir a arquitetura de destino (x86, ARM 32, ARM 64) em vários APKs em vez de fazer um grande. Assim, para lojas que suportam essa opção (como o Google Play), você só precisará baixar o APK com a arquitetura relevante.

Uma das maiores barreiras para adquirir novos jogadores é a complicação do processo de instalação.
Baixar e abrir um aplicativo leva tempo e resulta em muitos usuários desistindo antes de experimentar seu jogo.
Com Google Play Instant, os jogadores podem experimentar uma versão instantânea de 10MB do jogo sem precisar instalá-lo primeiro. Este plugin simplifica a conversão de um aplicativo Android baseado em Unity em um aplicativo instantâneo, que pode ser implantado através do Google Play Instant.
O plugin está disponível como um projeto no GitHub para uso com Unity 2017.x e versões mais recentes.
Os recursos do plugin incluem:
- A opção de alternar entre os modos Instalado e Instantâneo
- Uma visão centralizada das Configurações de Build do Unity e das Configurações do Player Android que precisam ser alteradas para suportar o Google Play Instant
- A capacidade de construir e executar o Aplicativo Instantâneo em um dispositivo Android conectado via ADB
Agora suportamos totalmente a criptografia moderna (TLS1.2) em todas as plataformas a partir do .NET 4.x e APIs do UnityWebRequest. Isso inclui verificação automática contra armazenamentos de certificados específicos da plataforma.
No Xbox One e PS Vita, que não fornecem acesso à validação de armazenamento do sistema, um armazenamento CA embutido é usado para validação.
Conforme anunciado anteriormente, concluímos a descontinuação do UnityScript com este lançamento. Veja o post do blog de Richard Fine do verão passado para informações detalhadas.
Em geral, tomamos essa decisão porque, à medida que continuamos a atualizar o Scripting Runtime e a versão do C# que suportamos, o C# permitirá maiores possibilidades:
- A atualização do Scripting Runtime permite que você use .NET 4.6 e C# 7 ou posterior.
- O JobSystem torna possível escrever código multithreaded de forma fácil, protegendo você de condições de corrida e deadlocks.
- O tipo NativeArray permite que você crie e trabalhe com grandes arrays que têm seu armazenamento controlado por código nativo, dando a você mais controle sobre o comportamento de alocação e eliminando preocupações com coleta de lixo.
- Você tem controle sobre o pipeline de compilação de scripts, para que possa personalizar como seus scripts são combinados em assemblies.
Também paramos de aceitar novos pacotes da Asset Store que contêm código UnityScript e removemos pacotes com UnityScripts.
Finalmente, fornecemos uma ferramenta de Conversão Automática de UnityScript para C#. Existem alguns disponíveis, mas não estávamos satisfeitos com as abordagens que eles usam. Como aprendemos muito sobre como operar em código UnityScript quando escrevemos o Atualizador de Scripts, decidimos aplicar esse conhecimento e construir nossa própria solução. Você pode baixá-lo aqui.
Para aqueles interessados em usar o Visual Studio Code como IDE, desenvolvemos e mantemos a Extensão do Depurador do Visual Studio Code para Unity, que está disponível como Prévia.

Para aqueles interessados em usar o VSCode para depurar código C# dentro do Unity, por favor, vá para este post do fórum e experimente. Adoraríamos saber o que você pensa sobre isso. Observe que também estamos atualizando a extensão para torná-la compatível com a depuração de C# no novo runtime Mono no Unity e abordando bugs relatados.
A Remotação Holográfica do HoloLens permite que aplicativos aproveitem o poder de uma máquina desktop local para descarregar renderização e processamento em tempo de execução. Acreditamos que nossos clientes da área Automotiva e AEC acharão esse recurso particularmente útil. Saiba mais sobre como começar.
A versão 2018.2 também inclui 183 melhorias e 1426 correções. Certifique-se de consultar as notas de lançamento para a lista completa de novos recursos, melhorias e correções. Ficaremos felizes em discutir seu feedback sobre os novos recursos em nosso fórum.
Se você foi um testador beta, ajudou a tornar o lançamento da 2018.2 possível. Então, obrigado por experimentar todos os novos recursos e fornecer um ótimo feedback.
Os 25 vencedores do sorteio do Unity Gear Set
Atualmente, estamos revisando todos os participantes do sorteio da beta 2018.2 e em breve enviaremos vouchers de presente por e-mail para os 25 vencedores. (Para se qualificar para um prêmio, você precisava enviar um relatório de bug que não havia sido relatado anteriormente, que pudéssemos reproduzir e que reconhecêssemos como um bug.)
Participe da próxima beta
Se você ainda não é um testador beta, considere se tornar um. Você terá acesso antecipado aos mais recentes novos recursos e poderá testar se seu projeto é compatível com a nova versão. Você também poderá participar com alguns dos principais especialistas da comunidade Unity, ajudar a influenciar o futuro da Unity e ter a chance de ganhar prêmios legais.
Você pode obter acesso simplesmente baixando nosso teste beta aberto. Ao se juntar, você não apenas terá acesso a todos os novos recursos, mas também poderá nos ajudar a garantir o software da mais alta qualidade.
Como ponto de partida, dê uma olhada neste guia para ser um testador beta eficaz. Se você gostaria de receber e-mails ocasionais com notícias da beta, atualizações e dicas & truques, inscreva-se abaixo.
