Название: Пока без названия.
Жанр: Dungeon Сrawler, RPG
Платформа: PC
Движок: Godot
Под вдохновением Ultima Underworld, Arx Fatalis.
![d-04 d-04 | [Godot] Dungeon crawler, RPG](https://gamedev.ru/files/images/d-04.jpg)
Геймплейный ролик:

Особенности:
Общих хитов нет вместо них - анатомические зоны.
Смерть персонажей может наступить от повреждения внутренних органов, от кровопотери.
Потеря сознания от болевого шока.
Красава, за Годот отдельный плюс.
Если позволишь небольшой совет. Сделай чтобы оружка рендерилась отдельной камерой. Тогда она не будет проавливаться в текстуры типа пилона. А то глаз режет.
Модели врагов (неокончательный вариант)
Val Green
> Модели врагов
Вообще огонь. Продолжай. Всем нравится. Не забудьте отправить свою игру разрабам движка. Они за такую графику вас обязательно включат в свой ежегодный проморолик.
Gamma_Teta
> Вообще огонь. Продолжай. Всем нравится. Не забудьте отправить свою игру разрабам движка. Они за такую графику вас обязательно включат в свой ежегодный проморолик.
Спасибо.
Да, мы про это помним, обязательно отправим.
Gamma_Teta
> Красава, за Годот отдельный плюс.
Спосибо.
> Сделай чтобы оружка рендерилась отдельной камерой.
Хорошо, как руки дойдут сделаю.
Gamma_Teta
> Если позволишь небольшой совет. Сделай чтобы оружка рендерилась отдельной камерой.
Вот кстати, в версии 4.5, этого делать не надо, там появилась настройка в шейдере, "use_z_clip_scale" которая эту проблему убирает.
Val Green
> Вот кстати, в версии 4.5, этого делать не надо, там появилась настройка в шейдере, "use_z_clip_scale"
В нашем случае одно и то же оружие (меши, материалы) могут использовать как игрок, так и боты.
Если делать через материал - придется все материалы, что на оружии, дублировать для игрока
с этой галочкой. И еще понадобится код, который эти материалы будит ставить на меш оружия, когда оно попадает в руки игрока. Или другие способы но ...
В итоге, в нашем случае проше использовать отдельную камеру.
Wilbert
> придется все материалы, что на оружии, дублировать для игрока с этой галочкой.
> И еще понадобится код, который эти материалы будит ставить на меш оружия
Тут код конечно мощный... (нет)
extends MeshInstance3D class_name PortableByProtagonist var new_material : StandardMaterial3D func _ready() -> void: new_material = mesh.surface_get_material(0).duplicate() new_material.local_to_scene = true new_material.use_z_clip_scale = true func on_item_picked() -> void: set_surface_override_material(0, new_material) func on_item_released() -> void: set_surface_override_material(0, null)
Der FlugSimulator
> Тут код конечно мощный... (нет)
В каждом экземпляре меш-инстанса оружия будет дубликат материала? Я слишком жаден для таких решений.
Допустим, я перенесу дубликаты материалов из экземпляров итемов в cfg итемов. Но тут возникает другой вопрос: а оно мне надо?
Даже если бы я согласился дублировать материалы в каждом мешинстансе, с моей текущей кухней возникает конфликт.
Когда в руке меняется оружие, меш-инстанс в руке не меняется. Меняется сам меш:
weaponMesh.Mesh = sl[curWeaponSl].cfg.mesh;
То есть мне придется перелапачивать систему, чтобы менялся меш-инстанс. Но это повлечет за собой отвал отдельных ништяков.
Мне дешевле просто сделать отдельную камеру.
Val Green
>
> Вот кстати, в версии 4.5, этого делать не надо, там появилась настройка в шейдере, "use_z_clip_scale" которая эту проблему убирает.
А при этом сортировка граней оружия разве не сломается?
Wilbert
> В каждом экземпляре меш-инстанса оружия будет дубликат материала?
Почему в каждом экземпляре? У тебя главный герой один.
На каждый материал, что используется в носимых предметах будет 1 материал копия.
Его и прописываешь в override.
Wilbert
> Когда в руке меняется оружие, меш-инстанс в руке не меняется. Меняется сам меш:
Это еще зачем? Какие тут ништяки? Скорее головняк на ровном месте.
Впрочем, это ничего не меняет. Материалы можно менять как у меш-инстанса, так и у меша.
Wilbert
> Я слишком жаден для таких решений.
А лишний проход рендера вьюпорт-камеры тебя не парит? Он вообще то больше сжирает ресурсов.
> Но тут возникает другой вопрос: а оно мне надо?
Я уговаривать не буду, т.к. не понимаю цели твоих ухищрений, зато вижу, что ты исходишь из ложных посылов.
Не хочешь воспринимать - не надо.
BooTheJudge
> сортировка граней
Подразумеваеш запись в карту глубины? если так почему должно сломатся? сплющится и прижмется ближе к камере в зависимости от значения scale, но порядок треугольников оружия (кто ближе кто дальше) от этого не поменяется.
BooTheJudge
> А при этом сортировка граней оружия разве не сломается?
Нет.

** На картинке 2 MeshInstance c одним и тем же мешем внутри, каждый с 3мя материалами.
У правого, для каждого материала выставлен z_clip, так что сортировка работает не только с учётом граней.
Der FlugSimulator
>зато вижу, что ты исходишь из ложных посылов.
Возможно.
> Не хочешь воспринимать - не надо.
Не серчай. Без сарказма. Вдруг в следуюший раз мне совет сильно бы помог.