M.A.X.    Вы вошли как гость
Российский Клуб игроков M.A.X.
 
[Новости]   [Новичку]   [Энциклопедия]   [Документы]   [Файлы]   [Игроки]   [Архивы]   [Архив форума]  
[Новый сайт]   [M.A.X. Gold]   [Партии]  

 
 
 
Архив форума  Основной
[Основной форум] [Голосования] [МаксГолд] [Off-Topic]
 


M.A.X. + C# / XNA GS  -  guest,  20.08.2009  14:59:11

Здравствуйте!

Я не играл много в M.A.X. но мне эта игра понравилась своими безграничными тактическими возможностями.
На данный момент, меня уже мало интересуют игры как игрока, зато интересует их разработка.

Знаю хорошо C/C++ и очень хорошо C#.
Так как сейчас я больше работаю с C#, предлагаю написать движок игры M.A.X. на C# / XNA GS.
Движок надо сделать полностью настраевыемым, например, через XML, что позволит изменять свойства юнитов и добавлять новых без перекомпиляции. У меня уже есть некоторые, реализованные в предыдущих проектах, модули, которые можно использовать - например многопоточный логгер, динамическая компиляция математических формул из string-ов, сетевой обмен данными клиент-сервер со сжатием 7z и шифрованием.

Почему .NET ?

Недостатки:
1. Некроссплатформенно:
 - Правильное разделение графики и логики поможет запустит логику в Mono с минимальными изменениями. Использование LINQ может создать проблемы при портировании, но значительно ускорит разработку под Windows.
 - Для графики есть достаточно библиотек C# / OpenGL
2. Производительность:
 - В Windows, при правильной оптимизации, разница будет максимум 10% (в этом виновата XNA GS).
 - В Unix-системах это действительно проблема - увы, но JIT-компилятор в Mono медленней чем аналог от Microsoft.

Достоинства:
1. Скорость разработки:
 - C# позволяет больше концентрироваться на логике приложения, а не на работе с памятью.
 - .NET Fx уже содержит много нужных функций (например, шифрование и работа с многопоточностью).
2. XNA Game Studio
 - Простое и легкое в изучении (простенький Tile-Engine можно написать за один день - проверено ;) )
 - Много примеров и документации в Интернете (как-то находил пример как в 2D добавить реалистичный эффект освещения и объемности с помощью простейшего шейдера и карты высот).
 - Возможность запуска приложения на XBOX 360.
3. Дальнейшее развитие:
 - Опять же, при правильном проектировании, можно будет добавить 3D графику, простой заменой соответствующей библиотеки.

Спасибо за внимание.
Artiom
SkypeID: artiom.ciumac

PS: извините за граматику - русских букв нету, поэтому пишу на транслит ру.