He estado trabajando en un entorno de tiempo de ejecución de motor de juego en C++ para mis futuros juegos, y he comenzado a considerar a Android como una plataforma. Me di cuenta de que estaba estrechamente vinculado a Java y usa VM de Java en gran medida.Programación para Android en un entorno 100% C++?
¿Pero es posible mantener un entorno de tiempo de ejecución de C++ completo en Android NDK? No tengo nada en contra de Java y estoy preparado para usarlo si tengo que hacerlo, pero el rendimiento es una de mis principales preocupaciones (pretendo que mis juegos sean intensivos en recursos), especialmente en los teléfonos.
Y si es posible un entorno completo de C++, ¿cómo exactamente lo implementaría en Eclipse Indigo CDT? ¿Sería capaz de crear un ejecutable de juego compilado para Android antes de tiempo para obtener el máximo rendimiento? ¿Y habría complementos adicionales que necesitaría instalar en Eclipse? ¿Podría usar MinGW para compilar mis juegos, o necesitaría usar un compilador diferente? Si tuviera que usar Java de una forma u otra, ¿sería necesaria la compilación del código C++? Estas son todas las preguntas que me gustaría responder para obtener un entorno de desarrollo robusto en el Eclipse IDE.
Por favor, sepan que todavía soy bastante nuevo en el desarrollo de Android y en la programación multiplataforma en general. Mi objetivo es crear un motor de juego que aproveche al máximo el nuevo hardware, ¡especialmente en los teléfonos!
¡Gracias por cualquier consejo que puedan darme!
Android tiene un compilador JIT Java especial y una gran parte del entorno Android está en Java. No hay realmente una razón para preferir C++ a Java para la velocidad en Android, gran parte del impacto en el rendimiento tradicional no está ahí. – dtech
Muy bien, esa es una gran cosa que me preguntaba, gracias. De hecho, acabo de encontrar la clase NativeActivity (http://developer.android.com/reference/android/app/NativeActivity.html), que parece realmente prometedora, especialmente porque parece que apuntan a los juegos de C++. ¿Todavía necesitaría el SDK de Android y el compilador JIT para que esto funcione? – AutoBotAM
El JIT es parte de Dalvik (VM de Android) y Dalvik está presente en todos los procesos del sistema, tanto si usa NativeActivity como si no, se usa para comunicarse con el resto del sistema. – adamp