- [23:18] * Filippok changes topic to 'Мы не проиграли дуэль... Мы просто отодвинули её конец... до 1 января... 2147 года... | Заценяем трек демиурга: http://www.realmusic.ru/songs/222245/ | Сегодня в программе: Reystlin... Цирк приехал!!!'
- [23:23] * _Reystlin- has joined #gamedev_duel
- [23:23] <_Winnie> _Reystlin-, привет.
- [23:23] <_Reystlin-> Filippok :)
- [23:23] <_Reystlin-> ку
- [23:23] <_Winnie> мы все тут собрались, что бы тебе помогать.
- [23:23] <_Reystlin-> ды ну :)
- [23:24] <_Reystlin-> я пока и сам спровляюсь
- [23:24] <_Reystlin-> :)
- [23:24] * _Winnie тормошит Darth
- [23:24] <_Reystlin-> что в ли сложного то
- [23:24] <_Reystlin-> :)
- [23:24] <NULL_PTR> Привет!
- [23:24] * Filippok slaps Darth around a bit with a large trout
- [23:24] <_Reystlin-> а по поводу этой технологии
- [23:24] <_Reystlin-> мне наш дизайнер сказывал
- [23:24] <_Reystlin-> что типа придумали такую технологию
- [23:24] <_Reystlin-> очь куртая сцена
- [23:25] <_Reystlin-> которая очь долго рендерится
- [23:25] <_Reystlin-> както рендерится в файл
- [23:26] <_Reystlin-> во время разработки
- [23:26] <_Reystlin-> а потом когда играеш в игру
- [23:26] <_Reystlin-> там из этого файла достаётся то что прорендерилось и рисуется на экран но уже более быстрее
- [23:26] <_Reystlin-> мне так обьяснили
- [23:26] <_Reystlin-> я хз есть такая технология или нет
- [23:26] <_Reystlin-> но чёт я так и непоняял как она работает:)
- [23:26] <_Reystlin-> как можно рендерить в файл
- [23:26] <_Reystlin-> и как можно рендерить на экран крутую сцену очь быстро
- [23:27] * Darth has quit IRC (Ping timeout)
- [23:27] <_Reystlin-> в которой куча деревьев
- [23:27] <_Reystlin-> в которых куча поликов
- [23:27] <_Winnie> да легко, кстати.
- [23:27] <_Winnie> рендеряшь в сверх-качестве.
- [23:28] <_Winnie> заодно и z-буффер запоминаешь.
- [23:28] <_Winnie> и получаем мега-бэграунд.
- [23:28] <_Reystlin-> ээ:)
- [23:28] <_Reystlin-> ну ты знаеш про такую технологию?
- [23:28] <_Winnie> такое когда-то использовалось на 486 в игрушке Alone In The Dark.
- [23:28] <_Reystlin-> её в этом году придумали
- [23:28] <_Winnie> лет десять назад.
- [23:28] <_Reystlin-> :)
- [23:29] <_Reystlin-> понятно
- [23:29] <_Reystlin-> ну значит это реально
- [23:29] <_Reystlin-> ?
- [23:29] <_Winnie> конечно.
- [23:29] <_Reystlin-> понятно
- [23:29] <_Winnie> если для игры статичный задник это нормально - то да.
- [23:29] <_Winnie> но если нужно движение камеры - то это неприемлемо.
- [23:29] <_Winnie> так как задник статический.
- [23:30] <_Reystlin-> ээ
- [23:30] <_Reystlin-> а чё за здник?
- [23:30] <_Reystlin-> *задник
- [23:30] <_Reystlin-> :)
- [23:30] <_Winnie> ну, "задник", на фоне которого всё происходит.
- [23:30] <_Reystlin-> аа
- [23:30] <_Reystlin-> ну вот у меня в движке двигается сцена
- [23:30] <_Reystlin-> а не камера
- [23:30] * Darth has joined #gamedev_duel
- [23:30] <_Reystlin-> это получается что можно эту штуку применить?
- [23:31] <_Winnie> ну и конкретная библиотека тут нипричём, отрендерить можно в чём угодно, хоть в майке.
- [23:31] <_Winnie> в Maya.
- [23:31] <_Reystlin-> понятно
- [23:31] <_Reystlin-> тут идёт рендеринг в какойто файл
- [23:31] <_Reystlin-> неоябзательно в библиотеку
- [23:31] <_Reystlin-> :)
- [23:32] <_Reystlin-> а как в синема 4д или в 3д максе такое зделать?
- [23:32] <_Reystlin-> тоесть отрендерить
- [23:32] <_Reystlin-> в файл
- [23:32] * _Winnie не знает совершенно подробностей, попробуй изучить help.
- [23:32] <_Reystlin-> лана попробую
- [23:32] <Filippok> там есть какойто специальный экспортер
- [23:33] <_Reystlin-> а незнаеш де можно найти побольше инфы по этой технологии?
- [23:33] <NULL_PTR> e pyfrjvjuj
- [23:33] <Filippok> да гдето на сайте епика было
- [23:33] <NULL_PTR> *у знакомого
- [23:33] <_Reystlin-> NULL_PTR я про организацию данной фичи
- [23:33] <_Reystlin-> :)
- [23:33] <_Reystlin-> типап как её зделать
- [23:34] <_Reystlin-> я вот тут щяс читаю статью с гд на тему работы с опенил
- [23:34] <_Reystlin-> проблема появилась
- [23:34] <_Reystlin-> значит ругается error C2065: 't' : undeclared identifier
- [23:35] <_Reystlin-> типа переменной нет
- [23:35] <_Reystlin-> а она использщуется в ф-и
- [23:35] <_Reystlin-> gluBuild2DMipmaps(GL_TEXTURE_2D, t, width, height, type,GL_UNSIGNED_BYTE, data);
- [23:35] <_Reystlin-> какой тип у этой переменной?
- [23:35] <_Reystlin-> и что она означает?
- [23:35] <_Reystlin-> в данном случае
- [23:36] <NULL_PTR> Количество компонент
- [23:36] <_Reystlin-> ?
- [23:36] <NULL_PTR> 3 для RGB 4 для RGBA
- [23:36] <_Reystlin-> понял
- [23:37] <_Reystlin-> сенкс
- [23:37] <_Reystlin-> а для GL_RGB8 какое число?
- [23:37] <NULL_PTR> 3 по идее
- [23:37] <NULL_PTR> битность значения не имеет
- [23:38] <NULL_PTR> именно кол-во компонентов цвета
- [23:38] <_Reystlin-> понятно
- [23:38] <_Reystlin-> сенкс
- [23:41] <NULL_PTR> Ещё вопросы?
- [23:41] <Filippok> мы тут специально собрались
- [23:41] <Filippok> чтобы тебе помочь
- [23:41] <_Reystlin-> :)
- [23:41] <_Reystlin-> ну да есть вопрос
- [23:41] <_Reystlin-> но вы врятле поможете
- [23:41] <_Reystlin-> :)
- [23:42] <NULL_PTR> тут Вини
- [23:42] <_Reystlin-> по поводу организации данно йтехнологии
- [23:42] <_Reystlin-> ну я знгаю
- [23:42] <_Reystlin-> *знаю:)
- [23:42] <Filippok> ну мы щас вместе подумаем
- [23:42] <Filippok> поищем в инете
- [23:42] <Filippok> и поможем ;)
- [23:43] <_Reystlin-> :)
- [23:44] <_Reystlin-> странно чтото даже опенил нехочит мне тга грузить:(
- [23:46] <Filippok> а ты юзай bmp
- [23:46] <Filippok> нафига тебе tga?
- [23:46] <_Reystlin-> а у бмп альфы нема
- [23:46] <Filippok> bmp лучше чем tga
- [23:46] <_Reystlin-> я тож так думал:)
- [23:46] <_Reystlin-> раньше
- [23:46] <_Reystlin-> http://www.everfall.com/paste/id.php?qery67gh9762
- [23:46] <_Winnie> есть в bmp альфа
- [23:46] <_Reystlin-> вот что я пишу
- [23:46] <NULL_PTR> dds заруливает
- [23:46] <Filippok> ага
- [23:46] <_Winnie> и фотошоп умеет с ней работать.
- [23:46] <_Reystlin-> _Winnie разве?
- [23:46] <_Winnie> да.
- [23:46] <Filippok> бмп и грузить легко
- [23:46] <NULL_PTR> Да
- [23:46] <_Reystlin-> хм
- [23:47] <_Reystlin-> незнал
- [23:47] <NULL_PTR> Фил, тга легче бмп
- [23:47] <_Reystlin-> но он собака много весит
- [23:47] <Filippok> нуичо?
- [23:47] <_Winnie> ну, tga бывают сжатые и не сжатые.
- [23:47] <_Reystlin-> ну будит игра гигов на 30 ну и чо
- [23:47] <Filippok> нее
- [23:47] <_Reystlin-> это я знаю
- [23:47] <_Winnie> если несжатые - то такого же размера как и bmp.
- [23:47] <Filippok> рейст, пожми архиватором ;)
- [23:48] <NULL_PTR> rle сжатие редко приносит значительный выйгрыш
- [23:49] <NULL_PTR> в бмп кстати противное выравнивание
- [23:49] * Reystlin has joined #gamedev_duel
- [23:49] <Reystlin> я аыкинуло:(
- [23:49] <NULL_PTR> <Filippok> рейст, пожми архиватором ;)
- [23:49] <Reystlin> чё тут было?
- [23:49] <Reystlin> после
- [23:49] <Reystlin> это я видел:)
- [23:49] <NULL_PTR> [22:49:06] <NULL_PTR> в бмп кстати противное выравнивание
- [23:49] <NULL_PTR> [22:49:13] * Reystlin (pIRCuser51@62.33.16.ircnet-4424) has joined #gamedev_duel
- [23:49] <Reystlin> :)
- [23:50] <Reystlin> в чём ошибка в коде?
- [23:50] * _Reystlin- has quit IRC (Ping timeout)
- [23:50] <Reystlin> почему он нехотит правельно работать?
- [23:50] <NULL_PTR> Какой?
- [23:50] <Reystlin> http://www.everfall.com/paste/id.php?qery67gh9762
- [23:51] <NULL_PTR> А как он работает? =)
- [23:53] <Filippok> как оно работает?
- [23:54] <NULL_PTR> У?
- [23:54] * _Reystlin- has joined #gamedev_duel
- [23:54] <_Reystlin-> да ё
- [23:54] <_Reystlin-> чё такое
- [23:54] <_Reystlin-> :(
- [23:54] <NULL_PTR> <NULL_PTR> А как он работает? =)
- [23:54] * Reystlin has quit IRC (Ping timeout)
- [23:54] <NULL_PTR> <Filippok> как оно работает?
- [23:55] <_Reystlin-> грузит тепкстуру
- [23:55] <_Reystlin-> а на полик её рисовать нехотит
- [23:56] <NULL_PTR> glGetError() что возвращает?
- [23:56] <_Reystlin-> вроде ничего
- [23:57] <_Reystlin-> если бы возвращяло IL_NO_ERROR
- [23:57] <_Reystlin-> он бы вылетал
- [23:57] <NULL_PTR> glEnable(GL_TEXTURE_2D); не забыл?
- [23:58] * Reystlin has joined #gamedev_duel
- [23:58] <NULL_PTR> ??
- [23:59] <NULL_PTR> может наоборот?
- [23:59] <Filippok> нул
- [23:59] <Filippok> наоборот
- [23:59] <Filippok> ;)
- [23:59] * _Reystlin- has quit IRC (Ping timeout)
- Session Time: Wed Aug 23 00:00:00 2006
- [00:00] <Filippok> [23:57] <NULL_PTR> glEnable(GL_TEXTURE_2D); не забыл?
- [00:00] <Reystlin> точна
- [00:00] <Reystlin> :)
- [00:00] <Reystlin> щяс проверю
- [00:00] <Reystlin> не-а
- [00:01] <Reystlin> всёравно
- [00:01] <Filippok> покажи изменённый код
- [00:01] <NULL_PTR> А раньше полик был?
- [00:01] <NULL_PTR> *был виден
- [00:02] <NULL_PTR> А то SwapBuffers я не вижу
- [00:02] <Reystlin> а он в другом месте
- [00:02] <NULL_PTR> Ладно, скоро вернусь
- [00:02] <Reystlin> http://www.everfall.com/paste/id.php?qery67gh9762
- [00:02] * NULL_PTR is now known as NULL_PTR[away]
- [00:02] <Reystlin> вот
- [00:02] <Reystlin> ладно с текстурой я какнить раберусь
- [00:02] <Reystlin> мне важнее вот что зделать
- [00:02] <Reystlin> я уже 3 месяца убил так и не зделал
- [00:02] <Reystlin> колизию
- [00:03] <Reystlin> :(
- [00:03] * NULL_PTR[gprs] has joined #gamedev_duel
- [00:03] <Reystlin> подскажите алгоритм для поиска поподает ли тренугольник в другой треугольник если я знаю все точки этих треугольников
- [00:05] <Reystlin> и тишина :)
- [00:05] * ShTiRLiC has joined #gamedev_duel
- [00:05] * ChanServ sets mode: +oa ShTiRLiC ShTiRLiC
- [00:06] <NULL_PTR[gprs]> гугл посетил? ;-)
- [00:06] <_Winnie> Reystlin, проверь что какое-либо ребро одного пересекает ребро другого.
- [00:06] <ShTiRLiC> omg
- [00:06] <ShTiRLiC> O-M-F-G
- [00:06] <Reystlin> ага
- [00:06] <_Winnie> так сказать, упрощение задачи.
- [00:06] <Reystlin> ага но не всегда работает
- [00:06] <NULL_PTR[gprs]> привет шпион!
- [00:06] <ShTiRLiC> Фхтагн
- [00:07] <Filippok> ку штирлиц!
- [00:07] <ShTiRLiC> Сёдня слил Тибию для компа
- [00:07] <Filippok> мы тут все собрались
- [00:07] <Filippok> чтобы помогать рейстлину ;)
- [00:07] <ShTiRLiC> Дык я вижу
- [00:07] <ShTiRLiC> Группо патдержки
- [00:07] <Reystlin> :)
- [00:08] <ShTiRLiC> Деми насрал трек?
- [00:08] <Filippok> хм
- [00:08] <Filippok> давно ;)
- [00:08] <ShTiRLiC> Надо пойти заценить... завтра....
- [00:08] <Reystlin> _Winnie это нада в цикле пробижать по все 6 рёбрам и проверять переикае тся ил одна из них с одной из 3 ребёр?
- [00:08] <ShTiRLiC> Ну я не видел
- [00:09] <Filippok> ещё вчера в топик поставил
- [00:09] <ShTiRLiC> Ща перелью на промежутачный
- [00:09] <_Winnie> пробежать по всем шести и проверить, пересекается ли оно с другим треугольником.
- [00:09] <Filippok> ага
- [00:09] <_Winnie> возможно, изнутри.
- [00:09] <Reystlin> понятно
- [00:09] <Filippok> и так для каждого треугольника
- [00:09] <Reystlin> ну да :)
- [00:09] <_Winnie> для каждой пары.
- [00:09] <ShTiRLiC> Так
- [00:09] <ShTiRLiC> Погоди-ка
- [00:09] <Filippok> а да
- [00:09] <Filippok> точняк
- [00:09] <ShTiRLiC> А если клиппинг стоит?
- [00:10] <Reystlin> а это что:
- [00:10] <ShTiRLiC> Тогда надо через одно
- [00:10] <Reystlin> ?
- [00:10] <ShTiRLiC> Это в стейтах вирутальной машины обработки геометрии ставится
- [00:10] <Filippok> ну это тоже мега технология
- [00:10] <Filippok> штирлиц
- [00:10] <ShTiRLiC> Дык
- [00:10] <Filippok> расскажи ему
- [00:10] <ShTiRLiC> Эм...
- [00:10] <ShTiRLiC> Что именно?
- [00:11] <ShTiRLiC> Про клиппинг?
- [00:11] <Reystlin> ну хотяб про него:)
- [00:11] <ShTiRLiC> Ага
- [00:11] <Reystlin> _Winnie а как называется та технология о которой мы в начале говарили?
- [00:11] <ShTiRLiC> В общем, сначала ставится куллинг
- [00:11] <Reystlin> ээ
- [00:11] <Reystlin> :)
- [00:11] <ShTiRLiC> Куллинг понижает температуру ядра, так что можно повышать стриминг пакетов вершин
- [00:11] <_Winnie> да никак не называется. пререндеринг, мож.
- [00:12] <Reystlin> понятно
- [00:12] <Reystlin> ShTiRLiC какую ещё температуру
- [00:12] <ShTiRLiC> После этого переходишь в пространство имен ядра
- [00:12] <Reystlin> какого ядра?
- [00:12] <ShTiRLiC> И там просто включаешь клиппинг
- [00:12] <Reystlin> ээ
- [00:12] <Reystlin> :)
- [00:12] <ShTiRLiC> Ядра видеокарты
- [00:12] <_Winnie> пространство ядра треунольника.
- [00:12] <ShTiRLiC> Да, или квада, если у тебя квады
- [00:13] <Reystlin> почти понятно
- [00:13] <ShTiRLiC> Зависит от архитектуры движка и формата хранения метаданных
- [00:13] <Filippok> да
- [00:13] <Filippok> мы потом ещё и линков дадим
- [00:13] <Reystlin> :)
- [00:13] <Reystlin> тока русских
- [00:13] <Reystlin> !
- [00:13] <ShTiRLiC> Да-да
- [00:13] <ShTiRLiC> Это же наполовину русская технология
- [00:14] <ShTiRLiC> В разработке участвовал сам СЕМЕН
- [00:14] <Reystlin> оо:)
- [00:15] <ShTiRLiC> Еще бы
- [00:15] <ShTiRLiC> Думаешь, что его так уважают тут?
- [00:15] <ShTiRLiC> В общем
- [00:15] <ShTiRLiC> Систему надо проектировать исходя из флоу-контроля метаданных
- [00:15] <ShTiRLiC> Метаданные умеешь сохранять?
- [00:16] <Reystlin> не-а
- [00:16] <Reystlin> я даже плохо знаю что это
- [00:16] <Reystlin> :)
- [00:16] <ShTiRLiC> Бери мануал по формату mtd
- [00:16] <Reystlin> ок
- [00:16] <ShTiRLiC> И заполняй
- [00:16] <ShTiRLiC> Генерицца из мешей и бинарных делений подпространств
- [00:17] <ShTiRLiC> При наложении получается массив метаданных
- [00:17] <Reystlin> примерно понятно
- [00:17] <ShTiRLiC> Их надо передавать четко синхронизированно с основными данными
- [00:17] <Reystlin> так ещё вопрос
- [00:17] <ShTiRLiC> Иначе возникает рассинхронизация и биение чипа и памяти
- [00:17] <Reystlin> вот значит у меня в игре планируетцо зделать возможность стрелять
- [00:17] <Reystlin> :)
- [00:18] <Reystlin> и + онлайн
- [00:18] <Reystlin> вот каким образом передавать всем клиентам пули?
- [00:18] <ShTiRLiC> Ага
- [00:18] <NULL_PTR[gprs]> в пакетах
- [00:18] <Filippok> да
- [00:18] <ShTiRLiC> Вопрос довольно популярен среди начинающих девелоперов
- [00:18] <Reystlin> ну это понятно
- [00:18] <ShTiRLiC> Погоди
- [00:18] <Filippok> в пакетах
- [00:18] <ShTiRLiC> Нулл, погоди
- [00:18] <Filippok> погоди
- [00:18] <ShTiRLiC> Ща я объясню
- [00:18] <Reystlin> ок
- [00:18] <Reystlin> слушаю
- [00:18] <Filippok> я это реализовывал уже
- [00:19] <Reystlin> Filippok ну поможеш тогда потом :)
- [00:19] <ShTiRLiC> Во-первых, в пакетах не рекомендуется
- [00:19] <NULL_PTR[gprs]> лан, я кушать
- [00:19] <Filippok> нифига
- [00:19] <ShTiRLiC> Предполагается, что пакеты ты упаковываешь в боксы
- [00:19] <Filippok> в пакетах самое то
- [00:19] <ShTiRLiC> Т.е. коробки
- [00:19] <Filippok> ну можно и в коробки
- [00:19] <Filippok> но сложнее
- [00:19] <Filippok> про пакеты тоже надо рассказать
- [00:20] <Filippok> ведь в коробки пули пакуюцца в пакетах
- [00:20] <Reystlin> ну а как тогда ещё?
- [00:20] <ShTiRLiC> Не
- [00:20] <ShTiRLiC> Ты не шаришь
- [00:20] <Filippok> никак
- [00:20] * NULL_PTR[gprs] is now known as NULL_PTR[eat]
- [00:20] <ShTiRLiC> Значит, организуешь поток ввода-вывода
- [00:20] <ShTiRLiC> Делается через консольные сокеты
- [00:20] <ShTiRLiC> В общем, ничего сложного
- [00:20] <ShTiRLiC> Далее ставишь таймеры отсчета и синхронизации на обеих сторонах
- [00:20] <ShTiRLiC> Это специальный тип таймеров в OpenGL
- [00:20] <ShTiRLiC> В DirectX немного по-другому называются, не помню сейчас
- [00:20] <ShTiRLiC> Filippok, пакеты - это примитив, это и так все знают
- [00:20] <Filippok> ага
- [00:20] <ShTiRLiC> Коробки же появились только в движке Doom3
- [00:21] <ShTiRLiC> Там что технология довольно передовая
- [00:21] <ShTiRLiC> Так
- [00:21] <ShTiRLiC> Блин
- [00:21] <ShTiRLiC> Сбил меня
- [00:21] <ShTiRLiC> Ах жа
- [00:21] <ShTiRLiC> да
- [00:21] <ShTiRLiC> Таймеры необходимо синхронизировать
- [00:21] <Reystlin> :)
- [00:21] <ShTiRLiC> Тогда данные можно слать одновременно
- [00:21] <ShTiRLiC> Не дожидаясь ответа
- [00:21] <ShTiRLiC> Ускорение трафика в несколько раз
- [00:22] <ShTiRLiC> Плюс можно сделать более крутую графику
- [00:22] <ShTiRLiC> Пока понятно?
- [00:23] <Reystlin> ну да
- [00:23] <Reystlin> только есть такая проблема
- [00:23] <ShTiRLiC> Ок
- [00:23] <ShTiRLiC> Тогда дальше
- [00:23] <Reystlin> как потеря данных
- [00:23] <Filippok> ага
- [00:23] <Reystlin> как с ней быть?
- [00:23] <ShTiRLiC> Ааа
- [00:23] <ShTiRLiC> Ну да
- [00:23] <Filippok> пакеты могут не дойти
- [00:23] <ShTiRLiC> Чуть не забыл
- [00:23] <Reystlin> ага
- [00:23] <Reystlin> :)
- [00:24] <Reystlin> так получается лажа какаято
- [00:24] <Filippok> а коробки доходят стопудово
- [00:24] <ShTiRLiC> Всё делается элементарно
- [00:24] <ShTiRLiC> На каждый пакет накладывается сигнатура Флойда-Стейнберга
- [00:24] <ShTiRLiC> Таким образом гарантируется доставка
- [00:24] <Reystlin> а
- [00:24] <ShTiRLiC> Подсистема доставки коробок называется "Почтальон"
- [00:24] <Reystlin> тоесть это пакет хоть когданить но придёт
- [00:24] <Reystlin> ?
- [00:24] <Filippok> поправка: На каждую коробку
- [00:24] <Reystlin> в сл ряду может придти
- [00:24] <ShTiRLiC> Она присутствует во всех движках
- [00:24] <ShTiRLiC> Filippok, нет
- [00:24] <ShTiRLiC> На пакет
- [00:25] <ShTiRLiC> После сигнатурирования он становится полубоксом
- [00:25] <ShTiRLiC> Для дополнения до бокса надо добавить криптовставку
- [00:25] <ShTiRLiC> И в качестве "соли" - случайную выборку из метаданных
- [00:25] <ShTiRLiC> Reystlin, нет
- [00:25] <ShTiRLiC> Коробки доходят не всегда
- [00:26] <ShTiRLiC> За счет сигнатурирования, если одна коробка не доходит 5 раз, она сливается со следующей
- [00:26] <ShTiRLiC> И так получается экономия данных и непрерывность геймплея
- [00:26] <Reystlin> понятно
- [00:26] <ShTiRLiC> Ну вот
- [00:26] <Filippok> так получаюцца бандерольки
- [00:26] <Reystlin> :)
- [00:26] <ShTiRLiC> Filippok, это непрограммистский термин
- [00:27] <Filippok> ну я забыл как оно в реале называецца
- [00:27] <ShTiRLiC> Это всякие ламеры так называют метакоробки
- [00:27] <ShTiRLiC> Скажешь такое при программерах - отхватишь в рыло
- [00:27] <Reystlin> :)
- [00:27] <ShTiRLiC> "Бандерольки" - тьфу блин
- [00:27] <Filippok> тока не мета а мега, насколько я помню
- [00:27] <ShTiRLiC> Короче
- [00:27] <ShTiRLiC> Мега?
- [00:27] <ShTiRLiC> Неееет
- [00:27] <Filippok> ага
- [00:27] <Filippok> читай доки
- [00:27] <ShTiRLiC> Мегакоробки - это 10 коробок в связке
- [00:27] <Filippok> щас нарою
- [00:28] <Filippok> блин
- [00:28] <Filippok> я всё перепутал :(
- [00:28] <ShTiRLiC> Т.е. неразрывная "посылка"
- [00:28] <ShTiRLiC> Посылки доходят всегда
- [00:28] <ShTiRLiC> Они применяются для важных данных
- [00:29] <ShTiRLiC> Блин, короче
- [00:29] <ShTiRLiC> Давайте про типы связи
- [00:29] <ShTiRLiC> На какие линии рассчитана игра?
- [00:29] * _Reystlin- has joined #gamedev_duel
- [00:29] <Filippok> пипец
- [00:29] <Filippok> ты столько пропустил
- [00:29] <Filippok> столько полезной инфы
- [00:30] <ShTiRLiC> Да не оч много
- [00:30] <ShTiRLiC> Кинь ему лог
- [00:30] <Filippok> да я не тебе
- [00:30] <Filippok> щас
- [00:30] * Reystlin has quit IRC (Ping timeout)
- [00:31] <_Reystlin-> да ё
- [00:31] <_Reystlin-> чё такое
- [00:31] <_Reystlin-> :(
- [00:31] <Filippok> чо последнее услышал?
- [00:31] <ShTiRLiC> Что?
- [00:31] <_Reystlin-> [00:28:06] <Filippok> блин
- [00:32] <Filippok> лог в привате
- [00:32] <Filippok> давайте продолжим?
- [00:32] <ShTiRLiC> [00:28:10] <ShTiRLiC> Т.е. неразрывная "посылка"
- [00:32] <ShTiRLiC> [00:28:25] <ShTiRLiC> Посылки доходят всегда
- [00:32] <ShTiRLiC> [00:28:31] <ShTiRLiC> Они применяются для важных данных
- [00:32] <ShTiRLiC> [00:28:48] <Filippok> я всё перепутал :(
- [00:32] <ShTiRLiC> [00:28:59] <ShTiRLiC> Блин, короче
- [00:32] <ShTiRLiC> [00:29:04] <ShTiRLiC> Давайте про типы связи
- [00:32] <ShTiRLiC> [00:29:12] <ShTiRLiC> На какие линии рассчитана игра?
- [00:33] * Darth has quit IRC (Quit: )
- [00:33] <ShTiRLiC> Так что про линии?
- [00:33] <ShTiRLiC> Модем-ADSL-Спутник?
- [00:33] <_Reystlin-> на сеть и на модем
- [00:33] <_Reystlin-> :)
- [00:33] <ShTiRLiC> Ок
- [00:33] <ShTiRLiC> Итак
- [00:33] <Filippok> для модема сложнее всего...
- [00:33] <ShTiRLiC> На модем ставится один синхротаймер
- [00:33] <ShTiRLiC> Вообще да
- [00:33] <ShTiRLiC> Приходится паковать по Лемпелю-Зиву
- [00:33] <Filippok> ага
- [00:33] <ShTiRLiC> Иначе перебои трафика
- [00:33] <Filippok> туда гигакоробки не влезают
- [00:34] <ShTiRLiC> На локалке паковать не надо
- [00:34] <ShTiRLiC> Гигакоробки влезают
- [00:34] <ShTiRLiC> Но только через портальные подсистемы
- [00:34] <ShTiRLiC> Приходится делать слоистую pull-архиектуру
- [00:34] <ShTiRLiC> С множеством боковых платформенных интерфейсов
- [00:34] <_Reystlin-> стоп
- [00:35] <_Reystlin-> нада ещё делать чтобы эти коробки весили немного
- [00:35] <ShTiRLiC> ?
- [00:35] <ShTiRLiC> Я же сказал
- [00:35] <Filippok> дык сказали же
- [00:35] <Filippok> их пакуют
- [00:35] <_Reystlin-> ато некоторые небудут играть из за того что трафик жрёт
- [00:35] <ShTiRLiC> Корбки пакуются методом Лемпеля-Зива
- [00:35] <_Reystlin-> понятно
- [00:35] <ShTiRLiC> Пишешь потоковый архиватор
- [00:35] <ShTiRLiC> Делов на 10 минут
- [00:35] <Filippok> можно будет играть даже через гпрс соединение
- [00:35] <_Reystlin-> ну для кого как
- [00:35] <_Reystlin-> :)
- [00:36] <ShTiRLiC> Далее стримишь весь исходящий поток на архиватор, а выход стримишь в систему сигнальной обработки
- [00:36] <ShTiRLiC> В общем, если делаешь для локалки - там попроще чуток
- [00:36] <ShTiRLiC> Паковать не надо, но складировать надо всё равно
- [00:37] <ShTiRLiC> В этом случае архитектура выглядит как бублик
- [00:38] <ShTiRLiC> Двояко-замкнутая без ярко выраженного центра
- [00:38] <ShTiRLiC> Платформы располагаются на чуть сдвинутом уровне, что дает повышенную гибкость системе
- [00:38] <ShTiRLiC> Да, мне тут подсказывают про великую теорему Бублика и Яблока
- [00:38] <ShTiRLiC> Ок
- [00:38] <ShTiRLiC> Архитектура большинства игр имеет форму бублика или яблока
- [00:38] <ShTiRLiC> Яблочная архитектура - это централизованная архитектура
- [00:38] * _Reystlin- has quit IRC (Ping timeout)
- [00:38] <ShTiRLiC> Бля
- [00:39] <ShTiRLiC> Он меня уже заебал
- [00:39] <Filippok> ага
- [00:39] <ShTiRLiC> Хуле я тут распинаюсь?!
- [00:39] <NULL_PTR[eat]> ы
- [00:39] * _Reystlin- has joined #gamedev_duel
- [00:39] <ShTiRLiC> Киньте лог этому убоищу
- [00:39] <Filippok> [00:36] <ShTiRLiC> Далее стримишь весь исходящий поток на архиватор, а выход стримишь в систему сигнальной обработки
- [00:39] <Filippok> [00:36] <ShTiRLiC> В общем, если делаешь для локалки - там попроще чуток
- [00:39] <Filippok> [00:36] <ShTiRLiC> Паковать не надо, но складировать надо всё равно
- [00:39] <Filippok> [00:37] <ShTiRLiC> В этом случае архитектура выглядит как бублик
- [00:39] <Filippok> [00:38] <ShTiRLiC> Двояко-замкнутая без ярко выраженного центра
- [00:39] <Filippok> [00:38] <ShTiRLiC> Платформы располагаются на чуть сдвинутом уровне, что дает повышенную гибкость системе
- [00:39] <Filippok> [00:38] <ShTiRLiC> Да, мне тут подсказывают про великую теорему Бублика и Яблока
- [00:39] <Filippok> [00:38] <ShTiRLiC> Ок
- [00:39] <Filippok> [00:38] <ShTiRLiC> Архитектура большинства игр имеет форму бублика или яблока
- [00:39] <Filippok> [00:38] <ShTiRLiC> Яблочная архитектура - это централизованная архитектура
- [00:39] <_Reystlin-> :(
- [00:39] <Filippok> давай дальше
- [00:39] <Filippok> мне тоже интересно
- [00:39] <ShTiRLiC> Ок
- [00:40] <ShTiRLiC> Коробки образуются из 10-20 пакетов
- [00:40] <Filippok> ато я чото подзабыл как делаецца яблочная архитектура
- [00:40] <ShTiRLiC> Это происходит обычно под "кожурой", т.е. оболочкой системы
- [00:40] * NULL_PTR[away] is now known as NULL_PTR
- [00:40] <ShTiRLiC> Яблоко состоит из множества подоболочек
- [00:40] * NULL_PTR[eat] has quit IRC (Quit: used jmIrc)
- [00:40] <ShTiRLiC> Причем они обладают размытым шаблонным наследованием
- [00:41] <ShTiRLiC> То есть, грубо говоря, могут вращаться друг относительно друга
- [00:41] <ShTiRLiC> Для этого применяется паттерн "AppleRot"
- [00:41] <Filippok> да
- [00:41] <ShTiRLiC> Эплрот по-русски
- [00:41] <Filippok> он есть в библиотеке паттернов
- [00:41] <Filippok> SPL
- [00:41] <Filippok> её качать надо
- [00:42] <Filippok> завтра линк дам
- [00:42] <ShTiRLiC> Да-да, в boost::pattern
- [00:42] <ShTiRLiC> Коробки проскакивают от верхнего слоя до ядра
- [00:42] <ShTiRLiC> Эм
- [00:42] <ShTiRLiC> Уже выделили в отдельную либу?
- [00:42] <ShTiRLiC> Я что-то устарел
- [00:42] <Filippok> ага
- [00:42] <ShTiRLiC> Да, так вот
- [00:42] <Filippok> теперь это SPL::AppleRot
- [00:42] <ShTiRLiC> В ядре коробки синглтонизируются в один фасад
- [00:43] <ShTiRLiC> Таким образом, интерфейсы коробок стыкуются в единое адресное пространство
- [00:43] <ShTiRLiC> Это даёт т.н. "единообразие"
- [00:43] <ShTiRLiC> Далее мегакоробка отсылается через враппер для сетевого интерфейса в сеть
- [00:44] <ShTiRLiC> Вот и всё
- [00:44] <Filippok> ага
- [00:44] <Filippok> есть вопросы?
- [00:44] <_Reystlin-> да
- [00:44] <_Reystlin-> тут нетуда штырлиц порулил
- [00:44] <_Reystlin-> :)
- [00:44] <ShTiRLiC> В принципе, в своё время aruslan примерно это же рассказывал на лекции
- [00:44] <_Reystlin-> я спрашивал как правильно передавать пули
- [00:44] <Filippok> дык
- [00:44] <ShTiRLiC> Только я упростил и убрал всё дао
- [00:44] <Filippok> сказалиже
- [00:44] <ShTiRLiC> Блин
- [00:44] <_Reystlin-> тоесть не пап вот между компами обмениваться инфой
- [00:44] <ShTiRLiC> Не, он меня убивает
- [00:44] <_Reystlin-> а как правильно в пакет их запаковать
- [00:44] <_Reystlin-> :)
- [00:44] <Filippok> короче смотри
- [00:44] <_Reystlin-> ну
- [00:44] <ShTiRLiC> Пакет создаешь на основе структуризации игровых данных
- [00:45] <Filippok> есть специальный класс
- [00:45] <Filippok> CPacket
- [00:45] <_Reystlin-> стоп
- [00:45] <ShTiRLiC> Берешь метаданные пули вместе с координатами
- [00:45] <ShTiRLiC> Да-да
- [00:45] <_Reystlin-> карочен
- [00:45] <ShTiRLiC> Filippok, расскажи
- [00:45] <_Reystlin-> у меня есть обьект
- [00:45] <ShTiRLiC> Я уже устал
- [00:45] <Filippok> щас
- [00:45] <_Reystlin-> пуля
- [00:45] <ShTiRLiC> Метаданные не забудь
- [00:45] <_Reystlin-> у которой есть координаты
- [00:45] <_Reystlin-> вот мне нада передать эти координаты другому клиенту
- [00:45] <Filippok> короче смотри
- [00:45] <_Reystlin-> + чтобы всё шло в реальном времени
- [00:46] <Filippok> есть набор классов
- [00:46] <_Reystlin-> у всех одинаково
- [00:46] <Filippok> для работы с сетью
- [00:46] <Filippok> CPacket, CBox, CMetaBox, CMegaBox и CGigaBox
- [00:46] <Filippok> создаёшь свой класс
- [00:47] <Filippok> наследуешь его от класса пули и от класса CMetaData
- [00:47] <_Reystlin-> вот в чём проблема
- [00:47] <Filippok> CMetaData - это класс в котором храняцца метаданные
- [00:47] <Filippok> я те линк на формат файла с метаданными потом дам
- [00:47] <Filippok> смотри
- [00:48] <Filippok> потом засовываешь этот класс в пакет функцией CPacket::AddData()
- [00:48] <ShTiRLiC> Файл с метаданными - это расширение формата .x на самом деле
- [00:48] <Filippok> потом пакуешь это в бокс
- [00:48] <ShTiRLiC> Лемпел-Зивом
- [00:48] <Filippok> ага
- [00:48] <ShTiRLiC> И сигнатуру накладываешь
- [00:49] <Filippok> да
- [00:49] <Filippok> чуть не забыл
- [00:49] <ShTiRLiC> Через CBox::Sign()
- [00:49] <Filippok> сенькс штирлиц
- [00:49] <Filippok> вот
- [00:49] <_Reystlin-> понятно
- [00:49] <ShTiRLiC> Там как параметр идет твой секретный RSA-ключ
- [00:49] <Filippok> если играют через модем, то делаешь хитрую штуку
- [00:49] <ShTiRLiC> Публичный должен быть на другом компе
- [00:50] <Filippok> у тебя движок должен быть построен на основе паттерна SPL::AppleRot
- [00:51] <Filippok> вот
- [00:51] <Filippok> туда ты кидаешь эти коробки
- [00:51] <Filippok> и всё
- [00:51] <Filippok> дальше всё автоматика
- [00:51] <Filippok> штирлиц, я ничего не упустил?
- [00:52] <Filippok> вопросы?
- [00:52] <_Reystlin-> понятно
- [00:52] <_Reystlin-> так
- [00:52] <_Reystlin-> ещё я вот занаво пробовал писать 3 раза свой движок
- [00:52] <_Reystlin-> и ниодин раз неполучилось зделать фрустум:(
- [00:52] <_Reystlin-> как он делается то?
- [00:52] <ShTiRLiC> Через SPL::AppleRot::PickBox()
- [00:52] <ShTiRLiC> Благо, в SPL многое для разработки игр уже сделано
- [00:52] <ShTiRLiC> Фрустум-то тебе зачем?
- [00:52] <Filippok> хм
- [00:52] <_Reystlin-> а вот представь
- [00:52] <Filippok> винни
- [00:52] <_Reystlin-> город чуть побольше москвы
- [00:52] <_Reystlin-> :)
- [00:52] <Filippok> ты вроде круто фрустумы делаешь?
- [00:53] <_Reystlin-> и он каждый кадр весь прорисовывается
- [00:53] <ShTiRLiC> А, так это не через фрустум
- [00:53] <_Reystlin-> + в нём каждая травинка прорисована
- [00:53] <ShTiRLiC> Тут всё хитрее
- [00:53] <ShTiRLiC> Да-да
- [00:53] <ShTiRLiC> Я понял
- [00:53] <_Reystlin-> ага
- [00:53] <Filippok> _Winnie
- [00:53] <_Reystlin-> нада делать пирамиду видимости
- [00:53] <ShTiRLiC> Просто пишешь три шойдера на HLSL
- [00:53] <ShTiRLiC> нет блин
- [00:53] <ShTiRLiC> Не надо пирамиду делать
- [00:53] <ShTiRLiC> Нужно ТРИ шойдера
- [00:53] <Filippok> пирамида устарела
- [00:53] <_Reystlin-> а чё такое шойдеры?
- [00:53] <ShTiRLiC> Первый будет просматривать данные геометрии
- [00:53] <Filippok> типа вид шейдеров
- [00:54] <Filippok> тока круче
- [00:54] <_Reystlin-> понятно
- [00:54] <ShTiRLiC> Да
- [00:54] <ShTiRLiC> Это расширение
- [00:54] <ShTiRLiC> Shoders
- [00:54] <ShTiRLiC> Читается вообще-то как "шоудерс"
- [00:54] <ShTiRLiC> Но мы привыкли сокращать
- [00:54] <ShTiRLiC> Это расширение шейдеров 3.0 - 3.1а
- [00:54] <ShTiRLiC> Итак, первый смотрит в геометрию
- [00:54] <ShTiRLiC> Рассчитывает дальность от камеры
- [00:55] <ShTiRLiC> Второй замеряет яркость кадра и делает выдержку
- [00:55] <ShTiRLiC> Это дает тебе автоматом HDR
- [00:55] <ShTiRLiC> Третий отсекает одноцветную и незаметную на фоне геометрию
- [00:55] <ShTiRLiC> Камуфляж, короче
- [00:55] <ShTiRLiC> Получается иллюзия больших пространств на высокой скорости
- [00:56] <ShTiRLiC> SpeedTree именно так и работает
- [00:56] <ShTiRLiC> Этого расширения нет в SPL
- [00:56] <ShTiRLiC> Нет его и OpenGL
- [00:56] <ShTiRLiC> Зато в DX оно встроено на уровне API
- [00:56] <ShTiRLiC> Понятно?
- [00:56] <Filippok> кста
- [00:57] <Filippok> есть его клон
- [00:57] <Filippok> работающий под оглом
- [00:57] <ShTiRLiC> Ооо
- [00:57] <ShTiRLiC> Я догадывался
- [00:57] * Reystlin has joined #gamedev_duel
- [00:57] <ShTiRLiC> Не могли так обойти
- [00:57] <Reystlin> опять:(
- [00:57] <ShTiRLiC> Слушай
- [00:57] <Reystlin> [00:55:43] <ShTiRLiC> Получается иллюзия больших пространств на высокой скорости
- [00:57] <Reystlin> почледнее что я слышал
- [00:57] <ShTiRLiC> Иди найди себе стабильную связь
- [00:57] <Reystlin> связь стабильная
- [00:57] <ShTiRLiC> [00:55:49] <ShTiRLiC> SpeedTree именно так и работает
- [00:57] <ShTiRLiC> [00:56:10] <ShTiRLiC> Этого расширения нет в SPL
- [00:57] <ShTiRLiC> [00:56:13] <ShTiRLiC> Нет его и OpenGL
- [00:57] <ShTiRLiC> [00:56:20] <ShTiRLiC> Зато в DX оно встроено на уровне API
- [00:57] <ShTiRLiC> [00:56:34] <ShTiRLiC> Понятно?
- [00:57] <ShTiRLiC> [00:57:00] <Filippok> кста
- [00:57] <ShTiRLiC> [00:57:04] <Filippok> есть его клон
- [00:57] <Reystlin> меня из аськи то не выкидывает
- [00:57] <ShTiRLiC> [00:57:11] <Filippok> работающий под оглом
- [00:58] <ShTiRLiC> [00:57:14] <ShTiRLiC> Ооо
- [00:58] <ShTiRLiC> [00:57:17] <ShTiRLiC> Я догадывался
- [00:58] <ShTiRLiC> [00:57:21] <ShTiRLiC> Не могли так обойти
- [00:58] <ShTiRLiC> Фаер стоит?
- [00:58] <ShTiRLiC> Тебя по пингу выкидывает
- [00:58] <Reystlin> да стоит
- [00:58] <Reystlin> вырубить?
- [00:58] <ShTiRLiC> Да
- [00:58] * _Reystlin- has quit IRC (Ping timeout)
- [00:58] <Reystlin> всё
- [00:58] <Filippok> MADLib
- [00:58] <Reystlin> так
- [00:58] <Filippok> вот эта либа
- [00:58] <Reystlin> я почти ничё не понял
- [00:58] <ShTiRLiC> Да, я слышал
- [00:58] <Reystlin> есть пример или тсатья по теме?
- [00:59] <Reystlin> *статья
- [00:59] <ShTiRLiC> Фгугл
- [00:59] <Filippok> завтра поищу
- [00:59] <ShTiRLiC> Там всё есть
- [00:59] <Filippok> или можешь сам
- [00:59] <Reystlin> понятно
- [00:59] <Reystlin> так
- [00:59] <ShTiRLiC> Короче про фрустум забудь
- [00:59] <ShTiRLiC> Это устаревший способ
- [00:59] <Reystlin> ещё я вот с чем столкнулся
- [00:59] <Reystlin> ок
- [00:59] <Reystlin> во время разработки движка
- [00:59] <Reystlin> начал менять курсор
- [00:59] <Reystlin> я работаю в 6 студии
- [00:59] <Reystlin> скоро за 2005 пойду:)
- [01:00] <Reystlin> так
- [01:00] <ShTiRLiC> 2003-ю бери
- [01:00] <ShTiRLiC> 2005 отстой
- [01:00] <Reystlin> там значит когда создаётся курсор
- [01:00] <Reystlin> к
- [01:00] <Reystlin> ок
- [01:00] <Reystlin> лана
- [01:00] <Reystlin> там он автоматом ставится как монохромный
- [01:00] <ShTiRLiC> Естественно
- [01:00] <Reystlin> в 1 курсоре в 6 студии 3 курсора хранится:)
- [01:00] <ShTiRLiC> Включается субпрограмма видеокарты
- [01:01] <ShTiRLiC> Для предохранения переполнения фреймбуффера
- [01:01] <Reystlin> вот я переключаюсь в 256 цветов
- [01:01] <Reystlin> там рисую курсор
- [01:01] <Reystlin> и начинаю его грузить
- [01:01] <Reystlin> передовая окну
- [01:01] <Reystlin> у меня почемуто только монохромный рисуетца
- [01:01] <Reystlin> как мне зделать чтобы рисовался тот котороый 256 цветов?
- [01:02] <ShTiRLiC> Я ж говорю почему
- [01:02] <NULL_PTR> К сожалению вынужден вас покинуть. Пойду спать
- [01:02] <NULL_PTR> бб
- [01:02] <ShTiRLiC> бб
- [01:02] <Reystlin> бб
- [01:02] <Filippok> бб
- [01:02] * NULL_PTR is now known as NULL_PTR[away]
- [01:02] <ShTiRLiC> Никак не сделать
- [01:02] <Reystlin> эт плохо
- [01:02] <ShTiRLiC> В данном случае работает защита видеобуффера
- [01:02] <Reystlin> притёдца текстурить
- [01:02] <ShTiRLiC> Переключись в 16 цветов
- [01:02] <Reystlin> а как?
- [01:02] <ShTiRLiC> Потом с помощью эмуляции 256 рисуй
- [01:02] <Reystlin> ээ
- [01:02] <Reystlin> а как?
- [01:02] <Reystlin> :)
- [01:02] <ShTiRLiC> При инициализации OGL
- [01:03] <ShTiRLiC> Заполни структуру цветности
- [01:03] <Reystlin> а каким образом переключиться?
- [01:03] <ShTiRLiC> Потом формализуй её параметры через функторы в бусте
- [01:03] <Reystlin> я с реусурсами работаю
- [01:03] <Filippok> glChangeMode()
- [01:03] <ShTiRLiC> И аттачь её на экран
- [01:03] <ShTiRLiC> Всё просто
- [01:03] <ShTiRLiC> В крайнем случае можно обойтись без буста
- [01:03] <Reystlin> понятно проще текстуру зделать
- [01:04] <ShTiRLiC> Можно поставить дополнение STL
- [01:05] <Reystlin> у кого есть пирмерчики с срц под ньютон?
- [01:05] <ShTiRLiC> STL++
- [01:05] <ShTiRLiC> Текстуры не всегда работают
- [01:05] <ShTiRLiC> Если происходит пробой стенсила - всё слетает и надо по новой инитить окно
- [01:05] <ShTiRLiC> При чем здесь ньютон?
- [01:05] <Reystlin> просто
- [01:05] <Reystlin> :)
- [01:05] <ShTiRLiC> Ньютон вообще для таких вещей непригоден
- [01:05] <Reystlin> ато чтотот я ненашол
- [01:05] <Reystlin> :(
- [01:06] <Reystlin> это физика
- [01:06] <Reystlin> :)
- [01:06] <ShTiRLiC> Он конфликтует с своппингом огл
- [01:06] <ShTiRLiC> Я знаю, что это физика
- [01:06] <ShTiRLiC> Я не дятел
- [01:06] <Filippok> много инфы по ньютону есть на сайте http://gamedeff.com
- [01:06] <Filippok> но он закрытый
- [01:06] <ShTiRLiC> В ньютоне твердотельное моделирование конфликтует со своппингом
- [01:07] <ShTiRLiC> Так что там курсор вообще отрисовать проблемно
- [01:07] <Filippok> рейст
- [01:07] <Filippok> попроси приглашение на этот сайт
- [01:07] <Filippok> http://gamedeff.com/invite.html
- [01:07] <Reystlin> зафиг?
- [01:07] <Filippok> и юзай его ресурсы
- [01:07] <ShTiRLiC> Да, тебе должны выдать
- [01:07] <ShTiRLiC> В самом деле
- [01:07] <Filippok> там всё о ньютоне
- [01:07] <ShTiRLiC> И не только
- [01:07] <ShTiRLiC> Там есть SPL
- [01:08] <ShTiRLiC> И STL++
- [01:08] <Filippok> ага
- [01:08] <Filippok> и доки по MADLib
- [01:08] <ShTiRLiC> Тамошние разработчики и сделали почти что
- [01:08] <ShTiRLiC> И как сделать отсечение геометрии не по фрустуму
- [01:08] <Filippok> этот сайт круче чем gamedev.ru
- [01:08] <ShTiRLiC> Под DX
- [01:08] <ShTiRLiC> Бп, бп круче
- [01:08] <ShTiRLiC> Потому и закрытый
- [01:08] <Filippok> поэтому он закрытый
- [01:08] <Filippok> ;)
- [01:09] <Reystlin> :)
- [01:09] <Reystlin> а кагда атвет придёт?
- [01:09] <Reystlin> и куда?
- [01:09] <ShTiRLiC> Иначе загадили бы его быстро
- [01:09] <Filippok> ответ на мыло
- [01:09] <ShTiRLiC> Пиши там
- [01:09] <Filippok> кста
- [01:10] <ShTiRLiC> Там всё объяснено
- [01:10] <Filippok> там нужно написать кто тебя рекомендует
- [01:10] <Filippok> напиши, что Volodya
- [01:10] <Filippok> а
- [01:10] <Filippok> и ещё Lis666
- [01:10] <Filippok> они самые уважаемые на этом сайте
- [01:10] * _Reystlin- has joined #gamedev_duel
- [01:11] <ShTiRLiC> OMG
- [01:11] <_Reystlin-> всётаки это не фаервол
- [01:11] <_Reystlin-> :(
- [01:11] <Filippok> чо последнее услышал?
- [01:11] <_Reystlin-> у мя такое первый раз
- [01:11] <_Reystlin-> [01:09:26] <ShTiRLiC> Пиши там
- [01:11] <ShTiRLiC> Переконнектись
- [01:11] <Filippok> [01:09] <Filippok> кста
- [01:11] <Filippok> [01:10] <ShTiRLiC> Там всё объяснено
- [01:11] <Filippok> [01:10] <Filippok> там нужно написать кто тебя рекомендует
- [01:11] <Filippok> [01:10] <Filippok> напиши, что Volodya
- [01:11] <Filippok> [01:10] <Filippok> а
- [01:11] <Filippok> [01:10] <Filippok> и ещё Lis666
- [01:11] <Filippok> [01:10] <Filippok> они самые уважаемые на этом сайте
- [01:12] <_Reystlin-> бля
- [01:12] * Reystlin has quit IRC (Ping timeout)
- [01:12] <_Reystlin-> :)
- [01:12] <_Reystlin-> я уже тебя туда вписал
- [01:12] <_Reystlin-> :)
- [01:12] * _Reystlin- was kicked by ShTiRLiC (Мат)
- [01:12] * _Reystlin- has joined #gamedev_duel
- [01:12] <_Reystlin-> сори
- [01:12] <_Reystlin-> :)
- [01:12] <Filippok> ты мудак
- [01:12] <ShTiRLiC> Следи за собой
- [01:12] <Filippok> тебя не пустят
- [01:12] <_Reystlin-> это плохо
- [01:12] <Filippok> напиши ещё раз
- [01:12] <_Reystlin-> щя
- [01:13] <_Reystlin-> всё
- [01:14] <Filippok> вот
- [01:14] <ShTiRLiC> Теперь жди резюме
- [01:14] <Filippok> на днях жди ответ
- [01:14] <_Reystlin-> :(
- [01:14] <_Reystlin-> лана
- [01:14] <_Reystlin-> буду ждать
- [01:14] <_Reystlin-> а кстати
- [01:14] <_Reystlin-> про ИИ
- [01:14] <_Reystlin-> Filippok ты мне обещял расказать
- [01:14] <_Reystlin-> :)
- [01:15] <Filippok> а да
- [01:15] <_Reystlin-> ага
- [01:15] <Filippok> точно
- [01:15] <Filippok> щас я продумаю план лекции
- [01:15] <_Reystlin-> ок
- [01:15] <_Reystlin-> помниш задачу?
- [01:15] <Filippok> нет
- [01:15] <_Reystlin-> есть город
- [01:15] <_Reystlin-> который пустой
- [01:15] <_Reystlin-> его нада заселить ботами
- [01:16] <_Reystlin-> которые бы двигались безпорядочно
- [01:16] <_Reystlin-> и на препятствия не натыкались
- [01:18] <Filippok> лан
- [01:18] <Filippok> поехали
- [01:19] * _Reystlin- has quit IRC (Ping timeout)
- [01:19] * _Reystlin- has joined #gamedev_duel
- [01:19] <Filippok> [01:18] <Filippok> лан
- [01:19] <Filippok> [01:18] <Filippok> поехали
- [01:19] <_Reystlin-> ага
- [01:19] <_Reystlin-> поехали
- [01:19] <Filippok> кароче секи
- [01:19] <Filippok> есть такая штука как конечные автоматы
- [01:20] <Filippok> далее КА
- [01:20] <ShTiRLiC> Они отличаются от простых автоматов тем, что у них есть конец
- [01:20] <Filippok> она очень похожа на наш пример с пулями
- [01:20] <Filippok> да
- [01:20] <Filippok> поэтому и строицца на его основе
- [01:20] * innochenti has joined #gamedev_duel
- [01:20] <Filippok> вобщем смотри
- [01:21] <ShTiRLiC> В начало автомата надо класть пулю
- [01:21] <Filippok> есть набоп классов для работы с ИИ
- [01:21] <Filippok> да
- [01:21] <ShTiRLiC> А с конца полуишь результат
- [01:21] <Filippok> смотри
- [01:21] <ShTiRLiC> Это в общем случае так
- [01:21] <Filippok> либа называецца CRAZYAI
- [01:21] <_Reystlin-> мне не надо чтобы боты воевали:)
- [01:21] <Filippok> тихо
- [01:21] <ShTiRLiC> Боты не будут воевать
- [01:21] <Filippok> в ней есть класс KA
- [01:22] <Filippok> сначала ты аттачиш к небу своих ботов
- [01:22] <Filippok> *нему
- [01:22] <ShTiRLiC> Если ты не будешь вызывать CRAZYAI::MakeWar()
- [01:22] <Filippok> KA::AttachBot()
- [01:22] <Filippok> погоди
- [01:22] <Filippok> это потом
- [01:23] <Filippok> потом ты определяеш набор действий для ботов
- [01:23] <Filippok> KA::AddBotAction()
- [01:23] * [311][Q3] has joined #gamedev_duel
- [01:23] <_Reystlin-> ну
- [01:23] <Filippok> параметры функции - это набор действий
- [01:23] <_Reystlin-> проатачил
- [01:23] * innochenti has left #gamedev_duel
- [01:24] <[311][Q3]> Рейстлен, превед
- [01:24] <_Reystlin-> ку
- [01:24] <Filippok> т.е. если тебе надо, чтобы боты бегали и стреляли пишешь
- [01:24] <[311][Q3]> что у теб опять не выходед?
- [01:25] <Filippok> KA::AddBotAction(BOT_RUN|BOT_SHOOT);
- [01:25] <_Reystlin-> мне надо только чтобы они бегали
- [01:25] <_Reystlin-> но не стреляли
- [01:25] <Filippok> ну тогда просто
- [01:25] <Filippok> KA::AddBotAction(BOT_RUN);
- [01:25] <_Reystlin-> :)
- [01:25] <Filippok> потом как говорил штирлиц вызываешь CRAZYAI::MakeWar()
- [01:25] <Filippok> и о чудо!
- [01:25] <Filippok> они начинают бегать!
- [01:26] <Filippok> можно ещё и про нейронный сети рассказать
- [01:26] <Filippok> но по этому штирлиц спец
- [01:26] <_Reystlin-> давай
- [01:26] <_Reystlin-> понятно
- [01:27] <Filippok> щас
- [01:27] <Filippok> он придёт
- [01:28] <ShTiRLiC> Нене
- [01:28] <ShTiRLiC> Ты накосячил
- [01:28] * Filippok slaps ShTiRLiC around a bit with a large trout
- [01:28] <ShTiRLiC> MakeWar запускает боевой режим
- [01:28] <ShTiRLiC> А надо MakeWalk
- [01:28] <[311][Q3]> Штирледс спец по нейросетям?
- [01:28] <[311][Q3]> о_О
- [01:28] <ShTiRLiC> Да
- [01:28] <ShTiRLiC> Я немного участвовал в создании CRAZYAI
- [01:28] <[311][Q3]> крейзи
- [01:28] <ShTiRLiC> Чисто в разработке ядра
- [01:28] <[311][Q3]> хех
- [01:28] <ShTiRLiC> Эй
- [01:28] <ShTiRLiC> Что за фамильярности?
- [01:28] * innochenti has joined #gamedev_duel
- [01:29] <ShTiRLiC> Так
- [01:29] <ShTiRLiC> Насчет нейронных сетей
- [01:29] * Reystlin has joined #gamedev_duel
- [01:29] <ShTiRLiC> Основой нейронной сети является - что?
- [01:29] <Reystlin> опять:(
- [01:29] <Filippok> сеть!
- [01:29] * _Reystlin- has quit IRC (Ping timeout)
- [01:29] <ShTiRLiC> Нед
- [01:29] <Reystlin> ага
- [01:29] <ShTiRLiC> Нейрон!
- [01:29] <Reystlin> локалка
- [01:29] <Reystlin> :)
- [01:29] <Reystlin> [01:26:23] <Filippok> но по этому штирлиц спец
- [01:29] <Reystlin> вот последнее
- [01:29] <Filippok> [01:28] <ShTiRLiC> MakeWar запускает боевой режим
- [01:29] <Filippok> [01:28] <ShTiRLiC> А надо MakeWalk
- [01:30] <Filippok> [01:28] <[311][Q3]> Штирледс спец по нейросетям?
- [01:30] <Filippok> [01:28] <ShTiRLiC> Я немного участвовал в создании CRAZYAI
- [01:30] <[311][Q3]> да
- [01:30] <[311][Q3]> он шаред
- [01:30] <Filippok> вот
- [01:30] <[311][Q3]> я ламмир
- [01:30] <Filippok> весь лог
- [01:30] <Reystlin> понятно
- [01:30] <[311][Q3]> но объясню, че к чему
- [01:30] <Filippok> штирлиц
- [01:30] <ShTiRLiC> Так
- [01:30] <ShTiRLiC> вот
- [01:30] <Filippok> продолжай
- [01:30] <[311][Q3]> кароче
- [01:30] <Reystlin> [311][Q3] флоид ты?
- [01:30] <ShTiRLiC> Нейрон!
- [01:30] <ShTiRLiC> Осонова сети
- [01:30] <ShTiRLiC> У нейрона есть начало и конец
- [01:30] <[311][Q3]> сети - они состоят из вертексов
- [01:30] <[311][Q3]> вот
- [01:30] <Filippok> да
- [01:31] <Filippok> ещё вертексы иногда называюцца поинтами
- [01:31] <ShTiRLiC> Отличаются тем, что конец более чувствительный
- [01:31] <ShTiRLiC> На начало подаются координаты бота
- [01:31] <[311][Q3]> и они смотрят, какие вертексы попадают ва их поле зрения и делают deffered shading
- [01:31] <ShTiRLiC> И что он хочет делать
- [01:31] <ShTiRLiC> Или траками
- [01:31] <[311][Q3]> да, поинтами
- [01:31] <ShTiRLiC> В общем-то да
- [01:31] <[311][Q3]> и еще фрейд про них писал
- [01:31] <ShTiRLiC> Суть вычисления заключается в Deferred Shading
- [01:32] <ShTiRLiC> Тут даже дуэль была
- [01:32] <ShTiRLiC> Кто сделает круче ИИ
- [01:32] <Filippok> ага
- [01:32] <Filippok> она и щас идёт
- [01:32] <ShTiRLiC> Оппоненты оказались равны
- [01:32] <_Winnie> TutorSetMsg(L"Перемешай, если застряло"); break;
- [01:32] <_Winnie> case first_layer + halfjokers_layer + flowers + seasons + jokers + superjockers + half_and_half + shuffle_dragons:
- [01:32] <_Winnie> TutorSetMsg(L"Что бы закончить уровень,\\стукни золотые яйца Ктулху"); break;
- [01:32] * _Reystlin- has joined #gamedev_duel
- [01:32] <[311][Q3]> у них есть дафолтный метод ГОУ_МОЧИТЬ_ВРАГОВ
- [01:32] <[311][Q3]> у них есть дефолтный метод ГОУ_МОЧИТЬ_ВРАГОВ
- [01:32] <Filippok> да
- [01:32] <_Reystlin-> так
- [01:32] <_Reystlin-> кароче
- [01:32] <[311][Q3]> и они мочат врагов
- [01:32] <_Reystlin-> мя опять выкинуло
- [01:33] <Filippok> а для эротических игр есть метод GO_FUCK
- [01:33] <_Reystlin-> я завтро ещё зайду
- [01:33] <ShTiRLiC> Давай
- [01:33] <[311][Q3]> задавай вопросы
- [01:33] <_Reystlin-> вечером
- [01:33] <ShTiRLiC> С сетью разберись
- [01:33] <Filippok> давай
- [01:33] <_Reystlin-> бб
- [01:33] <Filippok> всегда рады помочь
- [01:33] <Filippok> бб
- [01:33] <ShTiRLiC> [01:32:27] <_Winnie> TutorSetMsg(L"Перемешай, если застряло"); break;
- [01:33] <ShTiRLiC> [01:32:27] <_Winnie> case first_layer + halfjokers_layer + flowers + seasons + jokers + superjockers + half_and_half + shuffle_dragons:
- [01:33] <ShTiRLiC> [01:32:27] <_Winnie> TutorSetMsg(L"Что бы закончить уровень,\\стукни золотые яйца Ктулху"); break;
- [01:33] <ShTiRLiC> Вот истина
- [01:33] <_Reystlin-> мне щяс нада с текстурами разобарсться:)
- [01:33] * Reystlin has quit IRC (Ping timeout)
- [01:33] * _Reystlin- has quit IRC (Quit: ГОРОД forever!!!)
Version support is not available for this paste.
Pasted by Filippok as text at 2006-08-23 01:36:44 MSK and set expiration to never.
Paste will expire never.
Editing of pre-version support pastes is disabled.