¿Cuál es el procedimiento correcto para crear imágenes / sprite para aplicaciones / juegos iPhone / iPad?

Soy nuevo en el desarrollo de juegos con Xcode para iPhone / iPad. Por lo tanto, necesito ayuda con el procedimiento correcto para crear imágenes / sprites para el juego.

Por ahora he creado mis sprites con Illustrator y los he exportado como files PDF. En Xcode creé este recurso de escala única y puse el PDF en él.

Si entiendo la documentation correctamente, Xcode genera automáticamente files de image en @1x , @2x y @3x desde el PDF. ¿Genera files PNG?

Luego creo un SKSpriteNode y establezco el tamaño de esta forma: abc.size = CGSize(width: 123, height: 123) . En lugar de 123 , complete el ancho y alto correspondiente al tamaño de image / marco que configuré en Illustrator. ¿Es esto correcto? Creo que sí, porque esta es la versión @1x ?!

Pero si necesito la misma image para iPhone y iPad en diferentes tamaños, no puedo simplemente cambiar el tamaño, porque la versión de la image @1x ya no es un vector y está limitada al tamaño de fotogtwig que elegí en Illustrator. ¿Qué hacer entonces? ¿Tengo que cambiar el tamaño de mi image en Illustrator y exportarla en un tamaño diferente?

¿Cuál es el procedimiento correcto? ¿Tengo que dibujar un boceto con un lápiz al principio en un papel y medirlo con una regla? Entonces, ¿iría al ilustrador y establecería la altura del ancho del marco en el que medía manualmente?

Muchas preguntas. Estoy muy confundido con los tamaños de imágenes, las resoluciones y la versión @1x , @2x y @3x . No estoy seguro de por qué debería utilizar los files vectoriales, si todavía no puedo cambiar el tamaño de las imágenes en el process de desarrollo como me gustaría, porque todavía están vinculados al tamaño de fotogtwig que elegí en Illustrator.

¿No hay posibilidad de establecer relaciones entre todas mis imágenes y luego simplemente usar el file vectorial PDF? ¿Cómo debo configurar mi Illustrator?

Espero que alguien pueda traer algo de luz a la oscuridad. Gracias.

Su pdf debe tener el tamaño en puntos @ 1x (no en píxeles). Los puntos deben tener el mismo tamaño físico en el teléfono y el ipad, pero si desea que sean más pequeños en el teléfono, necesitará un segundo set de imágenes; El catálogo de activos le permite intercambiar imágenes basadas en iphone / ipad. Xcode traduce su pdf a png's @ 1x, @ 2x y @ 3x y su aplicación seleccionará el png correcto según la resolución del dispositivo. Usted está en lo cierto que estos ya no son activos vectoriales y que escalarlos podría dejarle imágenes borrosas / pixeladas. Tienes un par de opciones:

1) incluya una versión ampliada de su image en su escala máxima en la aplicación y use esta versión solo cuando necesite escalar (de lo contrario, es una pérdida de memory y procesamiento si siempre está renderizando una image mucho más pequeña). Esta es probablemente la solución más fácil.

2) deje sus activos como vectores y cárguelos como vectores, aún puede convertirlos en imágenes para get un performance a una escala o range constante de escalas, pero siempre puede volver a renderizarlas en cualquier escala si es necesario. Lo más probable es que quieras usar una biblioteca SVG para esto.

3) Puede importar directamente sus activos como código usando un progtwig como el código de pintura . Solía ​​haber complementos similares para el ilustrador, pero no he visto ninguno para Swift 3 / Illustrator CC. Obviamente, esto es más rápido que el número 2, ya que no es necesario decodificar el file vectorial. Si su file tiene una gran cantidad de sobregiros, aún puede querer rasterizar las imágenes para get resultados.

Esto es lo que encontré de mi experiencia:

1) Xcode no genera @ 2x y @ 3x de files .png. Realmente no puede; necesita suministrar manualmente los tamaños @ 1x, @ 2x y @ 3x.

2) Sea cual sea el tamaño que use para CGSize (…), esa debería ser su image @ 1x, luego genere @ 2x y @ 3x de eso. Empecé diseñando el tamaño de un nivel en el editor de escena, luego hice una forma genérica de SKSpriteNode solo para get el tamaño que quería, luego empecé a hacer la image del tamaño que encontré que se ve bien.

3) Xcode admite charts basados ​​en vectores (svg, pdf), pero no puede usarlos como parte de un atlas de texturas, lo que los hace mucho less útiles en mi opinión.