Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 30, 2014 19:37:03

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Как написать 3d программу на Python

Shaman
Ведь все модули написаны на питоне, то есть в них используются стандартные возможности языка. Я не понимаю, как имея на начальном этапе только стандартную часть языка (while, for, if, list, int … ) сделать графический модуль?
В стандартные возможности языка входят стандартные модули. Среди них есть ctypes. он позволяет вызвать функции из “ядра операционной системы”. Там есть и функции для работы с графикой.

Вы не совсем правильно представляете работу с графикой. Даже программа на C не сможет отрисовывать 3D сцены с приемлемой скоростью если будет работать с отдельными пикселями. Общение программы с монитором идет на специальном языке (в котором нет раскраски отдельных пикселей). А сами пиксели красит “Железо”. Грубо говоря программа просит - нарисуй прямую, а видеокарта уже красит пиксели.
Эти языки были обобщены в графических библиотеках например (http://www.opengl.org.ru/, GDI. DirectX и т.п.) Перевод команд библиотеки на команды железа осуществляет видеодрайвер. А из питона можно уже пользоваться разными библиотеками.
http://pyopengl.sourceforge.net/…
Я не специалист в этом деле, может кто подробнее напишет.



Офлайн

#2 Окт. 30, 2014 21:52:16

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

Как написать 3d программу на Python

doza_and
В стандартные возможности языка входят стандартные модули. Среди них есть ctypes. он позволяет вызвать функции из “ядра операционной системы”. Там есть и функции для работы с графикой.
Не совсем так, если уж быть совсем точным.
“Стандартная” реализция питона - CPython позволяет подключение специально оформленных бинарных модулей как питон-модулей. Эту возможность эксплуатирует и ctypes.

Отредактировано Shaman (Окт. 30, 2014 21:59:46)

Офлайн

#3 Окт. 30, 2014 22:50:03

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

Как написать 3d программу на Python

Pavel_Blend
Вообще, возможно ли написать 3д программу на питоне с нуля без использования модулей? Под 3д программой я имею ввиду не редактор (типо 3дс Макс, Майа …), а Viewer в котором можно было бы вращать в пространстве какую-нибудь 3д модель (куб, шар …) У меня просто в голове не укладывается, как это реализовывается. Как с помощью всех этих стандартных while, for, if и др. операторов сделать 3д пространство, которое будет видно на мониторе?
Хотя, никто не мешает отрендерить в графический, или видео-формат и смотреть результат другим софтом.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version