Результаты поиска
| |
Archido | Дата: Четверг, 12 Июля 2012, 14:18 | Сообщение # 641 | Тема: Структура движка. Его архитектура |
Сэнсэй
Сейчас нет на сайте
| Это фактически полноценная архитектура игрового движка, не только графического. Картинка, конечно, показывает как оно все устроено, а не рассказывает и объясняет. Цели у нее не учебные. Нет такого в природе на русском о архитектуре движков, где все расжевывается.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Четверг, 12 Июля 2012, 14:18 |
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 14:15 | Сообщение # 642 | Тема: Как написать свой движок? |
Сэнсэй
Сейчас нет на сайте
| Да, до реального "движка" пока далековато... Quote (Saitei) Не переубедить. Тяжелый случай. Кто сказал что я игр не делал? Делал GameMaker'ы не в счет. На движках делал и код писал?
Мою сылку видел? Для начинающего хорошие уроки по OpenGL, хоть им и сто лет.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Четверг, 12 Июля 2012, 14:19 |
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 14:08 | Сообщение # 643 | Тема: Структура движка. Его архитектура |
Сэнсэй
Сейчас нет на сайте
| Вот это как раз и есть полноценный игровой движок, а не набор вспомогательных функций. Тебе для начала просто графический осилить . Quote (Saitei) Статей точно нет? Простых и на русском - я не видел
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 14:01 | Сообщение # 644 | Тема: Структура движка. Его архитектура |
Сэнсэй
Сейчас нет на сайте
| Гм, а у меня вроде все ок. Тогда вот сылка на страничку с картинкой
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 13:50 | Сообщение # 645 | Тема: Вопрос-Ответ (C++) |
Сэнсэй
Сейчас нет на сайте
| goldsphere Создай Win32 Project, выпили там все лишнее и оставь только ф-цию WinMain (...) и там пиши код, касаемый SDL. Должно быть все ок.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 13:42 | Сообщение # 646 | Тема: Структура движка. Его архитектура |
Сэнсэй
Сейчас нет на сайте
| На русском инфы нормальной нет, либо читать англоязычную (но без должных знаний вьехать будет ой как непросто), либо изучать чужое добро По теме покажу картинку:
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Четверг, 12 Июля 2012, 13:43 |
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 13:37 | Сообщение # 647 | Тема: Как написать свой движок? |
Сэнсэй
Сейчас нет на сайте
| Quote (Saitei) Почему? Представляю. Просто неуверен правильное ли это "понимание" Тогда я весь во внимании . Давай, жги свою версию Quote (Saitei) Сейчас у меня движок, который инициализирует окошко (код с ошибкой, знаю)) без ошибки лень искать): А это сильно
Quote (Saitei) Ну дык учиться буду. Книжечку-то дайте с примерами Эх, что же так зацепился за этот "движок". Если тебя переубедить не реально, что надо с игры начинать, то по крайней мере на близжайшее время ставь цель изучить просто (без всяких лишних сложностей) OpenGL (и знание языка заодно до ума довести нужно) и не забивай себе мозг этим "движком", иначе будешь грабли собирать пачками, а прогресс будет минимальным. Есть такие неплохие уроки от NeHe, им сто лет в обед и о них многие знают, но азы там очень неплохо расжевываются. Для начала - самое оно.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 06:44 | Сообщение # 648 | Тема: Steam Greenlight |
Сэнсэй
Сейчас нет на сайте
| Отличная новость для Indie разработчиков, так попасть туда будет весьма вероятно
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 12 Июля 2012, 06:41 | Сообщение # 649 | Тема: Как написать свой движок? |
Сэнсэй
Сейчас нет на сайте
| Вроде уже кучу раз писали же об этом. Пишется толковая более ли менее, доведенная до ума, игра на любом открытом движке (HGE, например. Не важно это) и большая часть вопросов отпадает сама собой, все остальное - от лукавого. Ты хочешь сделать то, незная что оно вообще из себя представляет... для этого надо попользоваться сторонним инструментом и смотреть как это у других сделано. Заодно, в процессе написания игры и язык подучишь. Т.к. с поверхностными знаниями С++ заниматься этим - только на грабли наступать.
Мм и да, как выше писали - надо еще OpenGL'ом научиться пользоваться, желательно после того о чем я писал выше. Т.е. ты просто учишься рисовать квадрат, рисовать его с текстурой, вращать его и перемещать, загружать текстуры, разбираться с форматом и устройством вершин, текстур и так далее. О движке речи вообще пока не идет .
Да и еще существует такая, мм, штука: Нужно не просто писать движок, а писать игру вместе с ним, иначе существует вероятность, что движок будет писаться вечность . Это статистика.
P.S. Я все это не с потолка пишу, сам в свое время проходил подобный путь: игра на чужом -> OpenGL -> своя игра + свой движок. В таком порядке действия в последующих этапах вполне очевидны и не возникает пачка глупых вопросов. Ну а так удачи
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 10 Июля 2012, 17:19 | Сообщение # 650 | Тема: Сообщество программистов |
Сэнсэй
Сейчас нет на сайте
| Quote (Archido) Меня возьмете?
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 10 Июля 2012, 17:18 | Сообщение # 651 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Мм, ну ясно да. Можно еще пробовать жертвовать точностью и собирать несколько отрезков в один, уменьшая в итоге их кол - во, но вообще толку не очень много будет. Поэтому можешь попробовать делать честную попиксельную проверку и когда будет работать, то делать оптимизацию через Qtree например. Т.е. ты сейчас проверяешь сначала прямоугольники на пересечение, а потом строишь отрезки. А можно после проверки прямяугольников, проверять их же, но уже внутри первоначальных. Советую про Quadtree погуглить. Если, что могу даже завтра картинку примерную набросать .
P.S. А вообще для файтингов очень неплохо использовать скелетную анимацию , будет и с анимацией проще и с физикой.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 10 Июля 2012, 13:49 | Сообщение # 652 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Quote (Morfay) Строить и хранить контуры в начале? Ну можно наверное, но может быть жирновато по времени. Дело в том, что еще при описании идеи я понимал - многоугольник, полностью описывающий фигуру, - это очень долго (По первым тестам, полностью описанная сложная фигура с шириной и высотой в 246 пикселей, с точностью 1, многоугольник строиться около секунды). Если представить, что в спрайте около 10-20 сильно различающихся фигур (это как минимум), то уже имеем 20 секунд. Хм, довольно таки долго и правда. Ну, можно при создании спрайта это делать оффлайн и просто загружать изображение + заранее построенные контуры, считай свой формат сочинять , но по идее нафиг оно - лучше сразу делать попиксельное, без всяких отрезков. И использовать оптимизацию, разбивая на ячейки, о чем я выше писал.
Quote (Morfay) Вот как показать тебе ломаную (кроме как скрином кадра в спрайте и координат точек), я не в курсе. Сам проверял, отрыв в пэинте спрайт и проведя линии по точкам (точность 10 брал - 13 точек просмотрел быстро). Можно и так. Просто для отладки удобно было бы выводить эти точки + построенные по ним отрезки, чтобы видить как оно построилось. Прямо во время отрисовки спрайта. Есть мысли, что этих отрезков слишком много получается. Если я, конечно, правильно понял алгоритм. Для этого как раз неплохо скрин посмотреть.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Вторник, 10 Июля 2012, 13:49 |
|
| |
Archido | Дата: Вторник, 10 Июля 2012, 12:59 | Сообщение # 653 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Ммм, ща еще раз все перечитал на свежую голову - т.е. ты получается строишь контур из отрезков на основе пикселей и проверяешь пересечения между, собсна, отрезками. Так? Если так, то можно строить контур заранее при загрузке изображения, например. Для анимированных спрайтов может это и жирновато, но я не думаю, что таких будет очень много. А вообще, хотелось бы увидеть как выглядит построенный многоугольник. Наверняка для отладки на это можно визуально посмотреть.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Вторник, 10 Июля 2012, 13:11 |
|
| |
Archido | Дата: Вторник, 10 Июля 2012, 10:19 | Сообщение # 654 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Morfay Пиши конечно, посмотрим, что выйдет и идей еще подкинем
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 09 Июля 2012, 18:05 | Сообщение # 655 | Тема: Сообщество программистов |
Сэнсэй
Сейчас нет на сайте
| Меня возьмете?
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 09 Июля 2012, 18:03 | Сообщение # 656 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Morfay Не, ну раз все и так неплохо работает, то и идеи уже подкидывать смысла не имеет . Скажу только, что попиксельный collision все равно будет относительо медлителен при наличии большого кол - ва объектов, и часто он бывает избыточен. Простые объекты легко описываются прямоугольниками, а сложные можно описать группой прямоугольников - будет такой составной физический объект. При реальном применении такой точности вполне достаточно, а работать оно будет довольно шустро.
Ну, а если все таки хочется большой точности, то можно кобминировать эти способы. Идея то вообщем-то проста: изображения разбивается на N-ное (небольшое) количество ячеек(клеток) и пересечения сначала проверяются между ними (т.е. ячейки одного изображения с ячейками другого). После того как определили взаимно пересекающиеся ячейки, то в этих ячейках уже ведется попиксельная проверка. Таким образом часть лишних пикселей можно отсеять и выиграть в быстродействии. + далее можно продолжать совершенствовать сие дело и вместо простой сетки использовать QuadTree , ну полет мыслей не ограничен
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 09 Июля 2012, 16:54 | Сообщение # 657 | Тема: SDL_GetRGB - неверно определяет цвет? |
Сэнсэй
Сейчас нет на сайте
| Нохчи в общем-то на примере показал, что там с арифметикой указателя у тебя беда. Когда ты делаешь *((Uint32*)img->pixels + 1), то оно как бы неявно превращается в *((Uint32*)img->pixels + 1 * sizeof(Uint32)). Т.е. грубо говоря смещение в байтах зависит от типа указателя (размера его типа данных), к которому ты в итоге приводишь. А когда нагромаждается куча приведений типов, то они выполняются в порядке справа налево.
Quote (Morfay) Дело в том, что я самоучка Ну, в программировании по-другому и не бывает
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Понедельник, 09 Июля 2012, 16:56 |
|
| |
Archido | Дата: Вторник, 03 Июля 2012, 11:50 | Сообщение # 658 | Тема: эмуляция клавиши через DirectInput в C# Visual Studio |
Сэнсэй
Сейчас нет на сайте
| Плюсую за keybd_event. MSDN
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Вторник, 03 Июля 2012, 11:51 |
|
| |
Archido | Дата: Суббота, 30 Июня 2012, 07:40 | Сообщение # 659 | Тема: Решил углубленно изучать математику |
Сэнсэй
Сейчас нет на сайте
| Saitei Скажу, что ЕГЭ (и подготовка к нему) и математика, применяемая при разработке ПО - вещи абсолютно разные. Из школьного курса, единственное, что пригодится в работе - это геометрия. Остальная необходимая математика - это все вышка (разбитая на подклассы), там все в целом отличается от школьной алгебры, но последняя является необходимой базой и в ней нужно неплохо ориентироваться, чтобы потом не возникло больших трудностей с познанием "илиты" (вышки) Подготовка к ЕГЭ подразумевает как ориентирование в алгебре, так и упорно - бесконечное решение всевозможных "задач" и примеров. Чем больше нарешал, тем больше шанс хватануть балл повыше и все собственно. Все эти примеро - задачи, как всегда, оторованы от реальности и в реале пользы от них практически не будет (т.е. решать умеешь - хорошо и достаточно, для инста пойдет. А от того, что ты их решаешь сотнями - особо ничего не изменится, только на ЕГЭ и польза).
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Суббота, 30 Июня 2012, 06:33 | Сообщение # 660 | Тема: А вы носите очки с диоптриями. |
Сэнсэй
Сейчас нет на сайте
| Quote (arrow25) моральную, и физическую устойчивость к любым трудностям тренировать. Физическую можно тренировать где и как угодно, причем к крайностям прибегать вроде "любых трудностей" едва ли нужно каждому. А моральной - жизнь научит, рано или поздно... спешить незачем.
Quote (arrow25) это как? откуда мнение если не служил? "Сколько знакомых после института ни служило" . Так лучше? Народ выучился, отслужил, рассказал мне, что время впустую убил, а я на ус намотал. Все просто.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
|