[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Форум Panda3D - по русски » Panda3D » Для начинающих » Маленькие вопросы
Маленькие вопросы
NeoXДата: Воскресенье, 09.06.2013, 18:37 | Сообщение # 1
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Всем добрый день. Я недавно начал изучение этого замечательного движка.
Естественно без вопросов не обошлось. Надеюсь в скором времени получить на них ответы.
1 Движок написан на Python? Ведь так. Не сильно ли влияет ли это на производительность ведь язык является интерпретируемым?
2 Как создать исполняемый файл игры. Для распространения.
3 Есть ли возможность запускать панду прямо из питон редактора. Какой редактор для этого нужен?
Пока вроде все)
 
serg-kkzДата: Воскресенье, 09.06.2013, 23:10 | Сообщение # 2
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
1. Он написан на C++, для питона используются автоматически генерируемые обвертки кода. Естественно для предусмотренных классов, а их в панде очень большое количество. Например если городить свой код расчета траектории пули, то он конечно будет занижать производительность. А если использовать пандовский класс, то будет работать на уровне кода C++.
2. Никак. В статьях подробно рассказано о распространении. 
3. Не знаю, что так тянет людей запускать приложение из блокнота  biggrin сделай ярлык на игру, ну и тыкай по нему после изменений в коде. Да не нужна этакая кнопочка в редакторе, а разница  happy


ООП  -  
 
ninthДата: Понедельник, 10.06.2013, 08:16 | Сообщение # 3
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
1. Добавлю что часть всё же имеет питоновский код - например много модулей из пакета direct, тем не менее, производительность графики/физики/звука на уровне си, потому что ядро движка именно на сях.
2. Нет, ну почему никак? Зачем людей так пугать? ) Есть встроенные средства для распространения - pdeploy и packp3d, есть плагин для работы в браузере. Если стандартные средства не устраивают, то можно использовать средства типа py2exe или cxFreeze. В конце концов, можно писать исполняемый файл на чистом Си, хотя это на любителя )
3. Ну не знаю, кому как. Мне например значительно удобнее из редактора стартовать. Отредактировал код, F5 нажал и смотришь на результат. В общем, практически любой специализированный редактор python позволяет это делать, либо редактор, в котором можно задать свои команды для запуска на исполнение.
 
NeoXДата: Понедельник, 10.06.2013, 10:39 | Сообщение # 4
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Спасибо огромное) я думал нескоро получу ответ)
А что насчет статей в которых рассказано о распространение? Если не сложно дайте пожалуйста ссылки на них.
И еще вопорос. На сколько мне известно DirectX в панде реализован не полностью. Т.е. лучше работать с OpenGl да?
 
ninthДата: Понедельник, 10.06.2013, 11:06 | Сообщение # 5
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Официальный мануал (английский) http://www.panda3d.org/manual/index.php/Main_Page раздел Distributing Panda3D Applications
До перевода этой части я как-то не добрался, так что на русском есть только отдельные статьи
http://panda3d.org.ru/publ....-1-0-39
http://panda3d.org.ru/publ/bat_cmd_v_prilozhenie/3-1-0-61

Можешь так же погуглить мануалы по поводу cxFreeze и py2exe, а ещё лучше gui2exe. Действия ничем не отличаются от превращения обычных питоновских приложений в исполняемые. Единственное, надо будет потом пандовские дллки к экзешнику докинуть.

Да, лучше работать с OpenGL, хотя переключение между DX и OGL осуществляется одним единственным параметром. А вообще DX работает только на мелкомягких, а OGL - ещё и под nix и mac
 
NeoXДата: Понедельник, 10.06.2013, 11:11 | Сообщение # 6
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Спасибо огромное) А что так мало народу на сайте? Что никто не занимается этим движком?
 
ninthДата: Понедельник, 10.06.2013, 11:19 | Сообщение # 7
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Большинство предпочитает всяческие конструкторы с визуальным редактированием ) Ну и в целом движок не слишком известен в России.
 
NeoXДата: Понедельник, 10.06.2013, 11:26 | Сообщение # 8
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
В наше время все на юнити переходят. Бесит прямо)))
Кстати как добавлять свои модели в программу. Что это за формат .egg. В него нужно конвертировать все модели?


Сообщение отредактировал NeoX - Понедельник, 10.06.2013, 11:33
 
