2012-01-14 1 views
0

Как видно из названия, я ищу лучшее решение для создания 2D или 3D графического симулятора. Мне нужно создать программу, которая имитирует поведение некоторых пользовательских солнечных панелей (как лучи падают на поверхность панелей, что происходит, если панели повернуты и т. Д.). Основная проблема заключается в том, что это нужно сделать за очень короткий промежуток времени и в зависимости от того, насколько велика разница между 2D и 3D (с точки зрения необходимого времени для завершения), я выберу наиболее подходящее решение , Программа должна также создавать некоторые диаграммы на основе входных данных.C# vs. Python - лучший выбор для графического симулятора 2D/3D

Таким образом, я заинтересован в поиске предложений, в отношении которых один из вышеупомянутых языков предоставит наилучшие и простые в использовании инструменты (как для 2D, так и для 3D) и хорошую комбинацию окончательного сложность кода, простоту графического дизайна и окончательный внешний вид.

ответ

4

Если у вас мало времени, вы должны выбрать язык, который вы знаете лучше.

Лично я бы пошел на питон, потому что я думаю, что это очень продуктивный язык. Для выполнения рендеринга я полагался на модуль pygame. Тем не менее существует множество возможных библиотек, которые могут делать то, что вам нужно. Я использовал XNA некоторое время назад, и это было настоящим удовольствием. Особенно его поддержка для 2D-графики отличная. В нижней строке я думаю, что это сводится к следующему:

Python - это «рабочий псевдокод». Это позволит вам очень эффективно кодировать логику. Pygame, однако, является 3D-игрой. Это отлично подходит для создания игр и визуализации, но у вас возникнут проблемы с созданием приятного gui.

C# немного более «тяжелый», чем питон. Вы наверняка закончите писать больше кода, только с точки зрения количества строк. XNA + WPF - мощная комбо, хотя и имеет очень хорошие инструменты - у VisualStudio есть большой дизайнер gui

0

Я еще не пробовал рисовать на python, но работал с XNA Game Studio (для .Net framework) некоторое время и думаю, что он довольно прост в использовании и мощный. Так что стоит посмотреть. Не обращайте внимания на его имя, это не только игры.

+0

ну, симулятор в основном игры или наоборот – tovmeod

0

Я мало знаю о C#, но у Python есть довольно много модулей, которые вы, вероятно, могли бы использовать. Кто-то уже упомянул Pygame, для 3D-визуализации вы можете использовать, например, Vpython или Panda3D. Есть хорошие списки программного обеспечения 3D для Python или написанные на Python по адресу this website.