Страница 4 из 4

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 01:17
aspid
(я понимаю что мои посты врядли что-то изменят :) но все-же напишу) ©
Ладно, с направленным зрением всё понятно - игрок смотрит только в одну сторону, и мобов видит только перед собой (глаз на затылке нет).
Но что тогда насчёт слуха, обоняния и ээ... "памяти" персонажа. FOV (хоть он и field of view) это не только зрение, но и остальные органы чувств, которые дают информацию об окружающем мире. Иначе получится, что или монстры все бесшумные и не пахнут, или перс глухой и с насморком).

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 03:28
Loinon
Слух можно реализовать также, как в DwarfFortress: рядом с источником звука появляются восклицательные знаки, а их цвет (или прозрачность) говорит от силе звука. Чем дальше от источника эти восклицательные знаки, тем дальше источник звука. Звук в основном имеет смысл, когда не виден источник звука, поэтому, чтобы не был спама восклицательных (или других) знаков визуализировать их только когда не виден источник звука. Обоняние, думаю, пока оставить в стороне. Было бы конечно прикольно, но обоняние одно из тех чувств, посредством которых мы мало получаем информации об окружающем мире. Над памятью я тоже довольно долго думал когда-то и более менее простой и толковой системы пока не придумал, и скорее всего, оставлю как принято: увидел тайл - запомнил тайл.
Все таки это не симулятор, а игра, у которой, как и у любой другой игры (да и у симуляторов тоже), есть набор условностей. Как писал Anfeir,
Anfeir писал(а):Отсутствие реализма игроки простят. Можно дойти до того, что сделать разными командами "переставляем левую ногу, переставляем правую ногу".
Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 04:48
aspid
Loinon писал(а):Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)
да нет, я имею ввиду, что игрок в принципе может знать о том, что происходит у него за спиной, даже если не видит этого

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 07:15
Максим Кич
aspid писал(а):
Loinon писал(а):Не стоит доходить до крайностей, если это будет мешать игроку, сильно замедлит разработку или убьет производительность нахрен)
да нет, я имею ввиду, что игрок в принципе может знать о том, что происходит у него за спиной, даже если не видит этого
Это опять конфликт «реализм vs верибельность». На «конусе зрения» надо или строить ключевую игровую механику — например, у нас хоррор, или отказываться от него и не переусложнять жизнь ни себе, ни игроку.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 13:39
Loinon
Эх, один хрен ввести ограничение оказалось сложнее, чем я предполагал. Задавать конус несложно, но сглаживать края не получается =( К тому же придется усложнять управление (вводить действия поворота головы и корпуса) Поэтому пускай остается (пока) круговой обзор. Заколебался я с FoV работать =)

Re: Исповедь начинающего геймдевелопера.

Добавлено: 25 ноя 2016, 16:35
Apromix
А вот звук может работать как круговой обзор для зрения. Если игрок вступил в круг, в котором монстр слышит звуки, значит монстр идет в эту точку кратчайшим путем, чтобы разведать, что же он там услышал и если уже увидит игрока, то идет в атаку.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 30 ноя 2016, 20:09
Loinon
Переписываю свой FoV... Не весь, только часть, связанная с расчетов видимости у границ: теперь он честно высчитывает площадь трапеции или треугольника клетки, попавшей под линию тени. Почти довел FoV до ума, остались мелочи. Зато теперь можно (теоретически) задать конус обзора и работает все без артефактов. Начинаю думать над тем, как сделать два режима, пару процессов и бегающую по экрану собачку (@). Темпы немного замедляются, проблемы с учебой =( благо дело, я не шибко спешу.
UPD: С FoV закончено, теперь все четко работает =) Пока не буду заморачиваться с конусом обзора, но заделки для его создания созданы.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 01 дек 2016, 08:47
Apromix
Loinon писал(а):оказалось сложнее, чем я предполагал
И сколько времени заняло внедрение FOV'а в игру? Нужно было взять берлиб)) Ну и что, что не такой FOV. Зато освободилось бы время на другие компоненты рога. Ведь имплементация FOV'a - это одна сотая рогалика)) Вобщем для себя я давно решил, что лучше брать готовые элементы, чем писать их самому.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 01 дек 2016, 19:36
Anfeir
Apromix писал(а):Вобщем для себя я давно решил, что лучше брать готовые элементы, чем писать их самому.
А я с точностью до наоборот ;)
Если писать для себя, не по работе, конечно.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 15 фев 2017, 19:25
altmax
Loinon писал(а):
30 ноя 2016, 20:09
Переписываю свой FoV... Не весь, только часть, связанная с расчетов видимости у границ: теперь он честно высчитывает площадь трапеции или треугольника клетки, попавшей под линию тени. Почти довел FoV до ума, остались мелочи. Зато теперь можно (теоретически) задать конус обзора и работает все без артефактов. Начинаю думать над тем, как сделать два режима, пару процессов и бегающую по экрану собачку (@). Темпы немного замедляются, проблемы с учебой =( благо дело, я не шибко спешу.
UPD: С FoV закончено, теперь все четко работает =) Пока не буду заморачиваться с конусом обзора, но заделки для его создания созданы.
Два вопроса - что та с дальнейшей разработкой? И Core i7 потянет этот рогалик со всеми его расчётами или придется ждать квантовый компьютер?

Re: Исповедь начинающего геймдевелопера.

Добавлено: 15 фев 2017, 21:13
karagy
altmax писал(а):
15 фев 2017, 19:25
И Core i7 потянет этот рогалик со всеми его расчётами или придется ждать квантовый компьютер?
Возможно, вы ещё не в курсе, но
Dwarf Fortress уже используют для тестирования производительности облачных серверов .

Re: Исповедь начинающего геймдевелопера.

Добавлено: 18 фев 2017, 06:34
altmax
Не буду создавать новую тему, раз с подходящим названием уже есть.
Вчера убедился в необходимости системы контроля версий даже при одиночной разработке - использую git. В общем писал я писал код, после очередных десятка строчек что-то классы все резко отвалились и вывалилась простыня ошибок, что одно не определено, второе не инициализировано, третье не может быть создано и т.п. - реальная простыня экрана на три. Где-то я изменил порядок создания и инициализации классов. Так и не нашел где.
Но одна команда в консоли Git откатила к предыдущему коммиту. И коммиты надо делать почаще, чтобы в таких случаях не терять много написанного кода.

Но вся ошибка произошла из-за нарушения паттернов программирования GRASP - в частности паттерна Информационный эксперт (Information Expert). Объекты надо создавать, там где они требуются, а не вызывать из одного класса метод другого, передавая туда ссылку на третий класс чтобы изменить четвертый :lol: . Всегда можно написать гораздо проще.

Re: Исповедь начинающего геймдевелопера.

Добавлено: 14 апр 2017, 14:03
Loinon
altmax писал(а):
15 фев 2017, 19:25
Два вопроса - что та с дальнейшей разработкой? И Core i7 потянет этот рогалик со всеми его расчётами или придется ждать квантовый компьютер?
Пока в заморозке. Учеба не дремлет, но так или иначе желание не пропало. Думаю над основной идеей игры на досуге. Да, каюсь, опять заморозил на неопределенный срок >.<
Core i7 потянет. Расчеты там не такие уж и мощные, я бы даже сказал, что алгоритм, который я использую (Shadow casting recursive) гораздо производительнее классический алгоритмов FOV, работающих, например, с синусами и углами.