Threes.js入門篇之2 - Hello World
與OpenGL一樣,Three.js 符合右手座標系,X軸向右,Y軸向上,Z軸朝外:
Three.js 的繪製流程可以描述為:
1. 生成 渲染器 - THREE.WebGLRenderer,並繫結Canvas繪圖畫布
2. 建立 場景管理器 - THREE.Scene,管理場景物件(場景樹)
生成場景物件THREE.mesh,新增到場景管理器
3. 建立 相機 - THREE.PerspectiveCamera,該相機支援透視投影
將相機新增到場景管理器
4. 渲染器 呼叫 場景器管理器 和 相機,執行渲染操作
參考程式碼如下(run 一下看看效果吧,可以調整下相機位置 - 比如z值,看看目標大小如何變化 ):
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8"/>
- <title>Hello World! - linol</title>
- <script type="text/javascript" src="three.js"></script>
- </head>
- <body onload="init()">
- <canvas id="Canvas3D" width="352" height="288"/>
- <script type="text/javascript">
- function init(){
- // render - attach canvas
- var renderer = new THREE.WebGLRenderer({canvas: document.getElementById('Canvas3D')});
- // scene
- var scene = new THREE.Scene();
- var sphere = new THREE.Mesh( new THREE.SphereGeometry(3,4), new THREE.MeshBasicMaterial({color: 0x00FF00}) );
- scene.add(sphere);
- // camera
- var camera = new THREE.PerspectiveCamera(45, 4/3, 1, 1000); // 1.33 Fov
- camera.position.set(0, 0, 10);
- scene.add(camera);
- renderer.render(scene, camera);
- }
- </script>
- </body>
- </html>
相關文章
- Threes.js入門篇之4 - World View ProjectionJSViewProject
- rust入門篇-hello worldRust
- Django之hello world - Django入門學習教程2Django
- R語言入門之Hello worldR語言
- Ruby語言入門之Hello world
- RabbitMQ 入門 - Hello WorldMQ
- [WebAssembly 入門] Hello, world!Web
- Threes.js入門篇之9 - 全景圖JS
- 【Structs2】Struts2入門之hello world程式的跑通Struct
- Threes.js入門篇之7 - 場景光照JS
- Threes.js入門篇之6 - 場景漫遊JS
- Next.js入門:Hello WorldJS
- Threes.js入門篇之8 - 材質與紋理JS
- Threes.js入門篇之3 - 場景與相機JS
- 零基礎入門Serverless:Hello WorldServer
- 入門輸出Hello World!——C語言C語言
- gRPC-go 入門(1):Hello WorldRPCGo
- Threes.js入門篇之5 - 場景操縱器TrackballJS
- React入門系列 – 2 編寫第一個Hello world的React程式React
- React入門系列 - 2 編寫第一個Hello world的React程式React
- Flutter Web 之 Hello WorldFlutterWeb
- Play框架之Hello, World!框架
- [WebAssembly 入門] 第二次的 Hello, world!Web
- React 學習之 Hello WorldReact
- Laravel5.8 入門系列一 搭建環境,Hello World!Laravel
- [第七篇]——Docker Hello WorldDocker
- Hello, World
- Hello World!
- Hello World
- Spring-Cloud之hello worldSpringCloud
- 百度地圖API入門——(2)第二個超簡單應用:Hello, World!地圖API
- elsa-core—2.Hello World: HTTPHTTP
- 5、Python入門____第一個Python專案:Hello WorldPython
- Go - Hello WorldGo
- Docker Hello WorldDocker
- 【Java】Hello worldJava
- React Hello,WorldReact
- Mockito Hello WorldMockito