|
|
|
Канал Игры Мечты: «Начинаю писать игру. Нужна помощь.» |
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
2 NRG
Темы плодить не хочется, если конфа эту тему тянет, то пока пускай тут все остается. Будут отдельные конкретные вопросы - вот тогда и буду темы создавать.
2 UserAd@work
sedoy прав, работаем с .3ds файлами. GLSCene поддерживает еще кучу форматов, но проще всего с этим работать.
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
UserAd
70 EGP
 Репутация: 2 Сообщения: 132
Зарегистрирован: 20.02.2005
 |
|
3ds медленно грузятся, их неплохо подгружать вначале в память, а потом уже LoadFromStream в програме, иначе большаая моделька будет заметно грузить процессор при подгрузке
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
UserAd : |
3ds медленно грузятся, их неплохо подгружать вначале в память, а потом уже LoadFromStream в програме, иначе большаая моделька будет заметно грузить процессор при подгрузке
|
Учту, спасибо. Пока это не критично, но в будущем конечно буду грузить в память изначально.
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
sedoy
333 EGP
   Рейтинг канала: 1(2) Репутация: 65 Сообщения: 1057 Откуда: красноярск Зарегистрирован: 25.07.2002
 |
|
новый вьювер опробовал, текстуры грузит и из модели и через меню. для начала достаточно буду работать.
следующим возможно надо будет делать подгрузку нескольких моделей либо каждой по отдельности либо пакетно с открытием ini файла в котором прописаны модели для загрузки, текстуры для каждой модели и взаимное расположение относительно локальной системы координат корневого объекта.
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
sedoy : |
следующим возможно надо будет делать подгрузку нескольких моделей либо каждой по отдельности либо пакетно с открытием ini файла в котором прописаны модели для загрузки, текстуры для каждой модели и взаимное расположение относительно локальной системы координат корневого объекта.
|
Именно этим и занимаюсь. Кодовое название этого этапа работы над кодом - "Конструктор составных объектов"
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
UserAd
70 EGP
 Репутация: 2 Сообщения: 132
Зарегистрирован: 20.02.2005
 |
|
Вот ини файлы не надо делать для этого ... я конечно понимаю:
var f:TiniFile;
begin
f := tinifile.create('bla-bla.ini');
...
...
НО они слегка небыстро работают .... лучше уж подумать и придумать свой формат читаемый из файла в структуры,
думаете почему все разработчики игр пишут свои форматы для хранения 3д и текстур, в которых встречаются некоторое количество фишек вставленных для скорости и пакуют их чем-нить типа lzss
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
UserAd : |
Вот ини файлы не надо делать для этого
|
Из ини-файла будет браться всего несколько строк, так что пока новые форматы создавать смысла нет. Но если это скажется на быстродействии - придумаем, фигня вопрос
Появилась вторая модель, я уже покрутил - красота
Дальнейшие планы:
Я - заканчиваю конструктор кораблей, собираю из "запчастей" корабли.
sedoy - разбивает имеющиеся модели на более мелкие "запчасти" с отдельными текстурами, помогает играться с конструктором (после получения от меня готового exe-шника).
Остальные желающие - с замиранием ждут результатов нашей бурной деятельности
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
sedoy
333 EGP
   Рейтинг канала: 1(2) Репутация: 65 Сообщения: 1057 Откуда: красноярск Зарегистрирован: 25.07.2002
 |
