Позвольте мне поддержать C # и особенно XNA.
С использованием Mono (включая платные библиотеки, такие как MonoTouch и MonoDroid), вы можете заставить C # работать в значительной степени в любом месте ( например ). C #, безусловно, достаточно быстр для разработки игр. И время выполнения очень стабильно. Он может работать в браузере через Silverlight.
По моему мнению , C # превосходит Java как язык, особенно для разработки игр, и особенно с учетом поддержки инструментов и библиотек - особенно XNA.
XNA - это библиотека для разработки игр (похожая на DirectX по объему), и для XNA также создано множество библиотек. Кроме того, он имеет далеко лучшую библиотеку образец кода .
XNA изначально работает на Windows, Xbox 360, Windows Phone 7 и (более старой версии) на Zune.
На ПК C # и XNA каждый требует времени выполнения. Microsoft ClickOnce установщик делает это очень легко. Он дает вашему пользователю установщик начальной загрузки, который затем загружает и устанавливает среды выполнения от Microsoft по мере необходимости. Клиентский профиль .NET 4.0 - 41 МБ, а XNA 4.0 - 7 МБ. Этот ответ содержит более подробную информацию .
Кроме того, есть проекты, которые переносят XNA (только 2D API) на другие платформы. Я в настоящее время финансирую проект под названием ExEn с целью внедрения высококачественной реализации 2D XNA в браузер (Silverlight), iOS, Android и Mac.
Если вы не можете дождаться ExEn, вы можете попробовать некоторые библиотеки, на которых он основан - SilverSprite (Silverlight) и XnaTouch (iOS). SilverSprite довольно глючит, XnaTouch немного лучше.
(На данный момент, если вы хотите сделать игру 3D на этих платформах, Unity, возможно, является лучшим вариантом.)