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

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

變換

2023-08-07 22:15 作者:追逐彗星的尾巴  | 我要投稿

變換主要為縮放、平移和旋轉(zhuǎn)。

我們使用GLM庫(kù)實(shí)現(xiàn)變換。

GLM中,向量類型為glm::vec,其中glm::vec2是二維向量,glm::vec3是三維向量,glm::vec4是四維向量。矩陣類型為glm::mat,其中glm::mat2是2x2矩陣,glm::mat3是3x3矩陣,glm::mat4是4x4矩陣。

注意:從0.9.9版本起,GLM庫(kù)會(huì)將矩陣類型默認(rèn)初始化為零矩陣,而不是單位矩陣。創(chuàng)建單位矩陣的方法為使用glm::mat2/3/4(1.0f)。

縮放

glm::scale()用于創(chuàng)建一個(gè)縮放矩陣。

scale表示在各個(gè)坐標(biāo)軸上的縮放因子。

Case:

平移

glm::translate()用于創(chuàng)建表示平移變換的矩陣。平移(Translation)就是在原始向量的基礎(chǔ)上加上另一個(gè)向量從而獲得一個(gè)在不同位置的新向量的過(guò)程。

Case:

在矩陣和向量相乘時(shí),順序不能交換。

旋轉(zhuǎn)

glm::rotate()用于執(zhí)行旋轉(zhuǎn)變換,創(chuàng)建一個(gè)旋轉(zhuǎn)矩陣。

angle:旋轉(zhuǎn)角度,以弧度為單位。axis:旋轉(zhuǎn)軸,一個(gè)三維向量,表示繞哪個(gè)軸進(jìn)行旋轉(zhuǎn)。

函數(shù)glm::radians()用于將角度轉(zhuǎn)換為弧度:

Case:

應(yīng)用變換

首先需要把矩陣傳遞給著色器。

在著色器中聲明一個(gè)uniform的mat4變量,然后用矩陣乘以位置向量:

接著為uniform變量賦值,調(diào)用函數(shù)glUniformMatrix4fv()。

count:要設(shè)置的矩陣的數(shù)量。通常情況下為1,因?yàn)橹辉O(shè)置一個(gè)矩陣。

transpose:指示矩陣是否應(yīng)該被轉(zhuǎn)置。一般為GL_FALSE。

value:一個(gè)指向矩陣數(shù)據(jù)的指針。我們使用函數(shù)glm::value_ptr()獲得這個(gè)指針。

Case:

這是應(yīng)用變換后得到的效果:


變換的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
墨玉县| 习水县| 阿拉善盟| 包头市| 浦县| 岳池县| 宁河县| 扎鲁特旗| 朝阳县| 家居| 定襄县| 民县| 扶沟县| 昌宁县| 太保市| 额济纳旗| 额敏县| 沙河市| 宁城县| 姚安县| 长治市| 临江市| 木兰县| 吴江市| 阿城市| 锡林郭勒盟| 乾安县| 杭州市| 上虞市| 叶城县| 通许县| 安国市| 北海市| 永善县| 嘉鱼县| 怀远县| 辽宁省| 乡宁县| 灵武市| 杨浦区| 吐鲁番市|