O Adaptador R6 para R15 permite que avatares R15 se juntem à sua experiência R6. Todos os avatares na experiência ainda usarão os sistemas de escala e movimento R6. O adaptador permite que sua experiência aproveite os componentes R15 modernos, como roupas em camadas e cabeças animação, com o mínimo desempenho ou impacto de jogo para sua experiência.
É importante entender como o adaptador usa partes de adaptador e revisar as limitações conhecidas da funcionalidadeantes de habilitar e testar o adaptador para sua experiência.
Peças de Adaptador
O R6 para R15 Adapter implementa uma injeção de script Lua quando um avatar spawna que cria peças de adapters.
Esses são invisíveis MeshParts que têm o mesmo nome que as peças do corpo R6 e são soldados às suas peças de corpo R15 correspondentes. Os scripts permitem que as peças de adaptador aceitem interações de script R6 e as enviem para as peças de corpo R15 apropriadas.
As peças de adaptação fazem o seguindo:
- Emula a física R6 usando peças extra invisíveis com colisões de posição e dimensão R6.
- Define as peças visíveis do corpo R15 como não colisíveis.
- Escala e posiciona as peças R15 visíveis para corresponder ao tamanho R6 e posições de articulação.
- Atua como um cabo entre as peças do corpo R6 e R15. As alterações de propriedade aplicadas às peças invisíveis R6 são passadas para suas peças R15 correspondentes.
- Por exemplo, uma mudança de cor em R6 LeftArm é passado para as R15 LeftUpperArm , LeftLowerArm e 1> LeftHand1> peças.
Habilitando o R6 para Adaptador R15
Você pode habilitar o R6 para R15 Adapter configurando a propriedade Workspace.AvatarUnificationMode no Workspace. Você só pode acessar esta propriedade se o Tipo de Avatar estiver definido como R6 na sua 1>Configuração de Jogo
Para habilitar o R6 para R15 Adapter:
- In the Explorador, navigate to Área de Trabalho .
- Na janela Propriedades, set AvatarUnificationMode para Ativado .
Limitações Conhecidas
Em uma maioria de casos, o R6 para R15 Adapter funciona fora da caixa com os sistemas de uma experiência R6. Em raros casos, pode haver conflitos com sistemas personalizados que lidam com a segurança do jogo ou comportamento relacionado ao personagem. Veja o seguinte para uma lista de limitações ou conflitos potenciais que você pode encontrar ao usar o R6 para R15 Adapter.
Segurança de Jogo
Algumas experiências R6 com detecção de cheat ativo podem interpretar a injeção de script Lua como uma tentativa de contornar a segurança.
Como o comportamento padrão dos avatares R6 é gerar com todas as suas peças já em local, muitas experiências tendem a marcar alterações nas peças do corpo como possíveis exploits. In experiências com o adaptador ativado, os avatares R15 são gerados com seus corpos padrão antes de alterar as peças do corpo com base em seus salvos de corpo e acessórios.
Editadores de Avatar Personalizados
Experiências com editores de avatar personalizados que permitem que os jogadores troquem partes do corpo podem romper a conexão com as peças de adaptador.
Suporte R15 Pré-Existente
Experiências que verificam o tipo de modelo de avatar e incluem soluções específicas para cada caso R15 e R6 podem não funcionar adequadamente com o adaptador. AvatarUnificationMode usa caminhos de código correspondentes a R15, o que pode exigir testes em sua experiência.
Redimensionando uma Parte do Corpo
Jogos que redimensionam as peças do corpo R6 não verão a mudança de escala propagada para as peças R15 próximas. Este também é o caso se as peças forem movidas em conjunto.
Obter Chamadas da API GetChildren
GetChildren() chamadas retornam tanto as peças do R6 quanto suas peças correspondentes R15. Você pode precisar contar com essa informação extra.
Encontre as chamadas da API FindFirstChild
Não use imediatamente FindFirstChild() , ou "otimização de ponto", em seus scripts para encontrar peças de personagens. Em vez disso, use WaitForChild() antes de você chamar Class.
Essa sempre foi uma melhor prática para scripts do Roblox, mesmo que alguns casos funcionem sem seguir essa prática.
Condicionais de classe .NET
AvatarUnificationMode configura a cabeça para um MeshPart. Quaisquer chamadas que leiam ou escrevam na propriedade SpecialMesh.MeshId falharão.
Colisões de Cabeça
Os R15 que se juntam a uma experiência R6 não suportam colisões com sua parte da cabeça. Se o seu jogo detectar ou depender de colisões com uma parte da cabeça de um personagem, você também deve atualizar seus scripts para verificar por CollisionHead também.