¿Cómo se aseguran los juegos móviles de que se comporten exactamente igual en iOS y Android?

  1. El mismo programa (o aplicación o juego, todos son lo mismo en este nivel) escrito por el mismo programador para la misma plataforma, en una fecha posterior, puede no “comportarse exactamente igual”. (Esto no es una suposición, es BTDT: he escrito un programa para que un empleador haga exactamente lo mismo que un programa que había escrito para un antiguo empleador, y no eran exactamente lo mismo. Y sucedió más que una vez. [¿Por qué no utilicé el mismo código? Porque la compañía posee el código que escribí mientras me pagaban por escribirlo, por lo que sería un robo.])
  2. A veces, incluso en juegos competitivos, no lo hacen. La puntuación es exactamente la misma, las acciones son exactamente las mismas, pero “bajo el capó” los dos programas no “se comportan exactamente igual”. Simplemente no puedes ver las diferencias porque no se muestran, y no importan en la forma en que funciona el juego. De hecho, la mayoría de las aplicaciones, ya sean juegos o no, no funcionan igual en varios teléfonos. Solo mire los comentarios en algunos de los teléfonos en Play Store (estoy más familiarizado con Android). Cosas como “la aplicación solía funcionar, pero ahora todavía funciona en mi teléfono X, pero no funciona en mi teléfono Y”. La misma aplicación, nueva versión, no funciona igual en todos los teléfonos Android, y mucho menos entre Android y iPhones.
  3. Algunos juegos están escritos en un motor de juego que funciona de la misma manera en ambos entornos, por lo que escribes el juego una vez y se ejecuta en cualquier plataforma de teléfono con la que lo vincules.

    Pero esa no es la regla, esa es casi la excepción. Probablemente sea alrededor de 50-50 en estos días. Pero su implicación de que todos los juegos se ejecutan igual en ambas plataformas simplemente no es correcta. Incluso juegos competitivos. (Algunos juegos son geniales, no importa en qué los juegues. Algunos son terribles, no importa en qué plataforma juegues. Lo mismo ocurre con los programadores, algunos de nosotros podemos analizar un juego y escribir un programa para jugarlo) cualquier plataforma. Algunos apenas pueden escribir “¡Hola, Mundo!” y ejecutarlo.

No culpo a ningún programador (no necesito más para culpar, tengo algunos cientos en mi historia que aún no han sido culpados, no importa cuánto lo merezcan realmente), es solo que su pregunta es suponiendo que los programadores saben que no es una “verdad general”.

Perdón por mi inglés. Supongo que no sabes nada de programación. En ese caso, haré todo lo posible para explicarlo de una manera simple. Además, puede buscar en google como ‘ Unity 3D ‘ o ‘ Unreal engine ‘. Son esos motores de juegos los que hacen que los juegos tengan el mismo rendimiento en diferentes plataformas.

Primer paso: elige el motor / idioma

La elección depende del tipo de juegos que quieras desarrollar. Si quieres desarrollar un juego 2D, tal vez puedas usar cocos2dx. O si desea desarrollar un juego 3D que se ejecute principalmente en dispositivos móviles, puede elegir Unity3D. O tal vez su juego servirá para la PC más poderosa, el motor Unreal quizás sea una de sus consideraciones. Puede consultar este pasaje para obtener más información. Unidad, Fuente 2, Unreal Engine 4 o CryENGINE: ¿Qué motor de juego debo elegir?

Como todos saben, los lenguajes de programación son herramientas que nos ayudan a comunicarnos con los dispositivos. Se admiten diferentes idiomas en el mismo motor. Tome Unity como ejemplo, puede usar C # y Javascript. Con su ayuda, puede decirle al motor lo que desea.

Segundo paso: preparar material

Los motores de juego no pueden imaginarse, por lo que es necesario decirles cómo son sus entornos, cómo son sus personajes y cómo se comportan en el juego. Puede pedir ayuda a los diseñadores con el software de modelado 3D. Después de obtener todos los modelos, mapas de textura y otras cosas necesarias. Todo lo que necesitas hacer es

