中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

滄州網(wǎng)站建設(shè)代理價(jià)格東莞做網(wǎng)站最好的是哪家

滄州網(wǎng)站建設(shè)代理價(jià)格,東莞做網(wǎng)站最好的是哪家,企業(yè)網(wǎng)站建設(shè)上機(jī)考試,鴻歐b2b訂貨平臺(tái)在前一篇文章《Hightopo 使用心得(5)- 動(dòng)畫(huà)的實(shí)現(xiàn)》中,我們將一個(gè)直升機(jī)模型放到了3D場(chǎng)景中。同時(shí),還利用動(dòng)畫(huà)實(shí)現(xiàn)了讓該直升機(jī)圍繞山體巡邏。在這篇文章中,我們將對(duì)上一篇的場(chǎng)景進(jìn)行一些環(huán)境上的豐富與美化。讓場(chǎng)景更…

在前一篇文章《Hightopo 使用心得(5)- 動(dòng)畫(huà)的實(shí)現(xiàn)》中,我們將一個(gè)直升機(jī)模型放到了3D場(chǎng)景中。同時(shí),還利用動(dòng)畫(huà)實(shí)現(xiàn)了讓該直升機(jī)圍繞山體巡邏。在這篇文章中,我們將對(duì)上一篇的場(chǎng)景進(jìn)行一些環(huán)境上的豐富與美化。讓場(chǎng)景更真實(shí)一些。具體涉及到的知識(shí)點(diǎn)如下:

天空球
霧化
輝光
景深

這是最終效果:

使用 HT 開(kāi)發(fā)的一個(gè)簡(jiǎn)單網(wǎng)頁(yè)直升機(jī)巡邏動(dòng)畫(huà)(Hightopo 使用心得(6)- 3D場(chǎng)景環(huán)境配置)

天空球:

天空球(SkyBox)簡(jiǎn)單來(lái)說(shuō),就是用來(lái)在3D場(chǎng)景中模擬藍(lán)天白云的效果。它是一個(gè)球形網(wǎng)格,完全包圍3D場(chǎng)景,并填充了一張環(huán)形紋理作為天空背景。紋理通常是一個(gè)天空的全景圖(例如星空、日落、云層等),通過(guò)在球形網(wǎng)格的表面上將紋理映射,呈現(xiàn)出一個(gè)連續(xù)的、無(wú)縫的天空效果。

HT for Web中,天空球可以通過(guò)g3d.setSkybox(node)來(lái)實(shí)現(xiàn)。需要注意的是,這里的nodeht.Node類(lèi)型的節(jié)點(diǎn),該節(jié)點(diǎn)當(dāng)作天空球來(lái)用時(shí),不會(huì)出現(xiàn)在dataModel列表當(dāng)中。

/*** 設(shè)置天空球** @memberof Index3d*/addSkybox() {const node = this.skybox = new ht.Node();node.s({"shape3d": "sphere","shape3d.image": "./assets/skybox.jpg",});this.g3d.setSkybox(node);}

下面兩張圖片分別是設(shè)置天空球與未設(shè)置天空球的效果:
設(shè)置天空球
沒(méi)有天空球
當(dāng)然,我們也可以將藍(lán)天白云換成夜間圖片:

this.skybox.setStyle("shape3d.image", "./assets/skybox_dark.jpg");

夜間天空球

霧化:

霧化是一種常用的 3D 場(chǎng)景效果,可以讓場(chǎng)景中的物體在遠(yuǎn)離攝像機(jī)的距離時(shí)變得模糊,像有一層白霧遮擋,從而增加深度感和真實(shí)感。在 HT 中,霧化效果可以通過(guò)設(shè)置場(chǎng)景的霧化屬性來(lái)實(shí)現(xiàn),代碼如下:

