提交 3d808e4e 编写于 作者: M Mr.doob

Merge branch 'dev' of https://github.com/mrdoob/three.js into dev

......@@ -10,22 +10,23 @@ THREE.AnaglyphEffect = function ( renderer, width, height ) {
// Matrices generated with angler.js https://github.com/tschw/angler.js/
// (in column-major element order, as accepted by WebGL)
this.colorMatrixLeft = new THREE.Matrix3().set(
this.colorMatrixLeft = new THREE.Matrix3().fromArray( [
1.0671679973602295, -0.0016435992438346148, 0.0001777536963345483, // r out
-0.028107794001698494, -0.00019593400065787137, -0.0002875397040043026, // g out
-0.04279090091586113, 0.000015809757314855233, -0.00024287120322696865 // b out
);
] );
// red green blue in
this.colorMatrixRight = new THREE.Matrix3().set(
this.colorMatrixRight = new THREE.Matrix3().fromArray( [
-0.0355340838432312, -0.06440307199954987, 0.018319187685847282, // r out
-0.10269022732973099, 0.8079727292060852, -0.04835830628871918, // g out
0.0001224992738571018, -0.009558862075209618, 0.567823588848114 // b out
);
] );
var _camera = new THREE.OrthographicCamera( - 1, 1, 1, - 1, 0, 1 );
......
......@@ -171,7 +171,7 @@ THREE.Matrix3.prototype = {
if ( matrix instanceof THREE.Matrix4 ) {
console.warn( "THREE.Matrix3.getInverse no longer takes a Matrix4 argument." );
console.error( "THREE.Matrix3.getInverse no longer takes a Matrix4 argument." );
}
......
......@@ -142,14 +142,14 @@ test( "determinant", function() {
test( "getInverse", function() {
var identity = new THREE.Matrix4();
var a = new THREE.Matrix4();
var identity = new THREE.Matrix3();
var identity4 = new THREE.Matrix4();
var a = new THREE.Matrix3();
var b = new THREE.Matrix3().set( 0, 0, 0, 0, 0, 0, 0, 0, 0 );
var c = new THREE.Matrix4().set( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
var c = new THREE.Matrix3().set( 0, 0, 0, 0, 0, 0, 0, 0, 0 );
ok( ! matrixEquals3( a, b ), "Passed!" );
b.getInverse( a, false );
ok( matrixEquals3( b, new THREE.Matrix3() ), "Passed!" );
ok( matrixEquals3( a, identity ), "Passed!" );
try {
b.getInverse( c, true );
......@@ -172,17 +172,19 @@ test( "getInverse", function() {
for( var i = 0, il = testMatrices.length; i < il; i ++ ) {
var m = testMatrices[i];
var mInverse3 = new THREE.Matrix3().getInverse( m );
a.setFromMatrix4( m );
var mInverse3 = b.getInverse( a );
var mInverse = toMatrix4( mInverse3 );
// the determinant of the inverse should be the reciprocal
ok( Math.abs( m.determinant() * mInverse3.determinant() - 1 ) < 0.0001, "Passed!" );
ok( Math.abs( a.determinant() * mInverse3.determinant() - 1 ) < 0.0001, "Passed!" );
ok( Math.abs( m.determinant() * mInverse.determinant() - 1 ) < 0.0001, "Passed!" );
var mProduct = new THREE.Matrix4().multiplyMatrices( m, mInverse );
ok( Math.abs( mProduct.determinant() - 1 ) < 0.0001, "Passed!" );
ok( matrixEquals3( mProduct, identity ), "Passed!" );
ok( matrixEquals3( mProduct, identity4 ), "Passed!" );
}
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册