Уведомления

Группа в Telegram: @pythonsu

#1 Июль 3, 2014 09:57:00

infocodes
Зарегистрирован: 2014-07-03
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

игровой движок

у меня такой вопрос питон в соатоянии потянуть игровой движок 3D на pyopengl или фпс будет равен 0?

Офлайн

#2 Июль 3, 2014 10:33:05

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

игровой движок

Движки бывают разные, как и игрушки на них. Для ААА вариант не очень.

Офлайн

#3 Июль 3, 2014 10:41:46

john123
Зарегистрирован: 2013-12-22
Сообщения: 56
Репутация: +  7  -
Профиль   Отправить e-mail  

игровой движок

Ваш вопрос изначально поставлен неправильно.

Во-первых “игровой движок” как правило состоит не только из графической библиотеки. Это еще и звук, сеть, игровые контроллеры, физика тел (опционально), AI соперников и т.д.

Во-вторых Python - это просто интерпретируемый язык программирования. Да, программы на нём не компилируются в бинарный код и из-за этого выполняются как правило медленнее, чем скомпилированные.

В-третьих, pyopengl и т.д. - это сторонние библиотеки для Python, которые позволяют вызывать функции этих библиотек в языке Python.
Т.к. OpenGL - обособленная библиотека, написанная на C, то в процессе выполнения, Ваша программа на Python будет просто передавать управление функциям этой библиотеки, поэтому прямой зависимости FPS от использования языка программирования просто НЕТ. Отрисовку изображения в конечном счете выполняет видеокарта.

Исходя из этого, отвечая на Ваш вопрос можно сказать что: да, Python “потянет” “игровой движок” и фпс будет таким, каким сможет поддерживать его Ваша видеокарта.

Офлайн

#4 Июль 3, 2014 10:47:40

john123
Зарегистрирован: 2013-12-22
Сообщения: 56
Репутация: +  7  -
Профиль   Отправить e-mail  

игровой движок

Shaman
Движки бывают разные, как и игрушки на них. Для ААА вариант не очень.
Для игр AAA класса обычно используется целая инфраструктура, которая представлена, например в движках UnrealEngine, CryEngine, или SeriousEngine.

Я так понимаю, что если человек задает такие вопросы, то он явно не готов сейчас к тому, чтобы писать свою инфраструктуру на Python и одновременно с тем движок

Отредактировано john123 (Июль 3, 2014 10:48:04)

Офлайн

#5 Июль 3, 2014 10:51:57

infocodes
Зарегистрирован: 2014-07-03
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

игровой движок

спасибо за ответ. но даже вызов функций gl у каждого языка по времени разный. и орерации с масивами вертекс тоже занимают время. тем более связка разных библиотек таких тяжеловесов как gl и bullet требует большую пропускную способность я зыка. вот я и спросил. хватит ли у потона тиктайма для синхронизации работы библеотек.

Офлайн

#6 Июль 3, 2014 10:55:53

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

игровой движок

Возьмите да и посчитайте накладные расходы в требуемых сценариях использования OpenGL.

Офлайн

#7 Июль 3, 2014 10:59:58

infocodes
Зарегистрирован: 2014-07-03
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

игровой движок

Shaman
Возьмите да и посчитайте накладные расходы в требуемых сценариях использования OpenGL.
в gl я не сомниваюсь мне нужно знать способности питона. мне нравится синтаксис языка

Офлайн

#8 Июль 3, 2014 11:02:01

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

игровой движок

infocodes
в gl я не сомниваюсь мне нужно знать способности питона.
Об нём и речь. Посчитайте сколько уходит на питон при каждом вызове pyopengl и всё станет ясно.

Офлайн

#9 Июль 3, 2014 11:04:16

infocodes
Зарегистрирован: 2014-07-03
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

игровой движок

а как это сделать в доках нет времени исполения

Офлайн

#10 Июль 3, 2014 11:08:35

john123
Зарегистрирован: 2013-12-22
Сообщения: 56
Репутация: +  7  -
Профиль   Отправить e-mail  

игровой движок

infocodes
а как это сделать в доках нет времени исполения
http://stackoverflow.com/a/157423

Если сомневаетесь в скорости расчетов матриц и векторов, используйте биндинги существующих движков к языку. Например PyOgre.

Сам по себе Python не дает возможности использования расширений процессора типа MMX/SSE, поэтому здесь придется воспользоваться какими-то готовыми библиотеками для расчетов.

Отредактировано john123 (Июль 3, 2014 11:11:37)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version