2011-05-12 72 views
1

我的公司已經在Unity3D中爲基於OpenGL的遊戲創建了一個內部級別的編輯器。問題是我在將Unity的Lighting模型映射到OpenGL時遇到了麻煩。將Unity3D Light參數映射到OpenGL

儘管我在將「範圍」映射到OpenGL的常量,線性和二次衰減方面遇到問題,但Unity的燈光上的大部分設置都很有意義。

在Unity中,「範圍」似乎是表面接收到「無光」(微小量)的距離。我已經獲得了近似值,但我很想知道正確的映射。

回答

0

範圍實際上是沒有意義的,因爲技術上輕是受1/r2衰減控制。 OpenGL固定功能管線爲您提供了兩個衰減因子:線性和二次方程。在線性情況下,線性因子將僅爲1 /範圍,但所得照明看起來不自然。在二次衰減情況下,您可以假設光線衰減到1/10的距離(假設衰減到最低位聽起來理論上聽起來更好,但會導致衰減太快)。