|
2Wolvescrush
следущим после конструктора, так понимаю, будут основы анимации
опиши в краце как оно предположительно будет работать и как его описывать?!
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
Идей по анимации было две: грандиозная и практичная.
Идея 1-я, грандиозная.
Каждый объект в игре имеет в своем составе набор скриптов, реализующих анимацию, т.е. смещения и вращения отдельных частей объекта относительно центра объекта.
Плюсы - возможности расширения, добавления новых объектов. Облегчение труда дизайнеру.
Минусы - сильно осложнит жизнь мне как кодеру Соответственно займет уйму времен. А надо ли?
Идея вторая, практичная.
Жестко загоняю все возможные движения в код. Т.е. делаю всю возможную анимацию (а ее там не так много). У каждого типа объектов будет набор методов типа:
TMoon = class (TSpaceObject)
...
procedure Turn(angle:integer);
...
TShipM1 = class (TShip)
...
procedure CloseSail(SailNumber:integer, speed:integer);
procedure TurnTurret(TurretNumber:integer, speed:integer);
...
Плюсы - делается легко, нет необходимости реализовывать отдельный механизм скриптового языка для анимации. Скрипты все равно будут, но для объектов в целом.
Минусы - если вдруг игра станет хитом, и разные энтузиасты начнут к ней аддоны делать - возникнут проблемы. Например, есть у нас в игре корабль с четырьмя мачтами. А энтузиаст захочет сделать с пятью. А объекта подходящего, с нужной анимацией в игре и нет
Пока собираюсь реализовать именно этот вариант.
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
sedoy
333 EGP
   Рейтинг канала: 1(2) Репутация: 65 Сообщения: 1057 Откуда: красноярск Зарегистрирован: 25.07.2002
 |
|
угумс..
из хорошего:
доделал проверил и залил модели APU + TugUnit
(формат 3ds, отдельно АПУ, Таг и линкованый таг/апу и все это на всякий случай в max'е)
пока все без текстур и текстурных координат (только закончил)
модельки довольно большие, около 950 полигонов на обе модели.
забирать там же где и предыдущие модельки, архив называется
apu-tug01.rar
пробуй
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
2 sedoy
выкачал, посмотрел - красота! с текстурами вообще будет атас уже вижу десятки таких снующих вокруг станции и пристыкованных "парусников" - как живые перед глазами стоят
а что, есть еще и плохое?
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
UserAd
70 EGP
 Репутация: 2 Сообщения: 132
Зарегистрирован: 20.02.2005
 |
|
Цитата: |
а что, есть еще и плохое?
|
Плохое есть всегда ) 950 полигонов * 1000 кораблей = дикие тормоза, может делать ближнюю модель (950) и дальнюю (50-60)
а потом их менять ....???
|
|
|
sedoy
333 EGP
   Рейтинг канала: 1(2) Репутация: 65 Сообщения: 1057 Откуда: красноярск Зарегистрирован: 25.07.2002
 |
|
2UserAd
ну 1000 этих девайсов одновременно на экране не будет
но я тебя кажеться понял...
2Wolvescrush
сделал развертку (2 файла, на апу и таг) но пока не раскрашивал,
если есть интерес можешь взять там же apu-tug02.rar
развертки большие 1024*1024
т.ч. архив, развертки + 3ds'ные файлы с маппингом, ~600к
что по поводу LOD'а ?!
я только теоретически с ним знаком...
ЗЫ: маппинг не окончательный, щас посмотрел надо будет на экваторе пода переделывать...
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
LOD реализовать придется своими силами, ибо загрузка его из экспортированных файлов ГЛСценой не предусмотрена, а свой код для этого писать - весьма затратно по времени.
Своими силами - это значит "дальнюю" модель надо делать отдельно, а я уже потом движек научу в нужный момент модель менять. С планетами в любом случае собирался ЛОД делать, но раз у нас полигонов дофига (что, в общем-то, хорошо, красиво) надо будет и с кораблями поступить аналогично.
2 sedoy
Архив скачал, в конструктор еще пока не загонял, дома буду пробовать. Маппинг посмотрел во вьюере - с экватором таки да, косяк есть, хотя если б не сказал - не заметил бы
В принципе, сегодня ночью предварительная версия конструктора будет, тебе такие заготовки нужны? Или окончательный вариант подождешь? Там еще не все свойства частей регулируются, генерацию пламени еще не вогнал и т.д. Если и без этого "охота посмотреть" - подрихтую сегодня, и завтра смогу кинуть.
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
Идея реализации глубины просмотра для планет:
Суть в том, что камера в ГЛСцене имеет фиксированную глубину просмотра - все, что находится дальше отсекается. Делать ее сильно большим - не хочется. Но если с кораблями все не так страшно (их не так далеко видно), то с планетами хуже. Чтобы планета не появлялась резко "изниоткуда", надо делать глубину офигенно большой. Про Солнце я вообще молчу
Первое, что приходит в голову - если расстояние до планеты больше глубины просмотра, рисовать модель планеты на границе глубины и масштабировать соответственно реальному расстоянию.
Может у кого еще какие идеи есть? А может я зря парюсь и это давно решенная проблема?
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
sedoy
333 EGP
   Рейтинг канала: 1(2) Репутация: 65 Сообщения: 1057 Откуда: красноярск Зарегистрирован: 25.07.2002
 |
