Как стать автором
Обновить
124
0
Юрий @Kempston

Пользователь

Отправить сообщение

Спасибо за комментарий. Я сейчас как раз экспериментирую с управлением, подбирая параметры. Там для транспорта есть ряд настроек типа - жесткость подвески, влияние качки (или как это перевести), трение скольжения, мощность двигателя и так далее. Результата можно добиться как-то комбинируя эти значения. Задать ускорение напрямую, похоже, невозможно. А вот плавный угол поворота колес вполне можно.

Спасибо за комментарий. Приму к сведению для доработки к следующей версии. По поводу форка - это уже не ко мне.) А так согласен со всем, кроме, может быть, некомфортного контраста при облачности. Но это наверно из области субъективного восприятия. Я вообще не чувствителен к таким вещам, для меня любая яркость и контраст при любом освещении комфортны. И тут уж я не знаю, какой контраст должен быть.

И от первого лица я веду автомобиль, и от третьего лица я веду автомобиль.

От третьего лица вы ведете автомобиль не как водитель.

зажимаешь какую-то кнопку, активирующую режим "freelok", быстро осматриваешься, отпускаешь кнопку, и взгляд автоцентрируется обратно по линии движения

Ну это совсем другое дело. Пожалуй, добавлю кнопки - посмотреть по сторонам и назад. Это будет вполне достаточно.

для того, чтобы привычные визуальные метафоры хорошо накладывались на привычный гештальт реального мира

Ну хорошо. В таком случае визуальная метафора вида от руля лучше, чем вид от третьего лица, для восприятия вождения автомобиля.

А тут он сидит, будто весь в гипс залитый после травмы позвоночника, вызвавшей паралич глазодвигательных мышц, и пырится

Согласен, здесь нет такой свободы обзора, как в реальном мире. Но вид от бога - еще хуже, такого в реале и в помине нет.

Но за наезд на висящую над дорогой огромную зелёную купюру снял бы перед автором шляпу, если бы носил - вот уж реализм такой

Упрощения тоже должны быть. Но только упрощения, а не увод совсем в сторону (как от вида от руля к виду от третьего лица). Если не собирать купюры, то надо тогда устраиваться на работу, ехать в офис, разбирать бумажки... Совсем другая игра получается. Я считаю, упрощение со сбором купюр допустимо.

Не особо фанат гонок, но в некоторые поигрывал - везде, насколько я помню, был WASD по-дефолту.

А я вот что-то не припомню таких. Может быть, я давно в них не играл. Всегда было на стрелочках управление. Разве что иначе в ГТА и иже с ними, где механика вождения - не основная механика.

Оглядываться мышью помогает хоть как-то ощутить габариты происходящего и не мешает управлять транспортным средством

Не мешает?? Да вы с ума сошли!) Отклонить камеру мышкой и при этом не потерять направление движения - наверно надо иметь железную координацию.

А что, сделать управление настраиваемым - это совсем нельзя, потому что не по стивджобски?

Нет. :)

Спасибо! Такие комментарии мотивируют продолжать.

В реальной жизни на торпеде полезные индикаторы скорости, расхода топлива и прочие штуки, нужные для управления, здесь же этого нет.

Ну хорошо, нет, но будет. Будет еще зеркало заднего вида. Думаю, это как-то компенсирует ограниченный обзор. В конце концов, у водителя он такой и есть. Реальный водитель - тоже не бог.

Хрома у меня нет, а проблем с Firefox'ом я не заметил, всё работает плавно на максимальных настройках

Хорошо. Вероятно, у вас мощное железо. На моем Firefox лагает.

я снизил дальность прорисовки с максимума до нуля, но в картинке вообще ничего не поменялось

Там до игры настраивается только количество второстепенных объектов. Самая последняя настройка. Вероятно, вы ее и имели в виду? Остальные оказывают эффект прямо в игре - "Дальность обзора" и "Дальность объектов". Просто они не дают снизить значение прямо до нуля, поэтому их можно наблюдать только на какой-то длинной улице.

 не думал, что будет так сложно найти ноутбук с нормальной полноразмерной клавиатурой и не посечёнными стрелками — все производители как с ума посходили с этой экономией на спичках

Это точно. Я нашел. Но там другие кнопки расположены не очень удобно... Питание, например и так далее.

