最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

阿昌學(xué)習(xí)《RayTraing in one week》 (四)

2022-10-31 21:04 作者:柯昌弟弟c  | 我要投稿

上一章加入了攝像機(jī)和背景,這樣的就有個(gè)場景的模樣,現(xiàn)在再往這個(gè)場景里添加一個(gè)物體,而選擇添加的物體就是球體,因?yàn)榍蝮w在計(jì)算光線是否擊中的時(shí)候比較好計(jì)算。

首先是我們上學(xué)的時(shí)候?qū)W過球表面的一個(gè)方程

X2 + Y2 + Z2 = R2,這樣呢就可以有兩個(gè)判斷

X2 + Y2 + Z2 >?R2,這就說明這個(gè)點(diǎn)在球外

X2 + Y2 + Z2 <?R2,這個(gè)就是在球內(nèi)部

我們?cè)O(shè)球的圓心是(CX,CY,CZ)

那么我們的公式就變成(X - CX)2 + (Y?- CY)2 +(Z?- CZ)2? = R2

現(xiàn)在球上一個(gè)點(diǎn)P(X,Y,Z)到圓心C的距離 也就是半徑呢 就可以表示成(P-C)

那么上邊的公式就變成

(X?- CX)2 + (Y?- CY)2 +(Z?-?CZ)2??=?(P-C) * (P-C)

(P-C) * (P-C) = R2?

上一章中的光線方程 p(t) = a + t * b,把這個(gè)公式帶入

(a + t * b-C) * (a + t * b-C) = R2?

因?yàn)閠是一個(gè)未知數(shù),不難看出 這就是一個(gè)一元二次方程,那就可以整理成下邊這樣

t2b2 + 2tb*(a-C)+(a-C)*(a-C)-R2 = 0

一個(gè)光線和這個(gè)物體的相交情況只有三種

那么一元二次方程組我們就很容易解啦


來自百度百科截圖,一元二次方程組的求根公式

接下來添加一個(gè)球體,并且賦予紅色。

添加一個(gè)hit_sphere的方法

運(yùn)行之后就得到下邊這個(gè)了。

200*200


阿昌學(xué)習(xí)《RayTraing in one week》 (四)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
敦煌市| 游戏| 潍坊市| 黑水县| 石台县| 龙井市| 图们市| 临夏县| 神木县| 日照市| 太仆寺旗| 和龙市| 辰溪县| 安泽县| 石泉县| 叙永县| 米泉市| 乐昌市| 华阴市| 深泽县| 清水县| 龙南县| 台江县| 桃园市| 华容县| 遂宁市| 柳江县| 高州市| 盐城市| 双鸭山市| 阿克陶县| 永城市| 卓资县| 靖江市| 哈巴河县| 株洲县| 衡阳县| 常宁市| 高雄市| 买车| 区。|