Desarrollo de GameObject para pintar una imagen
La idea es tener una imagen y que al tocar cada área cambie de color como que si estuviese pintando la imagen por sesiones, solo se necesita que con un evento del mouse, o touch de un área especifica en la configuración para que se modifique todo el color del área.
Desarrollar GameObject un que sea capaz de agregar dinámicamente un componente de SpriteRender con una imagen que se encuentra en una carpeta que esta dentro de la StreamingAssets
Esta imagen esta seccionada por áreas, las áreas están definidas en un archivo de configuración json que se encuentra en la misma carpeta de donde se saca la imagen png
La imagen es png con formato RGB de 8 bits, con una resolución de 72 a 150dpi, cada área de la imagen tiene un color y cada rojo es diferente, estos rojos están definidos en el archivo json
A cada sección definida se debe asignarle un collider, para que cuando ocurra una colisión el área que colisión debe cambiar de color
El componente de colisión debe deshabilitarse temporalmente cuando hay un cambio de color sobre el área de la colisión , y debe habilitarse nuevamente cuando se toca un área diferente a la que se cambio el ultimo color.
El script debe contar estas funciones
Entradas
setColorArea(Color c) -> color que cambiara el area
setPath(String path) -> la ruta de la carpeta donde esta el json y la imagen
Salidas
onArea(String area, int red, int id, Vector3 pos) -> cuando esta comisionando
changeColorArea(int id,Color c) -> cambia de color el area que colisiono
Las colisiones puede ser cuando un objeto dentro de la escena colisione o cuando el mouse haga click o un touch de un dedo en el caso de dispositivos móviles.
Solamente las áreas que están definidas en el archivo de configuración son las que van a cambiar de colores, las demás áreas quedaran exactamente igual.
Los commit deben ser según lo desarrollado
1) Leer configuración del archivo json
2) Crear un sprite render dinámicamente de la imagen que dice el json
3) Agregar collider o sensores a las areas de la imagen
4) detectar los eventos del collider
5) Cambiar de color la parte de la imagen que se detecto en el collider
El código debe ser probado en Android, iOS , Web
El desarrollo debe hacerse en Unity en csharp, se entregara un repositorio bitbucket, y se deben realizar los commit definidos, uno por cada parte desarrollada.
El repositorio de bitbucket es:
bitbucket.org/fhidalgolalabum/gameobject_paint
Deje el un archivo comprimido la clave es : tecniredesall, este archivo, va a estar en un repositorio y se les va asociar cuando se seleccione la persona indicada
Plazo de Entrega: 15 Octubre, 2017