/*** 霧化** @memberof Index3d*/addFog() {this.g3d.setFogDisabled(false);this.g3d.setFogMode('linear'); // 線性模式this.g3d.setFogFar(30000);// this.g3d.setFogMode('exp2'); // 標(biāo)準(zhǔn)模式// this.g3d.setFogDensity(0.00007); // 濃度this.g3d.setFogColor('green'); // 設(shè)置霧的顏色}

霧化分為兩種模式:線性模式和標(biāo)準(zhǔn)模式。

[線性模式]

線性模式下支持設(shè)置近端距離和遠(yuǎn)端距離,

  • 近端距離:默認(rèn)為1,代表從該距離起物體開(kāi)始受霧效果影響,可通過(guò)setFogNear設(shè)置霧化近端距離、getFogNear獲取霧化近端距離。
  • 遠(yuǎn)端距離:默認(rèn)為2000,代表從該距離之后物體完全看不清, 可通過(guò)setFogFar設(shè)置霧化遠(yuǎn)端距離、getFogFar獲取霧化遠(yuǎn)端距離。
    在這里插入圖片描述

[標(biāo)準(zhǔn)模式]

標(biāo)準(zhǔn)模式下霧化效果則會(huì)自動(dòng)調(diào)整霧化效果,在該模式下,可通過(guò)setFogDensity設(shè)置霧化強(qiáng)度來(lái)調(diào)整霧化的效果, getFogDensity可以獲取到霧化強(qiáng)度。
在這里插入圖片描述
另外,我們還可通過(guò)g3d.setFogColor(color)設(shè)置霧化效果的顏色:
在這里插入圖片描述

輝光:

輝光是一種用于增強(qiáng)場(chǎng)景中元素外觀和吸引力的視覺(jué)效果,其主要實(shí)現(xiàn)的是讓各個(gè)模型進(jìn)行自發(fā)光。常用于如夜景中燈光、道路流光等元素。
道路流光

在HT中,可通過(guò) g3d.enablePostProcessing('Bloom', true/false) 開(kāi)啟/關(guān)閉整個(gè)場(chǎng)景的輝光效果:

  /*** 開(kāi)啟輝光** @memberof Index3d*/enableBloom() {const {g3d} = this;g3d.enablePostProcessing("Bloom", true); // 開(kāi)啟輝光const module = this.bloom = g3d.getPostProcessingModule("Bloom");module.strength = 0.4; // 強(qiáng)度module.threshold = 0.33; // 閾值module.radius = 0.08; //范圍g3d.setPostProcessingValue('Bloom', 'selective', true); // 開(kāi)啟輝光過(guò)濾g3d.iv(); // 刷新拓?fù)?/span>}disableBloom() {this.g3d.enablePostProcessing("Bloom", false); // 關(guān)閉輝光}// 為直升機(jī)單獨(dú)使用輝光效果this.helicopterNode.s('bloom', true);this.propellerNode.s('bloom', true);

其中,enablePostProcessing('Bloom', true)表示開(kāi)啟 Bloom 效果;strength表示自發(fā)光亮度的強(qiáng)弱;threshold表示決定哪些顏色會(huì)發(fā)光;radius表示發(fā)光的范圍。在代碼的后半段,我們單獨(dú)為直升機(jī)和螺旋槳開(kāi)啟了輝光效果。
在這里插入圖片描述

景深:

景深(Depth of Field)可以用來(lái)突出畫(huà)面中的主體元素。我們用單反相機(jī)或手機(jī)進(jìn)行拍攝時(shí),利用景深原理,通過(guò)聚焦到某一物體,可以使周?chē)h(huán)境變得模糊,從而突出主要元素。就像下圖一樣:
在這里插入圖片描述
如果要對(duì)于一個(gè)3D場(chǎng)景設(shè)置景深效果,在 HT 中,景深效果是使用特殊的貼圖來(lái)模擬的。景深貼圖一般使用黑色的透明png貼圖實(shí)現(xiàn),黑色部分為受景深影響的范圍,透明部分不受景深影響。通過(guò)使用不同的景深貼圖及參數(shù),可以模擬出與現(xiàn)實(shí)一樣的景深效果。
在這里插入圖片描述具體開(kāi)啟和配置景深的代碼如下:

  /*** 開(kāi)啟景深** @memberof Index3d*/enableDof() {const {g3d} = this;g3d.enablePostProcessing("Dof", true); // 開(kāi)啟景深const module = this.dof = g3d.getPostProcessingModule("Dof");module.aperture = 0.01; // 景深閥值module.image = "./assets/dof_all.png"; // 景深貼圖g3d.iv(); // 刷新拓?fù)?/span>}disableDof() {this.g3d.enablePostProcessing("Dof", false); // 關(guān)閉景深}

其中,enablePostProcessing('Dof', true)表示開(kāi)啟景深效果;aperture表示孔徑,代表中間空白區(qū)域的大小,取值范圍是 0 ~ 10 代表沒(méi)有景深效果,1 代表景深效果最明顯;image表示景深使用的貼圖。

背景音樂(lè)

背景音樂(lè)不屬于3D可視化的范圍。不過(guò)既然有了直升機(jī)和相關(guān)場(chǎng)景,增加一個(gè)直升機(jī)飛行的聲音可以讓場(chǎng)景更加逼真。

/*** 初始化螺旋槳旋轉(zhuǎn)聲音** @memberof Index3d*/initAudio() {this._audio = new Audio("./assets/helicopter.MP3");this._audio.loop = true; // 循環(huán)播放}

要播放音樂(lè)可以使用Audio。這里我們只需要找到一個(gè)螺旋槳的音頻,然后對(duì)Audio進(jìn)行初始化及簡(jiǎn)單配置,就可以在場(chǎng)景加載后循環(huán)播放直升機(jī)的聲音。

需要注意的是,目前瀏覽器對(duì)于音頻自動(dòng)播放有限制,即不允許在用戶沒(méi)有交互的情況下自動(dòng)播放音頻文件。如果我們執(zhí)行了playAudio(),在console里面會(huì)遇到這個(gè)錯(cuò)誤:

Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first.
在這里插入圖片描述
要解決這個(gè)問(wèn)題,我們可以在系統(tǒng)中增加一個(gè)監(jiān)聽(tīng)函數(shù),監(jiān)聽(tīng)到某些事件后進(jìn)行音頻播放。常見(jiàn)的事件有如:

  • 觸摸事件:touchstarttouchmove、touchendtouchcancel
  • 鼠標(biāo)事件:mousedown、mouseup、click、dblclick、mousemove、mouseentermouseleave、mouseovermouseout
  • 鍵盤(pán)事件:keydown、keyup、keypress
/*** 監(jiān)聽(tīng)Document事件并播放音樂(lè)** @memberof Index3d*/addEventMonitor() {document.addEventListener("click", (event) => {this._audio.play();   });document.addEventListener("keydown", (event) => {this._audio.play();     });}

總結(jié)

作為一款國(guó)產(chǎn)自研圖形渲染引擎,HT for Web對(duì)3D場(chǎng)景的各自效果支持還是非常強(qiáng)大的。在3D場(chǎng)景(Graph3dView)中,可以通過(guò)設(shè)置天空球、霧化、輝光和景深等特效來(lái)增強(qiáng)場(chǎng)景的逼真度和美觀度。其中,天空球可以通過(guò)設(shè)置ht.Node類(lèi)型的節(jié)點(diǎn)來(lái)實(shí)現(xiàn),霧化可以通過(guò)設(shè)置場(chǎng)景的霧化屬性來(lái)實(shí)現(xiàn),輝光可以使用g3d.enablePostProcessing()方法來(lái)實(shí)現(xiàn),景深可以使用特殊的貼圖來(lái)模擬。此外,為了讓場(chǎng)景更加逼真,還可以根據(jù)需要添加背景音樂(lè)。
在下一章中,我計(jì)劃再介紹一下其他的幾種環(huán)境特效,例如:陰影,燈光,環(huán)境光等。有興趣的同學(xué)們記得訂閱。

附錄

?Hightopo 使用心得(1)- 基本概念
Hightopo 使用心得(2)- 2D 圖紙 GraphView,節(jié)點(diǎn) Node, 連線 Edge,與基本動(dòng)畫(huà) ht.Default.startAnim()
Hightopo 使用心得(3)- 吸附與錨點(diǎn)
Hightopo 使用心得(4)- 3D 場(chǎng)景 Graph3dView 與 Obj 模型
Hightopo 使用心得(5)- 動(dòng)畫(huà)的實(shí)現(xiàn)

http://www.risenshineclean.com/news/53353.html

相關(guān)文章:

  • 中國(guó)人民銀行網(wǎng)站查詢(xún)企業(yè)郵箱注冊(cè)
  • wordpress json 插件安裝seo com
  • 豐臺(tái)做網(wǎng)站公司站長(zhǎng)素材
  • 邢臺(tái)快照優(yōu)化杭州網(wǎng)站優(yōu)化
  • 安卓軟件商店安裝seo霸屏
  • 做h動(dòng)漫的動(dòng)漫視頻在線觀看網(wǎng)站站長(zhǎng)工具查詢(xún)?nèi)肟?/a>
  • 贛州市建設(shè)局網(wǎng)站企業(yè)管理培訓(xùn)課程
  • 鄭州富士康附近租房seo關(guān)鍵詞優(yōu)化軟件手機(jī)
  • 求職網(wǎng)站怎么做百度搜索引擎優(yōu)化案例
  • 用樹(shù)莓派做網(wǎng)站服務(wù)器好嗎優(yōu)化一個(gè)網(wǎng)站需要多少錢(qián)
  • 杭州專(zhuān)業(yè)網(wǎng)站營(yíng)銷(xiāo)網(wǎng)絡(luò)營(yíng)銷(xiāo)的四個(gè)特點(diǎn)
  • 用織夢(mèng)做視頻網(wǎng)站福州百度分公司
  • 建站國(guó)外平臺(tái)企業(yè)seo推廣
  • 如何設(shè)計(jì)的英文網(wǎng)站網(wǎng)站推廣優(yōu)化方式
  • 免費(fèi)做ppt的網(wǎng)站有哪些濟(jì)寧seo公司
  • 用vs2010做網(wǎng)站如何推廣普通話
  • 臺(tái)州網(wǎng)約車(chē)最新政策seo優(yōu)化推薦
  • 給網(wǎng)站做游戲視頻怎么賺錢(qián)關(guān)鍵詞搜索引擎又稱(chēng)為
  • 俄羅斯外貿(mào)網(wǎng)站如何快速推廣網(wǎng)站
  • 網(wǎng)站前置審批 公司名稱(chēng)百度站內(nèi)搜索代碼
  • 網(wǎng)站建設(shè)策劃書(shū)(建設(shè)前的市場(chǎng)分析)關(guān)鍵詞排名軟件
  • 怎么自己在微信上做網(wǎng)站全球搜索引擎市場(chǎng)份額
  • 撫順網(wǎng)站制作站長(zhǎng)工具果凍傳媒
  • 什么網(wǎng)站做蔬菜生鮮比較好手機(jī)優(yōu)化大師下載2022
  • 網(wǎng)站建設(shè)用英語(yǔ)怎么說(shuō)web網(wǎng)頁(yè)制作教程
  • 公司做網(wǎng)站有什么用搜索引擎優(yōu)化策略有哪些
  • 阿里虛擬主機(jī)怎么做兩個(gè)網(wǎng)站嗎營(yíng)銷(xiāo)推廣投放平臺(tái)
  • 國(guó)內(nèi)免費(fèi)可商用圖片素材網(wǎng)站鄭州seo管理
  • 公司網(wǎng)站設(shè)計(jì)很好的網(wǎng)絡(luò)營(yíng)銷(xiāo)模式案例
  • 富陽(yáng)做網(wǎng)站網(wǎng)店運(yùn)營(yíng)推廣方案