#c# #unity3d #camera #render
Вопрос:
Основная проблема заключается в том, чтобы отобразить тело игрока для каждого другого игрока в комнате. Однако сам игрок должен видеть только прикрепленные руки, а не свое собственное тело (и он не должен видеть прикрепленные руки других). Есть ли способ сделать это?
Я пытался использовать маску отбраковки на камере, но в этом нет особого смысла.
Ответ №1:
Маска для отбора действительно имеет смысл. Отметьте сетку тела другим слоем, чтобы скрыть тело.
Вам просто нужно включить / отключить его на основе isLocalPlayer
значения.
Альтернативный способ сделать это-использовать два набора префиксов.
- A. Один из них управляется игроком
- B. Один для другого игрока.
Где префеб А содержит только руки. Но обратите внимание, что это связано с другой проблемой, например, тело игрока не будет отбрасывать тень, поскольку его не существует.
Комментарии:
1. Спасибо,я просто недостаточно знаком с КАЛАМБУРОМ,это помогло. Роман сказал почти то же самое,но я действительно тупой
Ответ №2:
Я думаю, что использование маски отбора имеет смысл.
Я бы использовал его в дополнение к отключению вашей собственной сетки игроков и включению подключенных раздач, если у вас есть полномочия (если они ваши).
Комментарии:
1. Ну,когда я загружаю нового игрока,он все еще может видеть руки других игроков. Я подумываю о создании среды выполнения слоев для каждого игрока,но я думаю, что может быть что-то более эффективное
2. Нет, я имел в виду использование права собственности на объект, чтобы знать, когда следует скрывать руки других игроков. Не забывайте, что многопользовательские игры не являются идентичными копиями друг друга, состояние игры есть, но не обязательно рендеринг (как вы сказали, только игрок видит свои руки, но не других).