Three.jsの基本⑦
今回は、Three.jsの描画関数の定義をやります!
今までに、カメラ,ライト,物体の設定が終わり、そして、最後に追加する項目です。
こちらを書くと、実行できます。
- renderer.render(sceneオブジェクト, cameraオブジェクト)(※rendererはレンダラーオブジェクト)
実は、説明する所は、殆ど無いです(笑)
これは、必ず書かないとダメなやつなので。
実際のコードではこのように書きます。「introduction.html」の、この部分です。
/*--------------------描画関数の定義⑥-----------*/ //※renderer:レンダラーオブジェクト,scene:sceneオブジェクト, camera:cameraオブジェクト function loop(){ //クリアーカラーで初期化 renderer.clear(); //レンダリング(必須) renderer.render(scene, camera); //OrbitControls.jsを使用した場合は、こちらが必要 controls.update(); //requestAnimationFrame window.requestAnimationFrame(loop); } /*------------描画関数の定義-----ここまで-------*/
必ず必要なのは、renderer.render(scene, camera);です。
では、軽く説明します。
renderer.render(sceneオブジェクト, cameraオブジェクト)で、実際に描画します。
レンダラーオブジェクトのレンダリングメッソドrenderer()の引数にsceneオブジェクトとcameraオブジェクトを与えて実行します。
で、 renderer.clear(); と window.requestAnimationFrame();は、アニメーションを使用する場合は、必ず入ります。静止画の場合は入りません。
また、 controls.update(); は、OrbitControls.jsを使用した場合、必ずいります。(requestAnimationFrameも入ります。)
こんなところですかね~
ということで、長らく書いてきましたが、基本は、これで終わりです。
これからは、Three.jsの個別の機能やテクニックなどを中心に書いていきます!