|
по "конструктору"
смотри сам, если успеваешь в течении недели еще что-то прикрутить, я подожду, если срок получается дольше, то давай полуфабрикат (низзя сидеть без общего прогресса - это убивает )
к вопросу о планетах встречный вопрос:
а как делается скайбокс ?!
ну а если прорисовывать на границе глубины то нада сделать чтоб корабли на таком расстоянии вообще не отображались (а то предствь смотрит пилот вдали маленький корапь литит себе, втыкается в планету, исчезает в ее недрах а потом опять выныривает наружу. или и того хуже, срабатывает колижн ...
|
|
|
Wolvescrush
890 EGP
          Рейтинг канала: 1(4) Репутация: 167 Сообщения: 1287 Откуда: г. Краснодар Зарегистрирован: 28.02.2002
 |
|
Скайбокс пока делается стандартными средствами ГЛСцены - там есть возможность даже звезды на нем прорисовывать. Вроде смотрится ниче так, т.е. его просто невидать
А границу глубины я так и задумывал, чтобы ни один корабль на таком расстоянии не был виден.
_________________ Лень - стремление к покою. В идеале - к вечному покою. Лень - это смерть в миниатюре. |
|
|
UserAd
70 EGP
 Репутация: 2 Сообщения: 132
Зарегистрирован: 20.02.2005
 |
|
А какие кстати там просторы? надеюсь побольше VRMLных километра кубического ?
|
|
|
Ur Quan
510 EGP
      Рейтинг канала: 1(5) Репутация: 86 Сообщения: 728 Откуда: Арк-а-Зной Зарегистрирован: 25.11.2003
 |
|
Цитата: |
Первое, что приходит в голову - если расстояние до планеты больше глубины просмотра, рисовать модель планеты на границе глубины и масштабировать соответственно реальному расстоянию.
Может у кого еще какие идеи есть?
|
Сделать нелинейное удаление от камеры, т.е. чем ближе к границе видимости, тем медленне удаляется объект, а на определённых расстояниях менять модель (от hipoly до lowpoly).
Например разбить расстояние от 0 до границы видимости на 8 участков, модели кораблей будут сотоять из 4 подмоделей (с разной детализацией) и на участке 5-8 уже не будут выводиться, модели планет из 6 подмоделей и не выводятся на учаске 7, 8, звёзды сделать 1-8 (на участке 7, 8 могут быть посто билбоардами всего 2 треугольника), таким образом получается реальное звёздное небо соответствующее игровой вселенной.
P.S.: но это пока только теория.....
_________________ Рад видеть тебя на борту. Здесь Дом Свободы — можешь плевать на ковер и называть кота ублюдком. |
|
|
UserAd
70 EGP
 Репутация: 2 Сообщения: 132
Зарегистрирован: 20.02.2005
 |
|
А почему именно нелинейное? это как-то ненормально получится, какраз линейное ... просто с учетом пропорций Dпланеты >> Dкорабля так что корабль можно скрывать на достаточно небольших расстояниях ~ 1/2 Dпланеты
|
|
|
|
|
|
Канал Игры Мечты: «Начинаю писать игру. Нужна помощь.» |
|