Crea una cuenta o inicia sesi贸n

隆Contin煤a aprendiendo sin ning煤n costo! 脷nete y comienza a potenciar tu carrera

Curso de C# para Videojuegos

Curso de C# para Videojuegos

Juan Gabriel Gomila

Juan Gabriel Gomila

El script de control

8/53
Recursos

Aportes 25

Preguntas 5

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Compa帽eros algo que me paso con mientras hacia el c贸digo en Visual Studio fue el hecho que no reconoci贸 el objeto Rigidbody2D en el intellisense

esto puede generar errores como por ejemplo escribir mal el nombre de la clase o de la librer铆a de Unity, o no tener la documentaci贸n exacta de las clases u objetos que maneja, lo solucionan de esta forma:

  1. En el men煤 de Visual Studio van a Herramientas -> Obtener Herramientas y caracter铆sticas
  2. Se le abrir谩 el instalador de VS Studio, cierren el VS para continuar
  1. Seleccionen Desarrollo de juegos con Unity y luego hacen clic en modificar en la parte inferior derecha. El proceso tomara unos minutos.

  2. En Unity, en el men煤 van a Editar -> Preferencias, al abrir el panel seleccionen la opci贸n Herramientas Externas y busquen la opci贸n Editor scripts externo

Por defecto les va aparecer Abrir por extensi贸n de archivo c谩mbielo por Visual Studio Community

  1. Al abrir el script nuevamente podr谩n observar que ahora si soporta los tipos de Unity con su documentaci贸n y dem谩s en el intellisense.

La raz贸n por la cual el M茅todo 鈥淪tart鈥 y 鈥淯ptade鈥 no se le puede cambiar de nombre es que son Event Funtions, que obtienes al heredar de Monobehaviour, estas sera cumplen su funcionamiento asociado al evento de esa funci贸n. Como lo sera 鈥淪tart鈥 [Ejecutarse una sola vez], 鈥淯pdate鈥 [Ejecutarse en cada frame].

Existes muchas mas, como 鈥淎wake鈥, 鈥淟ateUpdate鈥, 鈥淥nEnable鈥濃 entre otros.

Puedes saber mas sobre Event Funtions Aqu铆

Si a alguien no le muestra el autocompletado con las cosas de Unity. Tiene que ir a la Ventana de Preferencias (que est谩 en la barra de tareas en la secci贸n de Editar). Luego, ya en la ventana, ir en la barra lateral a 鈥楨xternal Tools鈥 y ah铆 escoger como External Script Editor a 鈥榁isual Studio Community 2019鈥 y cierra. Se guarda autom谩ticamente.

Hola, tengo un inconveniente al tratar de asignarle a mi personaje el script, lo hago de las formas indicadas en el video pero me aparecen el siguiente mensaje:

鈥渃an麓t add script behavior assemblyIfo. The script needs to drive from monobehaviour!鈥

Otra forma en la que se pueden editar las variables sin hacerlas publicas y asi se evita que otros scripts puedan modificar la variable es utilizando SerializedField.

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    // Configurations params
    [SerializeField] float jumpForce = 6f;
    Rigidbody2D rigidBody;
    Animator anim;

    // Start is called before the first frame update
    void Start()
    {
        anim = GetComponent<Animator>();
        anim.SetBool("isOnTheGround", true);
        anim.SetBool("isAlive", true);
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetButtonDown("Jump"))
        {
            anim.SetBool("isOnTheGround", false);                
        }
        if (Input.GetButtonUp("Jump"))
        {
            anim.SetBool("isOnTheGround", true);
        }       
    }
}

A mi no se me autocompleta la segunda llave cuando abro una, ni los parentesis, alguien sabe como puedo modificarlo?

Hola, c贸mo botoo un comente que agregara, por ejemplo un Collider?

hola, tengo un error al momento de generar lo de rigidBody2d porque al parecer no esta funcionando el monobeheaviour, osea no reconoce que es una clase de UnityEngine

Librerias (parte superior

Nombres de clases en AZUL 鈥 PlayerController : MonoBehaviour (significa que hereda de MonoBehaviour)

void -> no nos devulve nada el metodo

Podemos ocupar un TileMap para hacer el escenario鈥

Un consejo, la pantalla fondo blanco en programaci贸n cansa mucho la vista, usen algun tema de tipo dark mode!

nuestro primer script:![](

el dark mode se ve bien solo cuando trabajas, cuando compartes tu pantalla no es recomendable.

Otro nombre de variable normalmente para el rigidbody es 鈥渞b鈥

private Rigidbody2D rb;

Con la parte de los nombres de las variables es preferencia de cada quien, esto es una forma de hacerlo, solo tener en cuenta que los nombres de las variables debe describir su uso en el programa.

En mi caso a quedado as铆

 private Rigidbody2D rb;

 private void Awake()
 {
     rb = GetComponent<Rigidbody2D>();
 }

Hola,me gustar铆a saber que programa usar para hacer los scripts,porque no tengo licencia de VisualStudio y no se como instalar Mono(Aparentemente este programa ya no se puede usar en Unity).

Visual Studio e puede conseguir gratis? o siempre es pago?

Unity tiene una serie de tutoriales que pueden reforzar lo que estamos aprendiendo aqu铆.
https://www.youtube.com/playlist?list=PLX2vGYjWbI0S9-X2Q021GUtolTqbUBB9B

el metodo fixedUpdate() nos ayuda con los problemas de los frame que puede llegar a tener el metodo update

Sin prisa pero sin Pausa!!!

Para el Collider de la roca me parece que es mucho mas practico utilizar Polygon Collider 2D se adapta perfectamente a la estructura de la roca

Excelente como te van explicando paso por paso.

Vaya que buena clase, me late un buen como explica hasta la raz贸n del porque en el c贸digo las palabras se ponen de uno u otro color.

En mi caso uso Microsoft visual studio 2017 y tenia problemas con el intellisense tambi茅n, capaz ya era l贸gica pero tuve rato con el problema haha.

Deben activar esa solapa.

Genial

驴Por qu茅 no utiliza un mesh collider? No se ajusta mejor o 驴c贸mo funciona?