Realmente no es mi taza de té, pero hay algo llamado Android NDK (Native Development Kit) para usar si quieres escribir tu programa en C. Sin embargo, no estoy seguro de cómo es el compilador de C++.
Hasta donde yo sé, su aplicación puede ser casi 100% código nativo, pero tenga en cuenta que al caminar de esa manera probablemente tendrá dificultades para soportar las diferentes CPU que hay en el hardware de Android. Si necesita iniciar el código nativo para que se inicie desde Java, probablemente no sea un gran problema para usted.
Encontré algunos tutoriales diferentes cuando busqué en Google "Android NDK". This one is a very minimalistic Hello World. Obviamente, usted quiere algo mucho más que una biblioteca que devuelve una cadena a Java, pero es un buen comienzo y probablemente tendrá que hacer todas las cosas descritas. Haga una búsqueda usando NDK y Android como palabras clave y obtendrá una buena selección. No veo ninguna razón para enumerarlos aquí, ya que tales listas tienden a estar desactualizadas y rotas dentro de un año más o menos.
Supongo que el Android Developer site oficial de Google se mantendrá actualizado en nuevas versiones de la plataforma, tiene un enlace al NDK actual.
I cree que las API de OpenGL al menos están expuestas directamente en el nivel NDK, por ejemplo, para juegos de pantalla completa nativos completos definitivamente es una opción (y probablemente recomendada). –