Установка матрицы камеры вручную в ThreeJS

Я пытаюсь вручную установить матрицу камеры в простой сцене Three.js. Я пытался вызвать метод matrix.set в сочетании с matrixAutoUpdate = false, но хотя сцена визуализируется изначально, она не меняется со временем, как я и надеялся. Я также попытался установить матрицу с помощью camera.matrix = с тем же результатом. Заставляет меня думать, что я что-то упускаю из-за того, как заставить объект «взять» заданные вручную значения. Я также пытался применить applyMatrix, но это, кажется, делает что-то еще полностью.

Любой совет высоко ценится - спасибо!

Вот ручка кода в действии:

http://codepen.io/heyscam/pen/phflL

И вот только JS:

var WIDTH = 640;
var HEIGHT = 360;

var VIEW_ANGLE = 31.417;
var ASPECT = WIDTH / HEIGHT;
var NEAR = 0.1;
var FAR = 10000;

var $container = $('#container');
console.log($container);

var renderer = new THREE.WebGLRenderer();
renderer.setSize(WIDTH, HEIGHT);
$container.append(renderer.domElement);

var scene = new THREE.Scene();

var camera = new THREE.PerspectiveCamera(
  VIEW_ANGLE,
  ASPECT,
  NEAR,
  FAR
);
scene.add(camera);

var cube = new THREE.Mesh(
  new THREE.CubeGeometry(200, 200, 200)
);
scene.add(cube);

var frame = 0;

animate();

function animate() {
    camera.matrixAutoUpdate = false;
    camera.matrix.set(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 500 + (frame * 10), 0, 0, 0, 1);
    render();
    frame++;
    requestAnimationFrame(animate);
}

function render() {
    renderer.render(scene, camera);
}

Ответы на вопрос(1)

Ваш ответ на вопрос