1
resposta

[Bug] erro no codigo

O meu visual studio nao reconheceu o Vector3, e tambem os auto completes nao sao relacionados a unity

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Vector3;

public class Controlador-jogador : MonoBehaviour
{
    void Update () {

        float eixoX = Input.GetAxis("Horizontal");
        float eixoZ = Input.GetAxis("Vertical");

        Vector3 direcao = new Vector3(eixoX, 0, eixoZ);

        transform.Translate(direcao);

    };
}
1 resposta

Olá Arthur! Como vai?

Tomando como base o que você descreveu e pelas imagens que enviou, parece que há alguns problemas no código que podem estar causando os erros no Visual Studio e afetando o autocompletar relacionado ao Unity.

  1. Namespace Incorreto: No seu código, você está tentando usar using UnityEngine.Vector3;, o que não é necessário e está incorreto. Vector3 é uma estrutura que faz parte do namespace UnityEngine, então você só precisa de using UnityEngine;.

  2. Nome do Script: O nome do script Controlador-jogador contém um hífen, o que não é permitido em nomes de classes em C#. Os nomes das classes devem seguir as convenções de nomenclatura do C#, que geralmente usam CamelCase sem caracteres especiais como hífen. Sugiro alterar para ControladorJogador ou algo similar.

  3. Ponto e vírgula extra: No final do método Update(), você colocou um ponto e vírgula (;) depois das chaves de fechamento. Isso não é necessário e pode ser removido.

Aqui está como seu código revisado deve parecer:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ControladorJogador : MonoBehaviour
{
    void Update()
    {
        float eixoX = Input.GetAxis("Horizontal");
        float eixoZ = Input.GetAxis("Vertical");

        Vector3 direcao = new Vector3(eixoX, 0, eixoZ);

        transform.Translate(direcao);
    }
}

Após essas correções, tente compilar novamente o código. Se o Visual Studio ainda não estiver reconhecendo as classes do Unity ou o autocompletar não estiver funcionando corretamente, verifique se o projeto do Unity está corretamente configurado para usar o Visual Studio como seu editor de scripts. Você pode fazer isso indo em Edit > Preferences > External Tools no Unity e selecionando o Visual Studio como o editor externo.

Espero que estas dicas resolvam os problemas que você está enfrentando!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.