Threejs開發筆記之九移動相機和動畫

2021-08-07 17:14:31 字數 2104 閱讀 5623

重複渲染

function

render

()

通過滑鼠選擇物件

var projector = new three.projector();//projector

var tube;

function ondocumentmousedown(event)

補間動畫

變形動畫

(每個頂點前後變化的效果)

骨骼動畫

(把頂點繫結在骨頭上,骨頭變化就會帶動頂點變化)

morphanimmesh變形動畫實戰

//載入模型,並根據模型建立morphanimmesh動畫

var loader = new three.jsonloader();

loader.load('../assets/models/horse.js', function

(geometry, mat) );

var mat2 = new three.meshlambertmaterial(

);mesh = new three.mesh(geometry, mat);

mesh.position.x = -100;

frames.push(mesh);

currentmesh = mesh;

morphcolorstofacecolors(geometry);

mesh.geometry.morphtargets.foreach(function

(e) );

geometry.computevertexnormals();

geometry.computefacenormals();

geometry.computemorphnormals();

meshanim = new three.morphanimmesh(geometry, mat);

meshanim.duration = 1000;

meshanim.position.x = 200;

meshanim.position.z = 0;

scene.add(meshanim);

showframe(0);

}, '../assets/models');

骨骼與蒙皮動畫

外部建立並匯入動畫

three中提供了幾個相機控制項來控制場景中的相機

另外相機還有常用的函式

camera.position //位置

camera.lookat//看向

//引入

//建立控制項並繫結在相機上

var trackballcontrols = new three.trackballcontrols(camera);

trackballcontrols.rotatespeed = 1.0;

trackballcontrols.zoomspeed = 1.0;

trackballcontrols.panspeed = 1.0;

trackballcontrols.nozoom=false;

trackballcontrols.nopan=false;

trackballcontrols.staticmoving = true;

var clock = new three.clock();

function

render

()

var flycontrols = new three.flycontrols(camera);

flycontrols.movementspeed = 25

;flycontrols.domelement = document.queryselector("#webgl-output");

flycontrols.rollspeed = math.pi / 24

;flycontrols.autoforward = true;

flycontrols.dragtolook = false;

function render()

讓相機沿一定方向移動

移動WEB開發筆記

布局視口 layout viewport 字太小,手動縮放網頁 視覺視口 visual viewport 左右滑動看 理想視口 ideal viewport 理想視口 物理畫素 物理畫素比 dpr 物理畫素 螢幕顯示的最小顆粒 螢幕解析度 物理畫素比 1px能顯示的物理畫素點的個數 背景縮放back...

開發筆記之20140121

關於try catch語句和finally語句塊 自 try語句在返回前,將其他所有的操作執行完,保留好要返回的值,而後轉入執行finally中的語句,而後分為以下三種情況 情況一 如果finally中有return語句,則會將try中的return語句 覆蓋 掉,直接執行finally中的retu...

開發筆記之20140220

1.工廠模式中簡單工廠模式就是建立乙個工廠,在工廠裡根據引數建立相應型別的物件,這樣就可以把建立物件的工作集中在工廠中執行,利用抽象產品角色宣告產品,可以將各類產品的共有方法提取出來在抽象產品角色中宣告。簡單工廠模式的缺點是靈活性不足,如果新加入一種型別則需要修改工廠類,新新增一條建立例項物件的邏輯...