国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

如何用服務器發(fā)布網站公司培訓課程有哪些

如何用服務器發(fā)布網站,公司培訓課程有哪些,網站被惡意關鍵字訪問,wordpress 搜索詞三要素之間關系: 有了虛擬場景Scene,相機錄像Camera,在相機小屏幕上看到的Renderer Scene當前空間 Mesh人在場景 Camera相機錄像 Renderer顯示器上 首先先描述下Scene: 這個場景為三要素之一,一切需要展示的東西都需…

三要素之間關系:

有了虛擬場景Scene,相機錄像Camera,在相機小屏幕上看到的Renderer

Scene當前空間 Mesh人在場景 Camera相機錄像 Renderer顯示器上
在這里插入圖片描述
首先先描述下Scene:
這個場景為三要素之一,一切需要展示的東西都需要添加到Scene里面,也就是畫布,你需要在頁面展示的東西都需要add到Scene中,
在場景里面我們可以添加 Mesh網格模型、光源等

Mesh網格模型組成需要兩部分 需要幾何體Geometry和對應的材質模型Material

1、如何創(chuàng)建Scene、camera 、renderer 三要素并渲染:

<!DOCTYPE html>
<html><head><title>three.js</title><meta charset="utf-8"><style>* {margin: 0;padding: 0;}</style>
</head><body><div id="container"></div><!-- 類似于創(chuàng)建 并設置別名 --><script type="importmap">{"imports": {"three": "https://cdn.jsdelivr.net/npm/three@0.170.0/build/three.module.js","three/addons/": "https://cdn.jsdelivr.net/npm/three@0.170.0/examples/jsm/"}}</script><!-- 導入包名 --><script type="module">import * as THREE from 'three';// 創(chuàng)建一個新的場景對象const scene = new THREE.Scene();// 創(chuàng)建一個透視相機,參數分別為視野角度、寬高比、近平面和遠平面const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);// 創(chuàng)建一個WebGL渲染器const renderer = new THREE.WebGLRenderer();// 設置渲染器的大小,使其充滿整個窗口renderer.setSize(window.innerWidth, window.innerHeight);// 將渲染器的DOM元素添加到文檔的body中document.body.appendChild(renderer.domElement);</script>
</body></html>

現(xiàn)在建立了場景、相機和渲染器;但是頁面還是不能正常渲染的~

Threejs提供了正投影相機OrthographicCamera (opens new window)和透視投影相機PerspectiveCamera

OrthographicCamera:適用于:CAD 圖紙、工程圖、UI 設計、2D 游戲等場景,這些場景通常需要保持物體的比例和形狀。
PerspectiveCamera:適用于:3D 游戲、虛擬現(xiàn)實、建筑設計等場景,這些場景通常需要模擬真實世界的視覺效果。

透視投影相機PerspectiveCamera

透視投影相機的四個參數fov, aspect, near, far構成一個四棱臺3D空間,被稱為視錐體,只有視錐體之內的物體,才會渲染出來,視錐體范圍之外的物體不會顯示在Canvas畫布上。

PerspectiveCamera( fov, aspect, near, far )

第一個參數是視野角度(FOV)。視野角度就是無論在什么時候,你所能在顯示器上看到的場景的范圍,它的單位是角度(與弧度區(qū)分開)。默認值:50

第二個參數是長寬比(aspect ratio)。 也就是你用一個物體的寬除以它的高的值。比如說,當你在一個寬屏電視上播放老電影時,可以看到圖像仿佛是被壓扁的。默認值:1

最后兩個參數是近截面(near)和遠截面(far)。 當物體某些部分比攝像機的遠截面遠或者比近截面近的時候,該這些部分將不會被渲染到場景中?;蛟S現(xiàn)在你不用擔心這個值的影響,但未來為了獲得更好的渲染性能,你將可以在你的應用程序里去設置它。near默認值:0.1;far默認值:2000

在這里插入圖片描述

創(chuàng)建正方體到場景中

	  // 創(chuàng)建一個網格模型const geometry = new THREE.BoxGeometry(1, 1, 1);    // 創(chuàng)建一個立方體幾何體const material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });      // 創(chuàng)建一個材質對象const mesh = new THREE.Mesh(geometry, material);        // 創(chuàng)建一個網格模型對象scene.add(mesh);            // 將網格模型對象添加到場景中

這個時候Scene里面已經有了一個Mesh網格模型,也就是一個人進入到了想要拍攝的場景之中。默認在原點坐標
我們也可以設置這個人站在哪里:

 // 創(chuàng)建一個網格模型const geometry = new THREE.BoxGeometry(1, 1, 1);    // 創(chuàng)建一個立方體幾何體const material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });      // 創(chuàng)建一個材質對象const mesh = new THREE.Mesh(geometry, material);        // 創(chuàng)建一個網格模型對象mesh.position.set(1,1,1,)       // 設置網格模型對象的位置scene.add(mesh);            // 將網格模型對象添加到場景中

這個時候 我們 場景Scene準備好了,場景里面要拍攝的人Mesh也準備好了,相機camera也準備好了,這個時候我們需要相機放到一個可以拍攝到咱們物體的一個位置position,然后讓相機看向哪里呢?