Tercer paso: programación

En lo que a mí respecta, este es el paso más aburrido desde que decide cómo se ve su juego y la historia de fondo puede ser el período más interesante durante todo el proyecto. Pero es la parte más importante. Use lenguajes como C # para escribir el guión. El script se ejecutará así si quieres que un personaje se mueva:

  1. encuentra la coordenada en la que haces clic o tocas en la pantalla
  2. darle al personaje una velocidad hacia esa dirección
  3. cuando alcance el objetivo, ¡cancele la velocidad y el trabajo realizado!

Quizás se pregunte dónde está la computación compleja. Sin embargo, todos los trabajos difíciles serán realizados por el motor. Todo lo que necesitas hacer es decirle al motor lo que quieres ver y te ayudará a hacer otras cosas como definir qué velocidad es o estimular la gravedad.

Cuarto paso: compilar y ejecutar

Si termina todo el trabajo, simplemente haga clic en el botón ‘Construir’ y espere su paquete para cualquier plataforma que desee.

FÁCIL, ¿no?

O (∩_∩) O

La mayoría de los juegos no se hacen usando el idioma de elección del sistema operativo (si puedo llamarlos así). Uno de varios sucede:

  1. Desarrollamos utilizando soluciones de múltiples objetivos como Xamarin
  2. Utilizamos motores de juego que se encargan de los detalles más finos para nosotros.
  3. Mi elección: desarrollo usando una herramienta C ++: conjunto.

La mayoría de los sistemas operativos tienen una cosa en común: están hechos con C y / o C ++, por lo que puedes compilar códigos C y C ++ para que funcionen tanto en Android como en iOS sin cambiar nada. El código que carga su biblioteca de C ++ y realiza la inicialización de su juego es lo que puede necesitar ajustar en consecuencia.

Para finalizar, ya sea que esté en iOS, Windows o Android y declare un Int o String, será lo mismo en todas las plataformas. Sin embargo, si decides manipular esas variables en tu código, obtienes prácticamente el mismo resultado

Bueno, como dijiste, la lógica detrás es la misma, pero la principal diferencia es dónde se desarrollan estos juegos. por ejemplo, andriod tiene una plataforma diferente e iOs tiene una plataforma Swift.

Esta es una terminología antigua, pero ahora lo que es feliz es que la mayoría de las aplicaciones se desarrollan en la brecha móvil. Básicamente, una herramienta para todas las plataformas, una aplicación, funciona en todas las plataformas.

More Interesting

¿Qué tan seguro es iOS 8 en comparación con el último sistema operativo de BlackBerry?

¿Cuándo debería y cuándo no debería usar un marco para el desarrollo / programación de iOS?

¿Qué tan difícil es pasar de Parse a un servidor en el sitio u otro sitio web de servidor en la nube?

¿Apple va a hacer iOS 12? De ser así, ¿cómo sería?

¿Cómo es la productividad del desarrollador en React Native vs desarrollo nativo de iOS?

¿Debo actualizar mi iPhone 6 a iOS 11 o no? ¿Cuáles son los motivos de ambos casos?

¿Qué consejo le darías a un novato que configura su primer servidor para admitir notificaciones push para una aplicación iOS?

¿Qué solución de punto de ventas / contabilidad / inventario / facturación / comercio electrónico relacionada con iOS está disponible para pequeñas empresas?

¿Qué tan bueno es el Blackberry OS en comparación con Android, Windows e iOS?

¿Cuánto costará construir una aplicación móvil para la entrega de alimentos en plataformas Android e iOS?

¿Por qué no hay una aplicación de iOS para Amazon Cloud Player? (edición publicada en junio de 2012)

¿Cuál es el inconveniente de iOS 11 en comparación con las versiones anteriores de iOS?

¿Le falta talento a Apple o realmente no se está enfocando en resolver sus problemas de calidad en Mac e iOS? Es muy defectuoso en comparación con el tiempo de Steve

¿Qué es lo mejor y lo peor de iOS 11?

¿Qué tipo de ideas de aplicaciones generan más dinero en iOS o Android?