Исповедь начинающего геймдевелопера.
Модераторы: Sanja, Максим Кич
Re: Исповедь начинающего геймдевелопера.
(я понимаю что мои посты врядли что-то изменят но все-же напишу) ©
Ладно, с направленным зрением всё понятно - игрок смотрит только в одну сторону, и мобов видит только перед собой (глаз на затылке нет).
Но что тогда насчёт слуха, обоняния и ээ... "памяти" персонажа. FOV (хоть он и field of view) это не только зрение, но и остальные органы чувств, которые дают информацию об окружающем мире. Иначе получится, что или монстры все бесшумные и не пахнут, или перс глухой и с насморком).
Ладно, с направленным зрением всё понятно - игрок смотрит только в одну сторону, и мобов видит только перед собой (глаз на затылке нет).
Но что тогда насчёт слуха, обоняния и ээ... "памяти" персонажа. FOV (хоть он и field of view) это не только зрение, но и остальные органы чувств, которые дают информацию об окружающем мире. Иначе получится, что или монстры все бесшумные и не пахнут, или перс глухой и с насморком).
поперёк борозды
Re: Исповедь начинающего геймдевелопера.
Слух можно реализовать также, как в DwarfFortress: рядом с источником звука появляются восклицательные знаки, а их цвет (или прозрачность) говорит от силе звука. Чем дальше от источника эти восклицательные знаки, тем дальше источник звука. Звук в основном имеет смысл, когда не виден источник звука, поэтому, чтобы не был спама восклицательных (или других) знаков визуализировать их только когда не виден источник звука. Обоняние, думаю, пока оставить в стороне. Было бы конечно прикольно, но обоняние одно из тех чувств, посредством которых мы мало получаем информации об окружающем мире. Над памятью я тоже довольно долго думал когда-то и более менее простой и толковой системы пока не придумал, и скорее всего, оставлю как принято: увидел тайл - запомнил тайл.
Все таки это не симулятор, а игра, у которой, как и у любой другой игры (да и у симуляторов тоже), есть набор условностей. Как писал Anfeir,
Все таки это не симулятор, а игра, у которой, как и у любой другой игры (да и у симуляторов тоже), есть набор условностей. Как писал Anfeir,
Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)Anfeir писал(а):Отсутствие реализма игроки простят. Можно дойти до того, что сделать разными командами "переставляем левую ногу, переставляем правую ногу".
Стоит только захотеть...
Re: Исповедь начинающего геймдевелопера.
да нет, я имею ввиду, что игрок в принципе может знать о том, что происходит у него за спиной, даже если не видит этогоLoinon писал(а):Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)
поперёк борозды
- Максим Кич
- Администратор
- Сообщения: 1642
- Зарегистрирован: 03 дек 2006, 20:17
- Откуда: Витебск, Беларусь
- Контактная информация:
Re: Исповедь начинающего геймдевелопера.
Это опять конфликт «реализм vs верибельность». На «конусе зрения» надо или строить ключевую игровую механику — например, у нас хоррор, или отказываться от него и не переусложнять жизнь ни себе, ни игроку.aspid писал(а):да нет, я имею ввиду, что игрок в принципе может знать о том, что происходит у него за спиной, даже если не видит этогоLoinon писал(а):Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)
Dump the screen? [y/n]
Re: Исповедь начинающего геймдевелопера.
Эх, один хрен ввести ограничение оказалось сложнее, чем я предполагал. Задавать конус несложно, но сглаживать края не получается =( К тому же придется усложнять управление (вводить действия поворота головы и корпуса) Поэтому пускай остается (пока) круговой обзор. Заколебался я с FoV работать =)
Стоит только захотеть...
- Apromix
- Мастер
- Сообщения: 1236
- Зарегистрирован: 04 июл 2011, 10:44
- Откуда: Украина, Черновцы
- Контактная информация:
Re: Исповедь начинающего геймдевелопера.
А вот звук может работать как круговой обзор для зрения. Если игрок вступил в круг, в котором монстр слышит звуки, значит монстр идет в эту точку кратчайшим путем, чтобы разведать, что же он там услышал и если уже увидит игрока, то идет в атаку.
Re: Исповедь начинающего геймдевелопера.
Переписываю свой FoV... Не весь, только часть, связанная с расчетов видимости у границ: теперь он честно высчитывает площадь трапеции или треугольника клетки, попавшей под линию тени. Почти довел FoV до ума, остались мелочи. Зато теперь можно (теоретически) задать конус обзора и работает все без артефактов. Начинаю думать над тем, как сделать два режима, пару процессов и бегающую по экрану собачку (@). Темпы немного замедляются, проблемы с учебой =( благо дело, я не шибко спешу.
UPD: С FoV закончено, теперь все четко работает =) Пока не буду заморачиваться с конусом обзора, но заделки для его создания созданы.
UPD: С FoV закончено, теперь все четко работает =) Пока не буду заморачиваться с конусом обзора, но заделки для его создания созданы.
Стоит только захотеть...
- Apromix
- Мастер
- Сообщения: 1236
- Зарегистрирован: 04 июл 2011, 10:44
- Откуда: Украина, Черновцы
- Контактная информация:
Re: Исповедь начинающего геймдевелопера.
И сколько времени заняло внедрение FOV'а в игру? Нужно было взять берлиб)) Ну и что, что не такой FOV. Зато освободилось бы время на другие компоненты рога. Ведь имплементация FOV'a - это одна сотая рогалика)) Вобщем для себя я давно решил, что лучше брать готовые элементы, чем писать их самому.Loinon писал(а):оказалось сложнее, чем я предполагал
Re: Исповедь начинающего геймдевелопера.
А я с точностью до наоборотApromix писал(а):Вобщем для себя я давно решил, что лучше брать готовые элементы, чем писать их самому.
Если писать для себя, не по работе, конечно.
Re: Исповедь начинающего геймдевелопера.
Два вопроса - что та с дальнейшей разработкой? И Core i7 потянет этот рогалик со всеми его расчётами или придется ждать квантовый компьютер?Loinon писал(а): ↑30 ноя 2016, 20:09Переписываю свой FoV... Не весь, только часть, связанная с расчетов видимости у границ: теперь он честно высчитывает площадь трапеции или треугольника клетки, попавшей под линию тени. Почти довел FoV до ума, остались мелочи. Зато теперь можно (теоретически) задать конус обзора и работает все без артефактов. Начинаю думать над тем, как сделать два режима, пару процессов и бегающую по экрану собачку (@). Темпы немного замедляются, проблемы с учебой =( благо дело, я не шибко спешу.
UPD: С FoV закончено, теперь все четко работает =) Пока не буду заморачиваться с конусом обзора, но заделки для его создания созданы.
Re: Исповедь начинающего геймдевелопера.
Возможно, вы ещё не в курсе, но
Dwarf Fortress уже используют для тестирования производительности облачных серверов .
Re: Исповедь начинающего геймдевелопера.
Не буду создавать новую тему, раз с подходящим названием уже есть.
Вчера убедился в необходимости системы контроля версий даже при одиночной разработке - использую git. В общем писал я писал код, после очередных десятка строчек что-то классы все резко отвалились и вывалилась простыня ошибок, что одно не определено, второе не инициализировано, третье не может быть создано и т.п. - реальная простыня экрана на три. Где-то я изменил порядок создания и инициализации классов. Так и не нашел где.
Но одна команда в консоли Git откатила к предыдущему коммиту. И коммиты надо делать почаще, чтобы в таких случаях не терять много написанного кода.
Но вся ошибка произошла из-за нарушения паттернов программирования GRASP - в частности паттерна Информационный эксперт (Information Expert). Объекты надо создавать, там где они требуются, а не вызывать из одного класса метод другого, передавая туда ссылку на третий класс чтобы изменить четвертый . Всегда можно написать гораздо проще.
Вчера убедился в необходимости системы контроля версий даже при одиночной разработке - использую git. В общем писал я писал код, после очередных десятка строчек что-то классы все резко отвалились и вывалилась простыня ошибок, что одно не определено, второе не инициализировано, третье не может быть создано и т.п. - реальная простыня экрана на три. Где-то я изменил порядок создания и инициализации классов. Так и не нашел где.
Но одна команда в консоли Git откатила к предыдущему коммиту. И коммиты надо делать почаще, чтобы в таких случаях не терять много написанного кода.
Но вся ошибка произошла из-за нарушения паттернов программирования GRASP - в частности паттерна Информационный эксперт (Information Expert). Объекты надо создавать, там где они требуются, а не вызывать из одного класса метод другого, передавая туда ссылку на третий класс чтобы изменить четвертый . Всегда можно написать гораздо проще.
Re: Исповедь начинающего геймдевелопера.
Пока в заморозке. Учеба не дремлет, но так или иначе желание не пропало. Думаю над основной идеей игры на досуге. Да, каюсь, опять заморозил на неопределенный срок >.<
Core i7 потянет. Расчеты там не такие уж и мощные, я бы даже сказал, что алгоритм, который я использую (Shadow casting recursive) гораздо производительнее классический алгоритмов FOV, работающих, например, с синусами и углами.
Стоит только захотеть...
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 36 гостей