Присматривался к нему, но отпугнуло то, что я что-то не могу себе скачать. А могу ли я менять код или выбирать нужную мне версию? С three.js ощущаю как-то больше свободы действий. Ну а так, демки впечатляют, конечно.

Да я на вас в суд подам! :)

вид из кабины загораживает существенную часть экрана бесполезной торпедой и рулём

А почему бесполезной? Ведь в реальной машине мы их тоже видим. Чем не реализм? Кроме того, как я уже показал в статье на примере с NFS-3, угол обзора от первого лица все равно шире и дорогу перед машиной видно лучше, чем от третьего, даже несмотря на загораживание обзора некоторыми внутренними элементами.

не способствует реалистичности, за которую вы топите, так как даже рук на руле нет

То есть, с руками на руле уже будет реалистично? А если взглянуть на это под таким углом: с торпедой и рулем просто недостаточно реалистично, а с руками - полностью реалистично? А с видом сзади - не реалистично совсем.

 А если не видно разницы, зачем тогда вообще машины менять? Всё равно во многих гонках они ездят одинаково. 

Физику делают одинаковой, видимо, чтобы игроку сильно не заморачиваться с выбором тачки. А что, если сделать ее разной? Одна машина быстрее на прямых, но ее больше заносит на поворотах, а с другой - все наоборот. Я еще пока не особо работал над физикой, но постараюсь сделать именно так. И ведь вид внутри у тачек тоже разный. Почему можно любоваться их разнообразием снаружи, но нельзя изнутри.

По демке — недостаёт описания управления.

Согласен. Вынесу это в справку по игре, чтобы было доступно в любой момент.

обнаружил кнопку «Ручник», нажатие на которую действительно стопорит машину. Но вот где она на клавиатуре, найти так и не смог… Очевидный вариант — пробел — не работает

Кнопка B - brakes. Соглашусь, пробел удобнее. Особенно, когда несешься и надо резко затормозить, сложно так сразу ткнуть в кнопку B. Я ее почему-то взял из примеров cannnon.js с транспортом. Перенесу на пробел.

Кстати, не всем удобны стрелочки, многие к WASD привыкли — неплохо бы сделать если не кастомизацию всех кнопок, то хотя бы две схемы управления.

А вот с WASD не все так однозначно. Я бы сказал, это философский вопрос) Сейчас я включу Стива Дждобса и буду доказывать, что эта возможность вам не нужна и все портит) WASD используется, скажем, в той же ГТА, чтобы правой рукой во время движения можно было крутить камеру мышкой. Но когда так едешь, крутя камерой, то сшибаешь все столбы и все, что находится вообще рядом. И не получается вписаться не то, чтобы в свою полосу, а даже в дорогу в целом. Какие уж тут гонки. Кроме того, управлять машиной кнопками левой рукой невозможно так же хорошо, как правой (ну если вы не левша, конечно). Вроде бы все качественные автосимы имеют управление стрелочками. Управлять левой рукой можно, если вождение в игре - это какая-то побочная механика. А здесь она основная.

Единственная причина убрать управление со стрелок - это то, что на многих клавиатурах их зачем-то делают миниатюрными, я имею в виду стрелки вверх и вниз. Тогда да, это боль... Пожалуй, я продублирую управление, но не на WASD, на, например, на IJKL - чтобы играть не стрелочками, но все равно правой рукой. могу еще на numpad продублировать, например - 5123.

Миникарта в левом нижнем углу выглядит бесполезно. Она слишком мелкая для ориентирования по городу (проще глазами вокруг посмотреть), а деньги или ключевые места (банк) на ней не отображаются.

Насчет ее размера подумаю. И правда, мелкая. А какие-то метки на ней будут - банк, деньги, географические названия и т.д Просто пока не реализовано. Как раз работаю над большой картой и текстовыми слоями. Все это будет и на маленькой тоже.

подобрал одну купюру (вроде 10-ку) и дальше в том направлении денег не видел

Я упомянул в конце статьи, что игры как таковой еще нет. Из главного меню сейчас доступно только свободное вождение. Я туда запихнул всего 4 купюры так, для примера. Купюры будут очень часто и по всему городу. Будет также и трафик.

