HDRP с#

Общие вопросы о Unity3D

HDRP с#

Сообщение Vital_87 31 авг 2021, 11:47

HDRP очень мощный инструмент для визуализации но увы на русском очень мало информации о нем. На англ. форумах нашел информацию как можно обратиться к источнику света для его настройки:
Синтаксис:
Используется csharp
using UnityEngine.Rendering.HighDefinition;
private HDAdditionalLightData Light1;
Light1 = GetComponent<HDAdditionalLightData>();
Light1.intensity;
Light1.shadowDimmer;
  и т.д.
 


Все работает.
Но вот теперь встала проблема с обращением к компоненту Volume.
Хоть и при подключение рендера HighDefinition и появляться класс VolumeComponentWithQuality, но когда пробую обратиться к этому компоненту выдает ошибку:
ArgumentException: GetComponent requires that the requested component 'VolumeComponentWithQuality' derives from MonoBehaviour or Component or is an interface.
UnityEngine.GameObject.GetComponent[T] () (at <0847a0faf94444ccbaf1958021b27f54>:0)

Или может надо обращаться через профиль который он создает, но я честно говоря не понимаю как эта конструкция должна выглядеть.
Vital_87
UNец
 
Сообщения: 15
Зарегистрирован: 17 дек 2020, 20:08

Re: HDRP с#

Сообщение Vital_87 31 авг 2021, 13:01

Короче сам разобрался, нашел пример на одном англоязычном форуме.
Проблема была в том что надо подключать и Rendering и Rendering.HighDefinition.
Может кому тоже поможет:
Синтаксис:
Используется csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.HighDefinition;

public class VolumeScript : MonoBehaviour
{
    private Fog Fog123;
    void Awake()
    {
        Volume volume = gameObject.GetComponent<Volume>();
        volume.profile.TryGet<Fog>(out Fog123);
        Fog123.baseHeight.value = 10;
        Fog123.maximumHeight.value = 50;
    }
}
 
Vital_87
UNец
 
Сообщения: 15
Зарегистрирован: 17 дек 2020, 20:08


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14