我會精確的提出我的問題,我有一個在二維世界(X,Y)中移動的二維對象,並且我想在Z軸上僞造一個運動。所以我相信最好的方式就是玩它的範圍(寬度,高度)和位置。 但是,如何確定尺寸爲(w,h)的物體的新範圍並從相機(Z軸)前方1米處移動?這個函數的參數是什麼?如何僞造在Z軸上移動的2D精靈?
在此先感謝您的幫助。
我會精確的提出我的問題,我有一個在二維世界(X,Y)中移動的二維對象,並且我想在Z軸上僞造一個運動。所以我相信最好的方式就是玩它的範圍(寬度,高度)和位置。 但是,如何確定尺寸爲(w,h)的物體的新範圍並從相機(Z軸)前方1米處移動?這個函數的參數是什麼?如何僞造在Z軸上移動的2D精靈?
在此先感謝您的幫助。
主要參數是到相機的距離和孔徑角度。
由new_size = size/distance
確定新的尺寸很簡單。 注意,沒有距離的物體的大小是無限的。 爲了得到孔徑角度的效果,您希望包含另一個因子f
: new_size = f * size/distance
其中f
是單位大小的距離。單位大小的距離是圖像以原始大小繪製的距離。 當然,這也不能爲零。通過這個距離,你可以非常確定孔徑角度。
當我談論大小我的意思是寬度和高度,所以公式適用於兩者。
我希望你可以按照我的解釋。
寬度和高度將與觀看者的距離成反比。如果它們距離兩倍,那麼尺寸就是一半。所以,如果觀衆的「自然」距離是A,新位置是A + Z,則需要將原始寬度和高度乘以A /(A + Z)。這也適用於Z值較小的負值(物體距離觀看者越近並且看起來越大)。
讓精靈變大還是變小?如果您使用的是2D等軸視圖,則還需要曲線移動。 –