Звук какой-то странный, вроде иногда слышны звуки грозы, но ни звука мотора, ни прочих звуков езды я не слышал. Может, не работает?

Звуков пока просто нет. Только гроза.

Firefox 115.14.0esr (64-разрядный), Windows 7

Спасибо. Кстати, попробуйте Хром. У меня 10-ка и в Firefox больше фризов. В Хроме все плавнее. По-моему, не только в моей игре, но и во всех, где WebGL, Firefox его отображает как-то рывками.

В случае с 3D все ограничивается производительностью видеокарты. Это узкое место точно так же, как и в подобных нативных приложениях. А CPU большей частью ожидает завершения операция на видеоподсистеме. Разве что javascript на CPU выполняется помедленнее. Но, раз мы все равно ожидаем GPU, то какая разница.

По привычке ставлю var, предполагая повторное использование переменных в рамках функции, например, в последовательно идущих циклах и так далее. Честно говоря, не разбирался, уйдет ли больше памяти, если в каждом цикле и каждом ветвлении задавать отдельную область видимости переменных. Для производительности это может быть критично.

Действительно. Моя ошибка. Исправил на javascript.

Да, коллизии с мелкими предметами я еще пока не проработал. Там получается, что не машина застревает в предмете, а предмет в машине, и луч надо испускать не от машины, а от этого предмета... Или найти еще какое-то другое решение. Это реализуем чуть позже. А пока есть пункт респаун в меню настроек. Либо можно перезагрузить игру, если закончились деньги.

Но, пожалуй, вы правы. Надо в одном из видов убрать капот совсем, чтобы была видна только дорога.

А там есть вид от капота, переключается кнопкой V. Но мне почему-то все равно больше нравится - от руля. Ну, как бы, ощущаешь себя водителем машины, что ли.

Если используется настолько "квадратная" и повторяющаяся геометрия, не проще вообще было бы не связываться с 3D-редакторами городов и сделать процедурную геометрию?

Сгенерировать процедурно такие дороги, как выдает редактор города (изогнутые), довольно непростая задача. Ну и дома не хотелось делать совсем уж повторяющими улицы. Там кое-где есть дворы, проходы между домами и так далее. Реализовать это программно - это, по сути, написать свой такой же генератор города.

Вообще, идея перспективная - вместо того, чтобы, врезавшись в чужое транспортное средство, как ни в чём не бывало поехать далее, чтобы вылезали пацаны и, такие:

Ну, да, все как в реальной жизни. Есть такая передача, "Дорожные войны", кажется.

Это ж, вроде, стандартная практика - использовать отдельную, сильно упрощённую модель для обсчёта физики? Что там "решать"?

Может быть, и есть. Но когда у тебя дома тоже довольно простые, есть выбор - не делать еще и дополнительные упрощенные модели.

В смысле, а какое-нибудь стандартное octree не спасёт отца русской демократии?

Ох, не силен отец русской демократии в octree... И, как понимаю, это все равно не спасает от добавления/удаления элементов в список активных коллайдеров. Просто другой способ. Да и те самые границы (bounds) все равно будут нужны, нет? Чтобы добавлять коллайдеры с определенного минимального расстояния.

Есть же, вроде, эти, как их, недискретные какие-то методы расчёта коллизий, как раз для подобных случаев?

Непрерывное обнаружение столкновений (CCD), к сожалению, не поддерживается cannon.js. А он неплохо моделирует физику отскока от препятствий. CCD есть в three.js, но там нет физики. Вот я и комбинирую эти методы. Впрочем, вы несколько о другом. Рассчитать, произойдет ли коллизия в будущем. Не задумывался об этом. А, хотя, что мне от этой информации. Ну узнаю я, что коллизия будет на следующей итерации. Мне не нужна эта инфа, а нужно, чтобы физический движок среагировал на столкновение. Принудительно его это сделать не заставить, если не влезть глубоко в его код... Если он пропускает коллизию, значит пропускает.

Я не испытываю кайфа в том, чтобы выйти из себя, увы.

Пожалуйста:

https://m3d.me/game/capitalist/t20h/?lang=ru

Или вот, если мой сервер вдруг приляжет:

https://m3d.itch.io/capitalist3d

Мне нечего возразить, ваша честь.

Пока нет. Но обязательно будет можно. Это в ближайших планах.

1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность