PMG

Форумы по созданию игр
Текущее время: 20 апр 2024 04:12

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Новые форматы данных
СообщениеДобавлено: 19 июн 2005 21:43 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Как мне создать новый формат архива и туда упоковать все данные. Примерно как в Warcraft III архивы MPQ. Не обязательно уменьшать их размер только упоковать, но так что бы туда никто не залез. Еще как создать новый формат для хранения ТЕКСТУР, КАРТ, МОДЕЛЕЙ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 20 июн 2005 09:29 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Мне кажется не стоит этого делать. Лучше тогда использовать zip с паролем ;).

А так берешь тот же MPQ или что-то другое. Пишешь свой конвертор, где просто меняшь что-то относительно оргинального формата и все.

Текстуры тоже самое - берешь например jpg меняешь его заголовок и все. Но тогда и загрузчик и конвертор писать надо!

Есть у тебя исходники и формат MPQ?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 июн 2005 22:38 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Но мне все равно при создании игры надо делать новый формат для карт. Только я не знаю, как мне сделать его лучше. У меня есть мысль сделать свой редактор карт, где можно делать брашы и размещать модели. У брашей будут храниться размеры(Scale) координаты (X, Y, Z) и еще развороты относительно осей, путь к текстуре, если она есть к каждой стороне браша, координаты текстуры. Также и у моделей. Подскажите, что и как мне можно примерно сделать и еще я не разобрался, как сделать динамический массив и с ним работать в C++.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 24 июн 2005 11:51 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Динамические масиивы есть в STL - библиотека стандартных шаблонов. Правда, не знаю зачем, но многие пользуются альтернативной реализацией STL.

Редактор карт как правило делать самому довольно сложно, муторно и долго. Лучше воспользовать одним из готовых.

Какой тебе надо редактор карт : для 2D или 3D? Если 3D, то BSP или terrain?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 июн 2005 22:25 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Я бы хотел использовать BSP но как я смогу добавить в этот формат поддержку шейдеров и остального. Поэтому я и считаю создать свой формат. Но если есть статьи как пользоваться этим форматом и сделать шейдеры я бы не прочь. У меня друзья сильно увлекаються делать карты для CS 1.6. Думаю что для создания карт BSP подойдет Valve Hammer Editor 3.4?! Я думаю в принцепе можно создать отдельные файлы по которым будут загружаться дополнительные фичи в карту. Как ввы считаете?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 27 июн 2005 09:21 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Что бы использовать Valve Hammer Editor, надо будет изучить формат MAP, если я не ошибаюсь? Кроме этого надо будет использовать WAD, причем там по-моему есть стандартные WAD. Прав ли я? Это надо будет сделать вначале.

Затем, в Half-Life 2 шрейдеры есть, так что есть и редактор для них. Исходники HL2 есть, наверное можно разобраться ...

Если делать самому добавление шрейдеров или любых каких объектов надо как-то в Valve Hammer Editor вставлять указания на них. Вот как это сделать? Надо посмотреть... Если это сделать, то проблем нет. Главная проблема в том, что Valve Hammer Editor сохраняет в заданном формате, и поменять его нельзя.

Можно конечно, сделать свой редактор пост обработки карт шрейдерами, это конечно понятно. Ты подгружаешь карту, и позволяешь дизайнеру размещать шрейдеры в привязке к нужным ему объектам.

В любом случае, вначале сделай подгрузку карт Valve Hammer Editor, а все остальное потом.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 27 июн 2005 09:51 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Кроме Valve Hammer Editor, обращаю твое внимание на:

http://www.leadwerks.com - Cartography Shop by Osiris
http://www.blitzbasic.com - Maplet by marksibly
http://www.delgine.com - DeleD by Nobody
http://www.aliencodec.com - TreemagikG2 by Alienhead

Другое смотри на:
http://www.blitzbasic.com/toolbox/toolbox.php

На Cartography Shop я нашел лекарство.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 27 июн 2005 17:59 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Я считаю, что в данном случае лучше будет создать свой редактор для уже созданного формата. Можете дать ссылки к русским статьям, если можно по загрузке BSP и terrain с OpenGL'я, рассказать о них. Мне бы хотелось знать какой способ решения этой проблемы вы можете предложить по картам в играх. Еще вопрос по CPP зачем разработчики создаю вот такие куски кода ???:

GUNgine::GUNgine(void)
{
}

GUNgine::~GUNgine(void)// Я про это говорю здесь повторяеться объявление только со знаком ~
{
}

Пример из статей создания движка GUNgine на http://gamedev.ru

Еще у меня вопрос как в игре проверять столкновения игрока со стенами и объектами в картах. И создание скелетной анимации. Только, пожалуйста, давайте ссылки на статьи с примерами, где используется OpenGL.
______________________
С уважением eNrix


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 июн 2005 10:06 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
eNrix писал(а):
Я считаю, что в данном случае лучше будет создать свой редактор для уже созданного формата. Можете дать ссылки к русским статьям, если можно по загрузке BSP и terrain с OpenGL'я, рассказать о них.


Если только на gamedev.ru, больше нигде ничего не видел ;(.

eNrix писал(а):
Мне бы хотелось знать какой способ решения этой проблемы вы можете предложить по картам в играх.


Какой проблемы? Извени потерял нить разговора ...

eNrix писал(а):
Еще вопрос по CPP зачем разработчики создаю вот такие куски кода ???:

GUNgine::GUNgine(void)
{
}

GUNgine::~GUNgine(void)// Я про это говорю здесь повторяеться объявление только со знаком ~
{
}



Это пустышки для последующих вставок при модернизации кода. Конструктор и деструктор класса. Я обычно их пишу в теле объявления класса, и комментарю, затем по мере необходимости, что-то туда добавляю... Но так сложнее, когда есть заготовка, так проще. Вообще возможно это автоматическая генерация класса.

eNrix писал(а):
Еще у меня вопрос как в игре проверять столкновения игрока со стенами и объектами в картах.


Вот обсуждение этого же:
http://forum.pmg.org.ru/viewtopic.php?t=21

Я пришел к выводу, что надо изучать ODE, благо есть русский перевод ;).