ninthДата: Понедельник, 10.06.2013, 12:02 | Сообщение # 9
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
egg - текстовый формат моделей панды
bam - бинарный

egg служит для отладки - чтобы можно было вручную что-то подправить, например, но грузится медленнее. bam используется как релизный вариант - грузится быстро, но не позволяет что-то отредактировать и может использоваться только с той версией панды, в которой был создан.

Для конвертации в egg есть плагины и утилиты под различные редакторы и форматы.
 
NeoXДата: Понедельник, 10.06.2013, 12:09 | Сообщение # 10
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Учту) А есть ли какой-нибудь редактор уровней?
 
ninthДата: Понедельник, 10.06.2013, 12:33 | Сообщение # 11
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Обычно редактор пишется под конкретную создаваемую игру, т.к. для 3D шутера, для изометрической РПГ, для 2D скроллера они будут слишком разными. Неофициально на форуме я видел несколько вариантов редакторов, но не пробовал их в действии - мне вполне хватало для моих целей Блендера.

Вполне допустимо использовать в качестве редактора сцены обычный трёхмерный редактор - Blender, 3D Max, Maya. В них можно назначив разным моделям/узлам теги, а после, уже внутри программы прочитать значение этого тега и на основе этого привязать к объекту необходимый функционал.
 
NeoXДата: Понедельник, 10.06.2013, 16:15 | Сообщение # 12
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Да кстати к слову о визуальных конструкторах. Большая часть "программистов" так они себя называют=) , изучают их для того, чтобы быстро и удобно делать игры. Но никакого опыта это им не даст и они не смогут со своими знаниями работать в честных компаниях и фирма. Там требуется другой уровень квалификации а надеяться на учителей-теореток которые сидят в институтах IT технологий нельзя. Следовательно они просто теряют время  и развлекаются возомняя себя "программистами". Мое мнение. Имхо=)
 
ninthДата: Понедельник, 10.06.2013, 17:12 | Сообщение # 13
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Ну, скажем так, та же юнити довольно востребована на рынке труда - в небольших студиях её используют весьма активно. А насчёт быстро и удобно - панда в общем тоже под это заточена, только вместо визуальных элементов - удобный API. Опыт даст любая разработка, даже на конструкторе типа гейммейкера. Общие принципы работы в большинстве движков и конструкторов более-менее сходны. Общие принципы написания кода ещё более похожи. Где-то они более низкоуровневы, где-то - менее, но тем не менее похожи. В любом случае, изучив один даже самый крутой движок, будь то Unity или Panda или UDK ты не научишься автоматом работать с другими, т.к. каждый двиг имеет свой специфический API и инструментарий. В общем тут скорее идёт выбор между удобство - скорость - контроль.
Если планируешь всерьёз идти в геймдев, то лучше уже сейчас начать изучение Си. Какие бы языки различные движки не использовали для скриптования, но ядро у серьёзных движков как правило написано именно на сях. Хотя тут опять же можно поспорить - возможно тебе никогда и не потребуется лезть в недра движка и вполне хватит возможностей, которые предоставляет API. С другой стороны - может ты вообще захочешь писать свой собственный двиг, но тут тебе уже придётся всерьёз взяться за изучение OpenGL или DX и за матрицы с векторами.
 
NeoXДата: Понедельник, 10.06.2013, 17:52 | Сообщение # 14
Сержант
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Статус: Offline
Насчет изучения Си я полностью согласен. Но знаете большая часть людей взявшихся создавать игры, не умеют ничего. Они сразу пытаются создать что-то "большое". Тяготят себя мечтами но только не о том как они будут создавать свою игру а о том что будет после того как они создадут ее. В данном случае мечтать очень вредно=). Лично мне Си на самом сложно дается. Не знаю почему но Шарп я изучил без всяких проблем.
 
serg-kkzДата: Понедельник, 10.06.2013, 22:48 | Сообщение # 15
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
Цитата
Цитата (NeoX)
Как создать исполняемый файл игры. Для распространения.
Цитата (serg-kkz)
2. Никак. В статьях подробно рассказано о распространении.
 
Цитата (ninth)
Нет, ну почему никак?
Никак потому им является питон. А распространение я как понимаю создать установочный файл. Как ни как, разные вещи.


ООП  -  
 
Форум Panda3D - по русски » Panda3D » Для начинающих » Маленькие вопросы
  • Страница 1 из 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск: