lookAt函数

1lookAt函数的格式为lookAt(eye,at,up),at与eye的差作为光线方向
2JavaScript中at与up必须定义为const常量,原因不明
3lookAt函数实则为模视变换的另一种写法
4在MV.js中lookAt的原型定义如下:
function lookAt( eye, at, up )
{
if ( !Array.isArray(eye) || eye.length != 3) {
throw “lookAt(): first parameter [eye] must be an a vec3”;
}

if ( !Array.isArray(at) || at.length != 3) {
    throw "lookAt(): first parameter [at] must be an a vec3";
}

if ( !Array.isArray(up) || up.length != 3) {
    throw "lookAt(): first parameter [up] must be an a vec3";
}

if ( equal(eye, at) ) {
    return mat4();
}

var v = normalize( subtract(at, eye) );  // view direction vector
var n = normalize( cross(v, up) );       // perpendicular vector
var u = normalize( cross(n, v) );        // "new" up vector

v = negate( v );

var result = mat4(
    vec4( n, -dot(n, eye) ),
    vec4( u, -dot(u, eye) ),
    vec4( v, -dot(v, eye) ),
    vec4()
);

return result;

}
5要知道为什么这么定义第一步要搞清楚webGl中默认的投影方式是怎样的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值