相機對象Camera具有位置屬性.position,通過位置屬性.position可以設置相機的位置。

   // 創(chuàng)建一個透視相機,參數分別為視野角度、寬高比、近平面和遠平面const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);//相機在Three.js三維坐標系中的位置// 根據需要設置相機位置具體值camera.position.set(5, 5, 5); 

相機已經放到了xyz都為5的位置,默認看向xyz都為000的位置,現(xiàn)在我們想讓它看向人也就是網格模型的位置

     // 創(chuàng)建一個透視相機,參數分別為視野角度、寬高比、近平面和遠平面const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);//相機在Three.js三維坐標系中的位置// 根據需要設置相機位置具體值camera.position.set(5, 5, 5);   // 設置相機方向(指向的場景對象)                            camera.lookAt(mesh.position); 

這個時候 頁面還是不展示嘻嘻 不慌~
渲染場景
這是因為我們還沒有對它進行真正的渲染。為此,我們需要使用一個被叫做“渲染循環(huán)”(render loop)或者“動畫循環(huán)”(animate loop)的東西。

      /*** 動畫函數* 該函數通過不斷地請求下一幀來實現(xiàn)動畫效果* 它在每一幀中調用渲染器來重新渲染場景和相機*/function animate() {// 請求下一幀動畫requestAnimationFrame(animate);// 使用當前場景和相機進行渲染renderer.render(scene, camera);}// 調用animate函數開始動畫animate();

這下就相當于一直在錄像了~
看下頁面:
在這里插入圖片描述
我們添加一個坐標系,這樣就可以更好的看出所在的位置:
輔助觀察坐標系同樣的添加到場景中

     // 創(chuàng)建輔助觀察坐標系const asesHelper = new THREE.AxesHelper(200);scene.add(asesHelper);

three.js坐標軸顏色紅R、綠G、藍B分別對應坐標系的x、y、z軸,對于three.js的3D坐標系默認y軸朝上
在這里插入圖片描述
我們可以讓Z軸朝上

        // 默認是 0 1 0camera.up.x = 0;camera.up.y = 0;camera.up.z = 1; 

在這里插入圖片描述

這個時候我們想讓他跟隨鼠標移動,可拖動旋轉我們使用

import { OrbitControls } from 'three/addons/controls/OrbitControls.js';const controls = new OrbitControls(camera, renderer.domElement)   function animate() {controls.update();// 請求下一幀動畫requestAnimationFrame(animate);// 使用當前場景和相機進行渲染renderer.render(scene, camera);}

這時候我們就可以隨意的拖動

我們可以設置這個人Mesh網格模型翻跟頭,比如我們讓他跟隨z軸渲染,只需要在循環(huán)動畫中增加旋轉即可

     function animate() {// 跟隨Z軸旋轉mesh.rotation.z += 0.01;controls.update();// 請求下一幀動畫requestAnimationFrame(animate);// 使用當前場景和相機進行渲染renderer.render(scene, camera);}

好了,到目前位置,做了哪些?

  1. 創(chuàng)建場景
  2. 在場景中增加Mesh模型,模型由幾何體和它對應的材質組成,設置了它的定位位置
  3. 增加camera相機錄像,它的四個參數的含義,位置position,看向何方lookAt
  4. 渲染器renderer
  5. 增加輔助坐標系,默認Y朝上
  6. 增加控制器
  7. 增加動畫圍繞z軸旋轉
http://aloenet.com.cn/news/47185.html

相關文章:

  • 進下加強新聞宣傳網站建設上海百度seo
  • h5手機網站怎么做互聯(lián)網營銷師考試題庫
  • 西安最好的網站建設公司網絡營銷網站分析
  • 淄博政府網站建設公司百度商業(yè)賬號登錄
  • 做網站媒體內蒙古seo優(yōu)化
  • 如何在淘寶上做自己的網站廣州疫情最新數據
  • 做一款app需要網站嗎鄭州百度公司地址
  • 做網站在哪里租服務器新網
  • 培訓型網站建設網站搜索引擎優(yōu)化的基本內容
  • 做網站認證違法嗎煙臺seo
  • 動態(tài)網站設計論文3000字seoul是哪個國家
  • 中國鐵建華南建設有限公司網站十大搜索引擎地址
  • wordpress文章標題字體大小東莞市網絡seo推廣服務機構
  • 國外 上海網站建設google搜索網址
  • 常州網站建設多少錢收錄網站有哪些
  • 網站搭建培訓學電腦培訓班
  • 網站建設的相關書籍今日頭條鄭州頭條新聞
  • 順德營銷型網站建設查關鍵詞的排名工具
  • 網站建設方案標準模板seo技術交流
  • 浙江建設廳網站官網seo關鍵詞排名系統(tǒng)
  • 做網站都需要哪些技術網絡推廣和seo
  • 電子商務網站軟件建設的核心是武漢大學人民醫(yī)院地址
  • 香港公司網站備案公司建立網站的步驟
  • 做二手房網站有哪些seo營銷是什么
  • 海寧高端高端網站設計人工智能培訓機構排名
  • 讓人做網站 需要準備什么軟件深圳英文站seo
  • 網站備案號在哪里查詢美國seo薪酬
  • 網站機房建設有助于怎么做盲盒
  • 開封企業(yè)網絡推廣方案seo和sem的區(qū)別
  • 鐘表玻璃東莞網站建設寧波seo網絡推廣軟件系統(tǒng)