Usando Git para versionar nuestro proyecto Unity 3D

Publicado por: Alonso | en Tutoriales | hace 1 año,8 meses | Comentarios

Nota: Para este tutorial el usuario deberá tener nociones básicas del uso de la consola en Linux.

Bueno mi gente lo prometido es deuda y aquí les traigo la primera entrada teórico / prática para empezar a integrar herramientas realmente poderosas a nuestro workflow al momento de desarrollar un videojuego.

En esta ocasión les traigo GIT, una herramienta que como ya explique en entradas anteriores sirve para versionar nuestro proyecto y compartir el proyecto con otros desarrolladores, diseñadores, etc. Con el objetivo de trabajar de manera sincronizada sobre el proyecto y sin perder cambios que se hagan al videojuego.

Existen dos formas de utilizar GIT, la primera es utilizando la linea de comandos y la segunda a través de una aplicación con interfaz gráfica. En este tutorial vamos a utirlizar la línea de comandos, puesto que de esa forma comprendemos mejor como funciona GIT, sin embargo, al final dejare algunas aplicaciones recomendadas para utilizar GIT con una aplicación con interfaz gráfica.

Este tutorial se divide en los siguientes pasos:

  1. Instalación de GIT
  2. Explicación de comandos básicos de GIT
  3. GIT y Unity 3D
  4. Versionando nuestro proyecto en la nube
  5. Caso de uso
  6. Añadiendo cambios a nuestro proyecto

 

Instalación de GIT.

Para instalar GIT dentro de Linux, solo debemos acceder al administrador de paquetes de nuestra distribución, para el caso de Ubuntu, basta con ejecutar en la consola: sudo apt-get install git-core o buscar en Ubuntu Software Center el paquete git-core y presionar el botón instalar.

Explicación de comandos básicos de GIT.

Es necesario familiazarse con GIT antes de explotar todo su poder, por tal motivo vamos a explicar los comandos básicos de esta herramienta.

git clone: Permite clonar un repositorio a nuestro directorio local.

git commit: Usando el comando con el parámetro -m, le indicamos a git que deseamos escribir un mensaje (el cual es obligatorio). Este mensaje debería incluir los cambios que vamos a realizar. Ejemplo: git commit -m "Implementado el menú principal"

git add: Se utiliza para indicar que archivos van a ser parte de los cambios que se enviarán al servidor donde se aloja nuestro código, imagenes y demás.

git push: Envia los cambios al servidor

git pull: Trae los ultimos cambios del servidor.

GIT y Unity 3D.

Es importante distinguir que ficheros se deben versionar y cuales hacen parte de las configuraciones particulares de nuestro sistema operativo o de nuestra instalación de Unity 3D. Por tal motivo GIT permite ignorar los ficheros que no deseemos versionar, las carpetas y demás.

Para hacer esto, debemos crear un fichero llamado .gitignore, el cual funciona como un archivo de texto y donde colocaremos las reglas para que GIT actue dependiendo de las mismas, ejemplo de un fichero .gitignore para versionar proyectos Unity 3D es el siguiente: https://bitbucket.org/snippets/heroicogames/L88gE

Es necesario cambiar dos opciones dentro de Unity para versionar correctamente los ficheros que este maneja: Escenas, texturas, modelos 3D, etc. 

Para hacer los cambios es necesario ir a Edit -> Project Settings -> Editor y cambiar Version Control [Mode] = Visible Meta Files y Asset Serialization [Mode] = Force Text

 

 

Versionando nuestro proyecto en la nube.

Existen varios servicios que funcionan con GIT y nos permiten alojar nuestros proyectos en servidores en la nube, como Gitlab, Bitbucket, Github.

De acuerdo al tipo de proyecto y necesidades de cada persona o grupo de personas se debe verificar cual es la mejor opción.

Caso de uso.

Ahora bien, ¿en realidad me sirve para algo todo lo que hice anteriormente?, hay herramientas como Dropbox, Google Drive, que tambien me permiten versionar archivos y la curva de aprendizaje es muy corta. Pues aunque parezca lo mismo, no lo es, y por eso voy a exponer varios casos que se pueden presentar y en los cuales Git es muy superior.

Generalmente los videojuegos se desarrollan por más de una persona, por ejemplo un programador y un diseñador gráfico. Por tanto la cantidad de personas a trabajar inicialmente es de dos, ambos se compartiran imagenes y código fuente del proyecto.

Nota: Es recomendable versionar los proyectos aún cuando solo una persona trabaje en el mismo, de esta forma es más fácil compartir o mantener seguro el proyecto.

  1. Lo primero que hay que hacer es crear una cuenta en Gitlab: https://gitlab.com/ (para este ejemplo use Gitlab, pero ustedes pueden seleccionar la opción que más les convenga)
  2. El segundo paso es crear un proyecto dentro de gitlab
  3. El tercer paso es crear el proyecto Unity 3D
  4. Como ya tenemos nuestro proyecto Unity 3D creado en nuestro computador, seguimos las instrucciones que indica gitlab para este caso y luego de haber completado los pasos, tendremos nuestro código en la nube y listo para compartir.

Añadiendo cambios a nuestro proyecto.

Cada vez que modifiquemos algo en nuestro proyecto y finalicemos dichos cambios, necesitamos compartir el trabajo con el resto del equipo.

Por ejemplo, en caso de haber incluido un nuevo modelo 3D (del personaje principal) en el proyecto Unity y deseamos que el programador tenga acceso a dicho modelo para hacer el algoritmo que lo moverá, hacemos lo siguiente:

  1. git status: Para verificar los cambios que tenemos pendientes (el modelo 3D).
  2. git add . : si ponemos un punto al final de este comando, git indicará que todos los cambios se pretenden versionar.
  3. git commit -m "Agregado el personaje principal del juego": Agregamos un mensaje a nuestros cambios.
  4. git push origin master: Mandamos nuestros cambios al servidor.

GIT es un programa que da bastante de que hablar, por tal motivo lo visto aquí es sólo material introductorio, los animo a seguir investigando y buscando formas de ser más productivo con todas estas herramientas.

Nos vemos en la próxima entrada y feliz día.

Comentarios

Búsqueda

Publicaciones recientes

Archivo

2017
2016
2015

Categorías

Editorial 3

Herramientas 4

Tutoriales 2

Etiquetas

GIT(1) Game Engine(4) Desarrollo(5) Audio(1) Unity3D(3) Linux(7) 3D(1)

Feeds

RSS / Atom

Enlaces Sociales

ubicación

Cartagena de Indias, Bolivar,
Colombia.

Template by Blacktie Mezzanine theme by CodingHouse