国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

自定義衰減

2020-06-11 09:30 作者:unity_某某師_高錦錦  | 我要投稿

在現(xiàn)實(shí)世界中,光線會(huì)在遠(yuǎn)處消失,而且昏暗的光線比明亮的光線具有更低的有效范圍?!八p”一詞是指光衰速率。除了 Unity 的默認(rèn)衰減光照行為外,還可以使用自定義衰減設(shè)置。

漸進(jìn)式光照貼圖 (Progressive Lightmapper) 提供自定義衰減預(yù)設(shè),您可以通過腳本來實(shí)現(xiàn)這些預(yù)設(shè)。請參閱表下方的圖像以查看這些預(yù)設(shè)的工作原理的可視化表示,并參閱圖像下方的代碼示例來了解此功能的用法示例。

屬性????????????????????????????????????????????????????????????????????功能

InverseSquared????????????應(yīng)用距離平方倒數(shù)法衰減模型。意味著,光照強(qiáng)度與位置到光源的距離的平方成反比減小。有關(guān)更多信息,請參閱 Wikipedia:平方反比定律 (Inverse-Square law)。此選項(xiàng)在物理上是最準(zhǔn)確的。

InverseSquaredNoRangeAttenuation? ?應(yīng)用距離平方倒數(shù)法衰減模型,但沒有平滑范圍衰減。此選項(xiàng)的原理與?Inversesquared?此相同,但光照系統(tǒng)不考慮準(zhǔn)時(shí)光源(即點(diǎn)光源和聚光燈)的范圍參數(shù)的衰減。

Legacy????????????????應(yīng)用二次衰減模型。該模型將光衰減基于光源的范圍。隨著光線遠(yuǎn)離光源,強(qiáng)度會(huì)減弱,但衰減會(huì)有非常明顯且不自然的下降,視覺效果也不太現(xiàn)實(shí)。

Linear????????????????應(yīng)用線性衰減模型。在此模型中,衰減與距光源的距離成反比,且衰減以固定的速率從光源開始減弱。

每個(gè)自定義衰減預(yù)設(shè)的視覺效果示例

using System.Collections;?

using System.Collections.Generic;?

using UnityEngine;?

using UnityEngine.Experimental.GlobalIllumination;?

using UnityEngine.SceneManagement;?

[ExecuteInEditMode]?

public class ExtractFalloff : MonoBehaviour { ? ?

public void OnEnable() ? ?{ ? ? ? ?

????Lightmapping.RequestLightsDelegate testDel = (

Light[] requests, Unity.Collections.NativeArray<LightDataGI> lightsOutput) =>{ ? ? ? ? ? ?????????????DirectionalLight dLight = new DirectionalLight(); ? ? ? ? ? ?

????PointLight point = new PointLight(); ? ? ? ? ? ?

????SpotLight spot = new SpotLight(); ? ? ? ? ? ?

????RectangleLight rect = new RectangleLight(); ? ? ? ? ? ?

????LightDataGI ld = new LightDataGI(); ? ? ? ? ? ?

????for (int i = 0; i < requests.Length; i++){ ? ? ? ? ? ? ? ?

????????Light l = requests[i]; ? ? ? ? ? ? ? ?

????????switch (l.type){

????????case UnityEngine.LightType.Directional:?

????????????LightmapperUtils.Extract(l, ref dLight); ld.Init(ref dLight);?

????????????break; ? ? ? ? ? ? ? ? ? ?

????????case UnityEngine.LightType.Point:?

????????????LightmapperUtils.Extract(l, ref point);?

????????????ld.Init(ref point);?

????????????break; ? ? ? ? ? ? ? ? ? ?

????????case UnityEngine.LightType.Spot:?

????????????LightmapperUtils.Extract(l, ref spot);?

????????????ld.Init(ref spot);?

????????????break; ? ? ? ? ? ? ? ? ? ?

????????case UnityEngine.LightType.Area:?

????????????LightmapperUtils.Extract(l, ref rect);?

????????????ld.Init(ref rect);?

????????????break; ? ? ? ? ? ? ? ? ? ?

????????default:?

????????????ld.InitNoBake(l.GetInstanceID());?

????????break;?

} ? ? ? ? ?

????ld.falloff = FalloffType.InverseSquared;

lightsOutput[i] = ld; ?

} ? ? ? ?

}; ? ? ? ?

Lightmapping.SetDelegate(testDel);?

} ? ?

void OnDisable(){

? ? ? ? Lightmapping.ResetDelegate(); ??} }

自定義衰減的評論 (共 條)

分享到微博請遵守國家法律
马关县| 庆阳市| 普洱| 浮山县| 康保县| 成安县| 恭城| 仲巴县| 疏附县| 萨迦县| 龙山县| 建瓯市| 靖江市| 务川| 彭州市| 南安市| 五寨县| 会宁县| 青神县| 黔东| 孝义市| 庐江县| 泽库县| 崇阳县| 军事| 平南县| 平顺县| 陆川县| 屯昌县| 牡丹江市| 晋州市| 正阳县| 怀来县| 尚志市| 夏邑县| 巫山县| 石门县| 荣成市| 白玉县| 前郭尔| 富锦市|