eNrix писал(а):
И создание скелетной анимации. Только, пожалуйста, давайте ссылки на статьи с примерами, где используется OpenGL.


По скелетной анимации на русском я ничего не знаю ;(. На английском есть хорошая ebook:
Premier Press - Focus on 3D Models

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 июн 2005 13:18 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Вот ссылочки на формат MAP и как его выводить:
http://inside.hl2.ru/bspformat - Формат Source Engine BSP
http://graphics.cs.brown.edu/games/quake/quake3.html - Rendering Quake 3 Maps
В последней частями есть и код ...

А здесь вроде как описывают как добавлять шрейдеры в HL2:
http://inside.hl2.ru/shaders

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 июн 2005 19:08 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Я кажется все понятно бьяснил. :o Мне нужно узнать как сделать проверку на столкновение со стенами уровня, но не физика как в Half-Life 1 - физики нет но есть проверка столкновений со стенами игрока - игрок не проходит сквозь стены !!!. Я видел на GameDev статью про bsp деревья это, что такой формат. Я читал эту статью полностью но она сне не совсем понятно - я не знаю что такое рекурсия и скалярное произведение векторов (dot product), векторное произведение векторов (cross product), уравнение плоскости, а также понимание структур данных типа дерево, связный список и принципов их построения !!! Обьясните мне пожалуйста :? Насчет анимации неужели про неё нет ничего в инете ??? У меня инет по модему, а он у нас дорогой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 июн 2005 19:12 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Я кажется нашел что такое рекурсия. http://club.shelek.com/viewart.php?id=184
Это когда процедура вызывает сама себя.
А о остальном еще не разобрался.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 июн 2005 19:19 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Задам еще одни вопрос. Читал эту интересную статью про BSP по мне довольно простой и удобный формат !!!
Так вот я знаю что в на карте в играх бывает динамический и статический свет. Динамический я думаю делают с помощью шейдеров, а как вычислить статический свет и разместить его на карте ???. Для этого я думаю надо знать различные геометрические операции. Раскажите, что знаете ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 29 июн 2005 10:03 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
eNrix писал(а):
Я кажется все понятно бьяснил. :o Мне нужно узнать как сделать проверку на столкновение со стенами уровня, но не физика как в Half-Life 1 - физики нет но есть проверка столкновений со стенами игрока - игрок не проходит сквозь стены !!!.


Я тоже правильно объяснил ;). ODE позволяет выполнять проверку столкновений.

По столкновениям смотри урок 30 (NeHe).

Столкновения в BSP только на английском ;( :
http://www.devmaster.net/articles/quake3collision/ - Quake 3 BSP Collision Detection


eNrix писал(а):
Я видел на GameDev статью про bsp деревья это, что такой формат. Я читал эту статью полностью но она сне не совсем понятно - я не знаю что такое рекурсия и скалярное произведение векторов (dot product),


Скалярное произведение - это фактически угол между векторами. Если вектора ортогональны, то СП = 0:
u•v = ||u||*||v||*cos (alpha).

Длина вектора ||v|| находится как корень квадратный сумма квадратов всех членов.

Если вектор трехмерный, то но задан тройкой цифр v = <v1, v2, v3>, то СП:
u•v = u1*v1 + u2*v2 + u3*v3.

Это в том случае, если надо найти угол между векторами.



eNrix писал(а):
векторное произведение векторов (cross product),


При вектороном произведении получается вектор перпендикулярный двум векторам:
u x v = (y1z2-z1y2)i-(x1z2-z1x2)j+(x1y2-y1x2)k где i, j, and k единичные вектора для x, y, z осей, соответствено.

eNrix писал(а):
уравнение плоскости,


Ax + By + Cz + D = 0

Вектор <A,B,C> перпендикулярен плоскости.

eNrix писал(а):
а также понимание структур данных типа дерево, связный список и принципов их построения !!!


Дерево состоит из узлов, вот таких например:
struct Node {
void * data; - данные узла
Node * left; - указатель на узел слева;
Node * right; - указатель на узел справа;
};

Т.е. есть кореневой узел, от него дерево витвиться и вправо и влево ...

Связаный список тоже состоит из узлов, только узлы как цепочка, заместо left/right, есть только указатель на следующего в списке.
http://pmg.org.ru/galaxy2d/lva.htm - Связанные списки против массивов.

Но это конечно я крайне кратко, более полно есть в книгах. Таких книг на русском языке много, надо просто сходить в магазин посмотреть ...

eNrix писал(а):
Обьясните мне пожалуйста :? Насчет анимации неужели про неё нет ничего в инете ??? У меня инет по модему, а он у нас дорогой.


Книга весит всего 2 мега и исходники 7 мегов...

На английском конечно же можно найти ...

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 29 июн 2005 10:10 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
eNrix писал(а):
Задам еще одни вопрос. Читал эту интересную статью про BSP по мне довольно простой и удобный формат !!!
Так вот я знаю что в на карте в играх бывает динамический и статический свет. Динамический я думаю делают с помощью шейдеров, а как вычислить статический свет и разместить его на карте ???. Для этого я думаю надо знать различные геометрические операции. Раскажите, что знаете ?


Это делают с помощью lightmap - карты освещения.
http://dev.dtf.ru/articles/read.php?id=19

Как правило это широко освещено в инете ...

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB