prog:
Вот меня больше всего пугает конкретная реализация различных скиллов. Вернее сказать их разнообразие, например, геймдизайнер напридумывал кучу способностей герою, а как это реализовать ? (проект разрабатывается от желаемого результата, например ).
В варкрафте3 можно ведь свои бафы\скиллы\эффекты делать? как там это примерно реализовано? а то я в редакторе варика вообще дуб (
[Слоупок мод] Можешь примеры этих всяких баффов показать? Или статью знаешь какую? Интересовался как-то этой темой для другого "проекта", но ничего лучше этого (см.рис. часть с эффектами) не придумал :(
Интересно вообще создание скиллов абсолютно разных.
Вот как раз об этом. Коллизия подразумевается "прямая" физическая или же триггеры тоже работают ? Я это к тому, что объект "бочка" может быть заминирована и взрываться при попадании объекта в некий радиус\объём.
И попадание пули в бочку похоже решается каким-нибудь _gameEngine->RayTrace ? но для трассировки нужны ведь точка (пушка машины) и направление (камера? направление машины?).
Вот помню как-то спрашивал на gamedev.ru про компонентную систему объектов ( хотя вопрос был в другом, но немного и этот задели ). И был у меня такой пример - планируется игры типа Twisted Metal какой-нибудь (гонки на выживание). Как будет выглядеть класс-объявление машины и взрывной бочки и их "взаимоотношение"(столкновение, например ).
Имхо, дробление игрового объекта - спорная вещь, ведь можно так разделить, что аж жуть и вместо тройки классов будет 100500. Возможно сможете меня переубедить ? )
Kozinaka:
Ооо, понятно ) Я бы сделал почти аналогично, но вот вместо switch обычно наследование использовал и по этой причине всё рисование было реализовано в конкретных классах игровых объектов.
А по слоям раскидывает функция, например, DrawWorm или слой задаётся раньше ?
Kozinaka:
Хмм .. ну со слоями вроде понятно - без них в 2Д сложновато. Но есть вопрос - по сути рисование объектов как-то вот так делается ?
void SuperGame_MainLoop_Draw( )
{
// ...
// собственно pDrawer - это тот, кто всех рисует
// DrawWorm - это рисование "червя"
// pWorm - объект самого "червя"
pDrawer->DrawWorm( pWorm );
// ...
}
... жирный клас отрисовщика, который их сортирует, группирует ...
Ну и RenderDevice можно аналогичной штуке научить ) Хотел вот добавить методы BeginScene \ EndScene (как в DirectX) там бы сбрасывались\ выводились списки на отрисовку.
А можешь небольшой примерчик кода как эта штука работает? С жирным отрисовщиком и конкретным объектом.
лучше завести что-то типа IDrawableObject с методом Draw в который будет передаваться твой IRenderDevice или что-то типа того, с помощью которого можно будет рисовать примитивы на экране
Как раз думал об этом, а то у меня раньше было, что GameObject имел метод Draw куда и передавался этот RenderDevice, вообще там была очень лихая цепочка передачи этого "девайса" - сначала GameState, потом CWorld, затем GameObject ( и наследники), но думаю во всех самописных движках что-то вроде этого ))
Слишком мощно звучит для моих классов :) Но вообще там функции уровня DrawQuad, DrawMesh, а для конкретных игровых объектов можно вообще ещё один класс написать (или реализовать в этих самых объектах), типа DrawSupergun или DrawBee.
Дальше? Но ведь я даже не начинал ) Хотел GameMaker использовать т.к. быстрее получилось бы (наверно). Сейчас уже начал потихоньку делать прототип на юньке.
Кстати, вот подумал о сюжете и персонажах и пришёл к очень интересной на мой взгляд штуке - продолжить историю другой игры, но долго сомневался надо ли сделать про кого-то нового или оставить старого перса. Изначально бродилка и задумывалась как продолжение. Короче вот небольшая игруля сделанная на конкурс Gaminator15 (но выкладываю пост-конкурсную версию)- ссылка на архив , кто пройдёт от начала и до конца - тому "респект и уващужа вообще!" :)
Editor:
Ну всё же есть наверно какие-то специфики.
Aws:
Если имеется ввиду их PDF'ки, то это немного не то, там конечно есть полезная информация.
Видел когда-то руководство на просторах стима (англ. и русский перевод), вот что-то типа поэтапного руководства - было бы круто, да ещё и на каких-то реальных предметах.
Дико извиняюсь за "археологию", но думаю здесь было бы уместно спросить о создании предметов (которые в мастерскую идут) для DotA2. Кто знает хорошие уроки \ сообщества по данном дулу ? Кстати, думаю сюда они бы отлично вписались :)
Kozinaka:
Не спорю, что придётся дольше писать и проблемы могут возникнуть и там и там, но я ещё думаю над этим )
Первые альфы конечно будут реализованы "в лоб", без всяких наворотов.
H:
Многие так яро хотят посадить велосипедиста на иглу движок, но если так уж хочется то конечно я могу написать на каком-нибудь GameMaker или Unity3D тест игровой механики, ладно если механика игры примитивна (как у меня).
Вообще не понимаю зачем писать змейку на Unreal Engine 4 :)
в Unreal Engine, Hammer Editor - по сути весь уровень состоит из "коробок"
нет. Уровень состоит из простейшей геометрии, причем это только стены (как у тебя ландшафт - или мешь земли). Но при этом на нем все остальное в виде отдельных моделей. (персонажи, декорации, деревья и т.п.). И сама основа геометрии тоже хранится отдельно (если ты конечно специально её не сгруппируешь).
Мм.. ну это я и имел ввиду, наверно просто непонятно объяснил ) Ясен пень, что например, модельку игрока хранить в уровне - плохое решение, как и деревья. Деревья простые объекты с моделькой, которые дополняют базовую геометрию.
Цельная геометрия имеет неприятный побочный эффект в виде полной загрузки уровня в память, даже если ты не видишь большей его части.
Всё зависит от самого уровня и его сложности, конечно есть всякие технологии вроде стриминга, но мне пока хватит и обычной загрузки, ну или в крайнем случаи фоновую загрузку можно реализовать.
Дык никто же не собирает уровень как одну модель лол. Уровень обычно собирается из большой кучи мелких моделей
Окей, одна большая модель -> несколько небольших, их получение я описал как "разбиение пространства". Можно посмотреть как строятся (прототипируются?) в Unreal Engine, Hammer Editor - по сути весь уровень состоит из "коробок", причём статичных, поэтому даже нет смысла разделять их как мелкие объекты. Короче, надеюсь я понятно изложил мысль, что хранить статическую геометрию уровня лучше как одну большую модель :)
А по спрайтам - не знаю даже, не думал об этом.
Тут конечно разгорелась дискуссия "Готовый движок против велосипеда" :)
Я не буду яро отрицать, что иногда готовые движки - лучшее решение, например, когда проект ограничен по времени и выбранный двиг удовлетворят требованиям. А когда хочется посидеть у камина завернувшись в одеяло изучать "кишки", разобраться в устройстве работы в принципе ну или когда не ограничен в строках и можешь вообще переписать весь код, скажем, под мобилы. Вы наверно заметили, что к разработке игры я подошёл по большей части со стороны контента, смекаете ? :) Этот контент можно использовать хоть в своём велосипеде, хоть в готовом супер-движке со стоимостью в 99999$ (разумеется, цена - совсем другой вопрос). Что я хочу сказать. Делайте игры\моды и всё ! :D
Последняя анимация "Смерти" странная - мало движений тела осы.
И из-за этого она как киборг какой-то двигается, не похоже на живую.
Да, как только я не пытался сделать смерть живее (странновато звучит :) ) - ничего не выходило, скорее всего у меня просто руки из одного места или нужно больше практики. H:
Круто =)
Ждем процесс создания карт или еще чего нибудь..
До полноценного создания карт ещё далеко, разве что можно прототипы в блендере замоделить ) В следующий раз скорее всего речь пойдёт о основном стиле локаций, атмосфере, в общем посмотрим что будет :)
Doc:
Просто не привык к готовым библиотекам ) Это конечно хорошо, когда есть какие-то основа, а не голый ЯП. Кто знает, возможно, возьму какое-нибудь готовое решение.
Я его не читал - не заметил ссылки. :) Теперь прочёл. Полегчало? Нет.
Это платформер? Вообще игра 2Д или 3Д? Кто главный герой? Куда он прыгает? Зачем? ...
Вот отличные вопросы! ) Действительно, для народа не понятно, что вообще из себя будет представлять игра. Наверно лучше бы не в комментарии это писать, а как отдельный ресурс-новость, ну или на крайняк в диз-доке, но напишу здесь:
Это не платформер (прыжки не являются ключевым элементом игрового процесса), игра планируется 3Д. Главный герой в данный момент визульно слишком похож на Линка ( The Legend of Zelda ), что на самом деле меня огорчает, как бы не восприняли игру как клон. Уровней имеется два типа: "свободная зона", где врагов мало, а сама зона посещается по сюжету - это первый тип, а второй - "подземелье", которое генерирует программа.
Цель игрока - пройти сюжет (вот это неожиданность! :) ) по сюжету пока ничего не говорю т.к. во-первых это был бы спойлер, а во-вторых его на данный момент так мало, что говорить о нём практически нечего. Игровой процесс сводится к беганью по локациям, убиванию врагов и подбор лута, последний очень необходим т.к. чтобы пройти какое-то место нужно сразится с мощными врагами.
Скриншоты в конце по большей части ориентир графического стиля, а первый показывает примерный вид камеры (как бы сверху, но с небольшим наклоном).
Надеюсь немного прояснил ситуацию )
» Бродилка / [Лог #7] Класс рисовальщика.
Вот меня больше всего пугает конкретная реализация различных скиллов. Вернее сказать их разнообразие, например, геймдизайнер напридумывал кучу способностей герою, а как это реализовать ? (проект разрабатывается от желаемого результата, например ).
В варкрафте3 можно ведь свои бафы\скиллы\эффекты делать? как там это примерно реализовано? а то я в редакторе варика вообще дуб (
» Бродилка / [Лог #7] Класс рисовальщика.
» Бродилка / [Лог #7] Класс рисовальщика.
И попадание пули в бочку похоже решается каким-нибудь _gameEngine->RayTrace ? но для трассировки нужны ведь точка (пушка машины) и направление (камера? направление машины?).
» Бродилка / [Лог #7] Класс рисовальщика.
Имхо, дробление игрового объекта - спорная вещь, ведь можно так разделить, что аж жуть и вместо тройки классов будет 100500. Возможно сможете меня переубедить ? )
» Бродилка / [Лог #7] Класс рисовальщика.
Каюсь! ) Вообще хотел когда-то сделать как советуют - разбить всё т.е. всякие там IRenderable, IMovable и т.д. но как-то не пошло :(
» Бродилка / [Лог #7] Класс рисовальщика.
Ооо, понятно ) Я бы сделал почти аналогично, но вот вместо switch обычно наследование использовал и по этой причине всё рисование было реализовано в конкретных классах игровых объектов.
А по слоям раскидывает функция, например, DrawWorm или слой задаётся раньше ?
» Бродилка / [Лог #7] Класс рисовальщика.
Хмм .. ну со слоями вроде понятно - без них в 2Д сложновато. Но есть вопрос - по сути рисование объектов как-то вот так делается ?
» Бродилка / [Лог #7] Класс рисовальщика.
» Бродилка / [Лог #7] Класс рисовальщика.
» Бродилка / [Лог #7] Класс рисовальщика.
» Dota 2 / Dota 2 Workshop Tools
Ну всё же есть наверно какие-то специфики.
Если имеется ввиду их PDF'ки, то это немного не то, там конечно есть полезная информация.
» Dota 2 / Dota 2 Workshop Tools
» Бродилка / [Лог #6] Немного о структуре движка.
Не спорю, что придётся дольше писать и проблемы могут возникнуть и там и там, но я ещё думаю над этим )
Первые альфы конечно будут реализованы "в лоб", без всяких наворотов.
Многие так яро хотят посадить велосипедиста на
иглудвижок, но если так уж хочется то конечно я могу написать на каком-нибудь GameMaker или Unity3D тест игровой механики, ладно если механика игры примитивна (как у меня).Вообще не понимаю зачем писать змейку на Unreal Engine 4 :)
» Бродилка / [Лог #5] Немного о локациях.
Хорошо, учту это ) Постараюсь делать кратко и внятно.
» Бродилка / [Лог #5] Немного о локациях.
» Бродилка / [Лог #5] Немного о локациях.
А по спрайтам - не знаю даже, не думал об этом.
» Бродилка / [Лог #1] Немного кода.
Я не буду яро отрицать, что иногда готовые движки - лучшее решение, например, когда проект ограничен по времени и выбранный двиг удовлетворят требованиям. А когда хочется посидеть
у камина завернувшись в одеялоизучать "кишки", разобраться в устройстве работы в принципе ну или когда не ограничен в строках и можешь вообще переписать весь код, скажем, под мобилы. Вы наверно заметили, что к разработке игры я подошёл по большей части со стороны контента, смекаете ? :) Этот контент можно использовать хоть в своём велосипеде, хоть в готовом супер-движке со стоимостью в 99999$ (разумеется, цена - совсем другой вопрос). Что я хочу сказать. Делайте игры\моды и всё ! :D» Бродилка / [Лог #4] Анимация.
Хорошо, подпишу анимации )
» Бродилка / [Лог #4] Анимация.
H: До полноценного создания карт ещё далеко, разве что можно прототипы в блендере замоделить ) В следующий раз скорее всего речь пойдёт о основном стиле локаций, атмосфере, в общем посмотрим что будет :)
» Бродилка / [Лог #1] Немного кода.
» Бродилка / [Лог #3] Моделирование пчелы.
alexprey: Думаю сегодня его оформить)
» Бродилка / [Лог #3] Моделирование пчелы.
» Бродилка / [Лог #1] Немного кода.
» Бродилка / [Лог #1] Немного кода.
Просто не привык к готовым библиотекам ) Это конечно хорошо, когда есть какие-то основа, а не голый ЯП. Кто знает, возможно, возьму какое-нибудь готовое решение.
» Бродилка / [Лог #2] Концепты врагов.
Это не платформер (прыжки не являются ключевым элементом игрового процесса), игра планируется 3Д. Главный герой в данный момент визульно слишком похож на Линка ( The Legend of Zelda ), что на самом деле меня огорчает, как бы не восприняли игру как клон. Уровней имеется два типа: "свободная зона", где врагов мало, а сама зона посещается по сюжету - это первый тип, а второй - "подземелье", которое генерирует программа.
Цель игрока - пройти сюжет (вот это неожиданность! :) ) по сюжету пока ничего не говорю т.к. во-первых это был бы спойлер, а во-вторых его на данный момент так мало, что говорить о нём практически нечего. Игровой процесс сводится к беганью по локациям, убиванию врагов и подбор лута, последний очень необходим т.к. чтобы пройти какое-то место нужно сразится с мощными врагами.
Скриншоты в конце по большей части ориентир графического стиля, а первый показывает примерный вид камеры (как бы сверху, но с небольшим наклоном).
Надеюсь немного прояснил ситуацию )