Hola.
Cuando comienzas a trabajar en un proyecto para Hololens, una de las primeras cosas que aprendes es que “Unity3D es diferente”. Además de los aspectos gráficos y del cambio de paradigma, hay un punto importante a tener en cuenta.
Si bien un proyecto de Unity es una colección de archivos, la solución no es tan simple como controlar TODOS con un sistema de versionado de archivos (TFVC o GIT, por ejemplo). Tener un control sobre el ciclo de vida de los mismos, orientados a proyecto, requiere algunas sutilezas especiales a tener en cuenta.
Pues bien, yo he ido aprendiendo a tropezones. Y la verdad es que ha sido una experiencia interesante. Herramientas como Visual Studio Tools for Unity hacen que muchos de los conocimientos que ya poseemos trabajando con Visual Studio, puedan ser fácilmente traspasados a Unity3D. Sin embargo, también puedes dar un paso más. Y aquí es fundamental leer este artículo de MSDN, Application Lifecycle Management (ALM) with Unity Apps.
En el mismo se realiza un recorrido sobre el soporte en Unity de herramientas de Team Foundation o Team Services en los apartados
- Agile Tools
- Modeling
- Code
- Build
- Testing
- Improve Code Quality
- Release Management
- Monitor with HockeyApp (sigh!)
Lo interesante, es que en apartados como por ejemplo el control de archivos, se nos explica que Unity trabaja diferente y que lo mejor es leer un poco de documentación oficial de Unity: Using External Version Control Systems with Unity. Otro escenario similar, es el que se presenta con la compilación, donde la recomendación va por automatizar la compilación y generación de paquetes utilizando command line en MSBuild.
La verdad es que es un documento a tener en cuenta y una buena base para saber lo que necesitamos si queremos crear apps de Calidad con Unity3D y Visual Studio.
Saludos @ Toronto
El Bruno
References
- MSDN, Application Lifecycle Management (ALM) with Unity Apps
- Visual Studio Marketplace, Visual Studio Tools for Unity