Я не думаю, что вы можете изменить доступные вам параметры в раскрывающемся списке Static — они встроены в движок Unity. Однако в этом нет необходимости, так как у вас есть множество других вариантов идентификации объектов.
Похоже, вы уже пробовали использовать тег, но указали, что вам нужно больше гибкости, поэтому я предлагаю добавить класс к любым объектам окружающей среды, на которые вы хотите повлиять с помощью этого выборочного расстояния просмотра. Затем добавьте триггер-коллайдер вокруг вашего объекта игрока и запустите GetComponent()
, чтобы идентифицировать объекты окружения, когда они входят в коллайдер. Включайте объекты/рендереры, когда они входят в коллайдер, и отключайте их, когда они покидают его.
Для дополнительной гибкости вы можете добавить enum
к классу, чтобы объекты окружения вели себя по-разному, когда они входят в триггерный коллайдер игрока. хотите, чтобы один исчезал из прозрачного, а другой всплывал из-под земли и т. д.
Изменить:
Альтернативный подход, который я искал, — это переменная Camera.layerCullDistances
, которая позволяет вам установить разные расстояния, на которых камера будет отображать слои. В зависимости от ваших требований это также может работать для вас — например, ландшафт может быть на одном слое, а деревья — на другом, поэтому на больших расстояниях вы все еще можете видеть ландшафт, но не растительность.
Этот подход должен быть дешевле, чем подход на основе классов/коллайдеров, поэтому он удобен, если вы ориентируетесь на мобильные устройства. Это (возможно) не лучший подход, если у вас есть более мощное оборудование, поскольку объекты будут всплывать / исчезать, и вы не сможете сгладить их переход в видимость.
person
Serlite
schedule
06.04.2016
GetComponent()
, чтобы проверить, есть ли он у них? (Поскольку, как я уже сказал, я не думаю, что вы можете изменить параметры, перечисленные в раскрывающемся списке Static.) Вы можете еще больше сузить их поведение, добавив перечисление в класс, если это необходимо. Это также даст вам больше гибкости в будущем, если вы захотите запрограммировать переход GameObjects, а не всплывающее окно. - person Serlite   schedule 06.04.2016