日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

mysql象限和投影_Camera类之orthographic-摄像机投影模式(第100篇随笔)

發(fā)布時(shí)間:2025/4/16 数据库 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql象限和投影_Camera类之orthographic-摄像机投影模式(第100篇随笔) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這篇文章是我的第一百篇隨筆,算是一個(gè)里程碑吧。本科的時(shí)候就曾在CSDN上注冊(cè)了一個(gè)博客,但是一直沒有堅(jiān)持下來去寫一些東西。研一上學(xué)期又在博客園上注冊(cè)了博客,很值得自豪,能夠堅(jiān)持下來,將自己的學(xué)習(xí)心得、解題思路、生活情感在此分享。因?yàn)椴┛蛨@主要分享的是技術(shù)文章,所以有關(guān)于個(gè)人情感的就很少寫了。好吧,開始正題了。

攝像機(jī)主要有兩種投影模式,一種是正交投影,一種是透視投影。

所謂投影就是將三維空間中的物體投影到二維平面上,例如在現(xiàn)實(shí)世界中攝像機(jī)拍攝物體,是由物體表面反射的光線經(jīng)過凸透鏡聚到感光元件CCD單元上產(chǎn)生的。這就是把三維空間投影到二維空間的過程。

所謂正交投影,只考慮所有三維空間中的點(diǎn)的X和Y坐標(biāo),所有點(diǎn)映射到XY平面上。如果點(diǎn)(x,y,z)映射到點(diǎn)(x',y'),那么x = x',y = y'。每一個(gè)二維眼空間中的點(diǎn)都是和z軸是平行的直線在觀察平面上的投影。所以正交投影又叫平行投影。正交投影可以把場(chǎng)景中所有的物體通過平行光線投影到觀察平面上。在正交投影中,不管物體離眼睛有多遠(yuǎn),它都和原來的物體大小相同。

所謂透視投影,每一個(gè)點(diǎn)都映射到三維眼空間的Z = 1的平面上,它是這個(gè)點(diǎn)和原點(diǎn)的連線與Z = 1平面的交點(diǎn)。二維眼空間中的每個(gè)點(diǎn)表示該點(diǎn)與三維眼空間的原點(diǎn)生成的直線。

如下圖所示:

在Unity中,Camera類的orthographic屬性就是用于設(shè)置和獲取當(dāng)前攝像機(jī)的投影模式。其原型為:

public bool orthographic {get;set;}

若值為true則為正交投影,反之為透視投影。在正交投影模式下,物體在視口的大小只與正交視口的大小有關(guān),與攝像機(jī)到物體的距離無關(guān),主要用來呈現(xiàn)2D效果。在透視模式下,物體在是口重的大小與攝像機(jī)的視口夾角(fieldOfView)以及攝像機(jī)與物體的距離都有關(guān)系,有遠(yuǎn)小近大的效果,主要用來呈現(xiàn)3D效果。

下面給出一個(gè)“小栗子”來模擬一下兩種投影模式。

usingUnityEngine;usingSystem.Collections;public classTestOrthogra: MonoBehaviour {publicTransform cb1;float len = 5.5f;//Use this for initialization

voidStart () {float[] distances = new float[32];

distances[8] =Vector3.Distance(transform.position, cb1.position);

camera.layerCullDistances=distances;

}//Update is called once per frame

voidUpdate () {//transform.Translate(transform.right * Time.deltaTime);

}voidOnGUI()

{if (GUI.Button(new Rect(10.0f, 10.0f, 120.0f, 45.0f), "正交投影"))

{

camera.orthographic= true;

len= 5.5f;

}if(GUI.Button(new Rect(150.0f,10.0f,120.0f,45.0f),"透視投影"))

{

camera.orthographic= false;

len= 60.0f;

}if(camera.orthographic)

{

len= GUI.HorizontalSlider(new Rect(10.0f, 60.0f, 300.0f, 45.0f), len, -20.0f, 20.0f);

camera.orthographicSize=len;

}else{

len= GUI.HorizontalSlider(new Rect(10.0f, 60.0f, 300.0f, 45.0f), len, 1.0f, 179.0f);

camera.fieldOfView=len;

}

GUI.Label(new Rect(320.0f, 60.0f, 120.0f, 45.0f), len.ToString());

}

}

將該腳步添加到場(chǎng)景中的攝像機(jī)即可,如下圖所示:

需要說明一點(diǎn),在正交模式下物體沒有遠(yuǎn)大近小的效果,并且Camera的OrthographicSize的大小也沒有限制。但是當(dāng)orthographicSize為負(fù)數(shù)時(shí)視口的內(nèi)容會(huì)顛倒。效果如下:

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的mysql象限和投影_Camera类之orthographic-摄像机投影模式(第100篇随笔)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。