store last render mode - use this for edit mode for renderer
parent
af43128b0f
commit
c428e635c4
|
@ -5,6 +5,7 @@
|
||||||
* @param width
|
* @param width
|
||||||
* @param height
|
* @param height
|
||||||
* @param renderMode
|
* @param renderMode
|
||||||
|
* @param lastRenderMode
|
||||||
* @param autoClear
|
* @param autoClear
|
||||||
* @param autoClearColor
|
* @param autoClearColor
|
||||||
* @param autoClearDepth
|
* @param autoClearDepth
|
||||||
|
@ -32,6 +33,7 @@
|
||||||
* @param depth
|
* @param depth
|
||||||
* @param logarithmicDepthBuffer
|
* @param logarithmicDepthBuffer
|
||||||
* @param fullscreen
|
* @param fullscreen
|
||||||
|
* @param windowSize
|
||||||
* @param offset
|
* @param offset
|
||||||
* @param canvas
|
* @param canvas
|
||||||
* @param renderTarget
|
* @param renderTarget
|
||||||
|
@ -39,6 +41,7 @@
|
||||||
* @param clippingPlanes
|
* @param clippingPlanes
|
||||||
* @param clearColor
|
* @param clearColor
|
||||||
* @param camera
|
* @param camera
|
||||||
|
* @param editCamera
|
||||||
* @param scenes
|
* @param scenes
|
||||||
* @param defaultScene
|
* @param defaultScene
|
||||||
* @param viewports
|
* @param viewports
|
||||||
|
@ -51,6 +54,7 @@ GameLib.D3.API.Renderer = function (
|
||||||
width,
|
width,
|
||||||
height,
|
height,
|
||||||
renderMode,
|
renderMode,
|
||||||
|
lastRenderMode,
|
||||||
autoClear,
|
autoClear,
|
||||||
autoClearColor,
|
autoClearColor,
|
||||||
autoClearDepth,
|
autoClearDepth,
|
||||||
|
@ -86,6 +90,7 @@ GameLib.D3.API.Renderer = function (
|
||||||
clippingPlanes,
|
clippingPlanes,
|
||||||
clearColor,
|
clearColor,
|
||||||
camera,
|
camera,
|
||||||
|
editCamera,
|
||||||
scenes,
|
scenes,
|
||||||
defaultScene,
|
defaultScene,
|
||||||
viewports,
|
viewports,
|
||||||
|
@ -116,6 +121,11 @@ GameLib.D3.API.Renderer = function (
|
||||||
}
|
}
|
||||||
this.renderMode = renderMode;
|
this.renderMode = renderMode;
|
||||||
|
|
||||||
|
if (GameLib.Utils.UndefinedOrNull(lastRenderMode)) {
|
||||||
|
lastRenderMode = this.renderMode;
|
||||||
|
}
|
||||||
|
this.lastRenderMode = lastRenderMode;
|
||||||
|
|
||||||
if (GameLib.Utils.UndefinedOrNull(autoClear)) {
|
if (GameLib.Utils.UndefinedOrNull(autoClear)) {
|
||||||
autoClear = true;
|
autoClear = true;
|
||||||
}
|
}
|
||||||
|
@ -305,6 +315,17 @@ GameLib.D3.API.Renderer = function (
|
||||||
}
|
}
|
||||||
this.camera = camera;
|
this.camera = camera;
|
||||||
|
|
||||||
|
if (GameLib.Utils.UndefinedOrNull(editCamera)) {
|
||||||
|
editCamera = new GameLib.D3.API.Camera(
|
||||||
|
null,
|
||||||
|
GameLib.D3.API.Camera.PERSPECTIVE_CAMERA,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
this.width / this.height
|
||||||
|
);
|
||||||
|
}
|
||||||
|
this.editCamera = editCamera;
|
||||||
|
|
||||||
if (GameLib.Utils.UndefinedOrNull(scenes)) {
|
if (GameLib.Utils.UndefinedOrNull(scenes)) {
|
||||||
scenes = [new GameLib.D3.API.Scene()];
|
scenes = [new GameLib.D3.API.Scene()];
|
||||||
}
|
}
|
||||||
|
@ -341,6 +362,7 @@ GameLib.D3.API.Renderer.prototype.constructor = GameLib.D3.API.Renderer;
|
||||||
GameLib.D3.API.Renderer.MODE_CANVAS = 0x1;
|
GameLib.D3.API.Renderer.MODE_CANVAS = 0x1;
|
||||||
GameLib.D3.API.Renderer.MODE_TARGET = 0x2;
|
GameLib.D3.API.Renderer.MODE_TARGET = 0x2;
|
||||||
GameLib.D3.API.Renderer.MODE_CANVAS_AND_TARGET = 0x3;
|
GameLib.D3.API.Renderer.MODE_CANVAS_AND_TARGET = 0x3;
|
||||||
|
GameLib.D3.API.Renderer.MODE_EDIT = 0x4;
|
||||||
|
|
||||||
GameLib.D3.API.Renderer.SHADOW_MAP_TYPE_BASIC = 0;
|
GameLib.D3.API.Renderer.SHADOW_MAP_TYPE_BASIC = 0;
|
||||||
GameLib.D3.API.Renderer.SHADOW_MAP_TYPE_PCF = 1;
|
GameLib.D3.API.Renderer.SHADOW_MAP_TYPE_PCF = 1;
|
||||||
|
@ -364,6 +386,7 @@ GameLib.D3.API.Renderer.FromObject = function(objectRenderer) {
|
||||||
objectRenderer.width,
|
objectRenderer.width,
|
||||||
objectRenderer.height,
|
objectRenderer.height,
|
||||||
objectRenderer.renderMode,
|
objectRenderer.renderMode,
|
||||||
|
objectRenderer.lastRenderMode,
|
||||||
objectRenderer.autoClear,
|
objectRenderer.autoClear,
|
||||||
objectRenderer.autoClearColor,
|
objectRenderer.autoClearColor,
|
||||||
objectRenderer.autoClearDepth,
|
objectRenderer.autoClearDepth,
|
||||||
|
@ -399,6 +422,7 @@ GameLib.D3.API.Renderer.FromObject = function(objectRenderer) {
|
||||||
objectRenderer.clippingPlanes,
|
objectRenderer.clippingPlanes,
|
||||||
GameLib.API.Color.FromObject(objectRenderer.clearColor),
|
GameLib.API.Color.FromObject(objectRenderer.clearColor),
|
||||||
objectRenderer.camera,
|
objectRenderer.camera,
|
||||||
|
objectRenderer.editCamera,
|
||||||
objectRenderer.scenes,
|
objectRenderer.scenes,
|
||||||
objectRenderer.defaultScene,
|
objectRenderer.defaultScene,
|
||||||
objectRenderer.viewports,
|
objectRenderer.viewports,
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
* @param materials [GameLib.D3.API.Material]
|
* @param materials [GameLib.D3.API.Material]
|
||||||
* @param images
|
* @param images
|
||||||
* @param fog
|
* @param fog
|
||||||
* @param renderCamera - this is a camera which takes precedence over the renderer camera at time of render
|
|
||||||
* @param showGrid
|
* @param showGrid
|
||||||
* @param showAxis
|
* @param showAxis
|
||||||
* @param gridSize
|
* @param gridSize
|
||||||
|
@ -25,7 +24,6 @@ GameLib.D3.API.Scene = function(
|
||||||
materials,
|
materials,
|
||||||
images,
|
images,
|
||||||
fog,
|
fog,
|
||||||
renderCamera,
|
|
||||||
showGrid,
|
showGrid,
|
||||||
showAxis,
|
showAxis,
|
||||||
gridSize,
|
gridSize,
|
||||||
|
@ -73,11 +71,6 @@ GameLib.D3.API.Scene = function(
|
||||||
}
|
}
|
||||||
this.fog = fog;
|
this.fog = fog;
|
||||||
|
|
||||||
if (GameLib.Utils.UndefinedOrNull(renderCamera)) {
|
|
||||||
renderCamera = null;
|
|
||||||
}
|
|
||||||
this.renderCamera = renderCamera;
|
|
||||||
|
|
||||||
if (GameLib.Utils.UndefinedOrNull(showGrid)) {
|
if (GameLib.Utils.UndefinedOrNull(showGrid)) {
|
||||||
showGrid = true;
|
showGrid = true;
|
||||||
}
|
}
|
||||||
|
@ -191,7 +184,6 @@ GameLib.D3.API.Scene.FromObject = function(objectScene) {
|
||||||
apiMaterials,
|
apiMaterials,
|
||||||
apiImages,
|
apiImages,
|
||||||
objectScene.fog,
|
objectScene.fog,
|
||||||
objectScene.renderCamera,
|
|
||||||
objectScene.showGrid,
|
objectScene.showGrid,
|
||||||
objectScene.showAxis,
|
objectScene.showAxis,
|
||||||
objectScene.gridSize,
|
objectScene.gridSize,
|
||||||
|
|
|
@ -217,8 +217,8 @@ GameLib.D3.Mesh.Plane.prototype.generateDotMap = function() {
|
||||||
|
|
||||||
this.dots.map(
|
this.dots.map(
|
||||||
function(dot){
|
function(dot){
|
||||||
this.parentScene.instance.remove(dot);
|
// this.parentScene.instance.remove(dot);
|
||||||
dot.geometry.dispose();
|
// dot.geometry.dispose();
|
||||||
}.bind(this)
|
}.bind(this)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -233,7 +233,10 @@ GameLib.D3.Mesh.Plane.prototype.generateDotMap = function() {
|
||||||
for (var y = 0; y < height; y++ ) {
|
for (var y = 0; y < height; y++ ) {
|
||||||
|
|
||||||
var geometry = new THREE.BoxBufferGeometry(0.5,0.5,0.5);
|
var geometry = new THREE.BoxBufferGeometry(0.5,0.5,0.5);
|
||||||
var dot = new THREE.Mesh(geometry, this.materials[0].instance);
|
|
||||||
|
var materialInstance = this.materials[0].instance;
|
||||||
|
|
||||||
|
var dot = new THREE.Mesh(geometry, materialInstance);
|
||||||
dot.position.x = x;
|
dot.position.x = x;
|
||||||
dot.position.y = y;
|
dot.position.y = y;
|
||||||
dot.position.z = data[(y * width) + x];
|
dot.position.z = data[(y * width) + x];
|
||||||
|
|
|
@ -23,6 +23,7 @@ GameLib.D3.Renderer = function (
|
||||||
apiRenderer.width,
|
apiRenderer.width,
|
||||||
apiRenderer.height,
|
apiRenderer.height,
|
||||||
apiRenderer.renderMode,
|
apiRenderer.renderMode,
|
||||||
|
apiRenderer.lastRenderMode,
|
||||||
apiRenderer.autoClear,
|
apiRenderer.autoClear,
|
||||||
apiRenderer.autoClearColor,
|
apiRenderer.autoClearColor,
|
||||||
apiRenderer.autoClearDepth,
|
apiRenderer.autoClearDepth,
|
||||||
|
@ -58,6 +59,7 @@ GameLib.D3.Renderer = function (
|
||||||
apiRenderer.clippingPlanes,
|
apiRenderer.clippingPlanes,
|
||||||
apiRenderer.clearColor,
|
apiRenderer.clearColor,
|
||||||
apiRenderer.camera,
|
apiRenderer.camera,
|
||||||
|
apiRenderer.editCamera,
|
||||||
apiRenderer.scenes,
|
apiRenderer.scenes,
|
||||||
apiRenderer.defaultScene,
|
apiRenderer.defaultScene,
|
||||||
apiRenderer.viewports,
|
apiRenderer.viewports,
|
||||||
|
@ -113,6 +115,13 @@ GameLib.D3.Renderer = function (
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this.editCamera instanceof GameLib.D3.API.Camera) {
|
||||||
|
this.editCamera = new GameLib.D3.Camera(
|
||||||
|
this.graphics,
|
||||||
|
this.editCamera
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
this.scenes = this.scenes.map(function(scene){
|
this.scenes = this.scenes.map(function(scene){
|
||||||
if (scene instanceof GameLib.D3.API.Scene) {
|
if (scene instanceof GameLib.D3.API.Scene) {
|
||||||
|
|
||||||
|
@ -149,6 +158,7 @@ GameLib.D3.Renderer = function (
|
||||||
'renderTarget' : GameLib.D3.RenderTarget,
|
'renderTarget' : GameLib.D3.RenderTarget,
|
||||||
'clippingPlanes': [GameLib.Plane],
|
'clippingPlanes': [GameLib.Plane],
|
||||||
'camera' : GameLib.D3.Camera,
|
'camera' : GameLib.D3.Camera,
|
||||||
|
'editCamera' : GameLib.D3.Camera,
|
||||||
'scenes' : [GameLib.D3.Scene],
|
'scenes' : [GameLib.D3.Scene],
|
||||||
'defaultScene' : GameLib.D3.Scene,
|
'defaultScene' : GameLib.D3.Scene,
|
||||||
'viewports' : [GameLib.D3.Viewport]
|
'viewports' : [GameLib.D3.Viewport]
|
||||||
|
@ -301,7 +311,9 @@ GameLib.D3.Renderer.prototype.updateInstance = function(property) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (property === 'renderMode') {
|
if (property === 'renderMode') {
|
||||||
console.log('todo: render mode update');
|
if (this.renderMode !== GameLib.D3.API.Renderer.MODE_EDIT) {
|
||||||
|
this.lastRenderMode = this.renderMode;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (property === 'autoClear') {
|
if (property === 'autoClear') {
|
||||||
|
@ -470,6 +482,10 @@ GameLib.D3.Renderer.prototype.updateInstance = function(property) {
|
||||||
console.warn('todo: camera change');
|
console.warn('todo: camera change');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (property === 'editCamera') {
|
||||||
|
console.warn('todo: edit camera change');
|
||||||
|
}
|
||||||
|
|
||||||
if (property === 'scenes') {
|
if (property === 'scenes') {
|
||||||
console.warn('todo: scenes change');
|
console.warn('todo: scenes change');
|
||||||
}
|
}
|
||||||
|
@ -493,12 +509,17 @@ GameLib.D3.Renderer.prototype.updateInstance = function(property) {
|
||||||
*/
|
*/
|
||||||
GameLib.D3.Renderer.prototype.toApiObject = function() {
|
GameLib.D3.Renderer.prototype.toApiObject = function() {
|
||||||
|
|
||||||
|
if (this.renderMode !== GameLib.D3.API.Renderer.MODE_EDIT) {
|
||||||
|
this.lastRenderMode = this.renderMode;
|
||||||
|
}
|
||||||
|
|
||||||
var apiRenderer = new GameLib.D3.API.Renderer(
|
var apiRenderer = new GameLib.D3.API.Renderer(
|
||||||
this.id,
|
this.id,
|
||||||
this.name,
|
this.name,
|
||||||
this.width,
|
this.width,
|
||||||
this.height,
|
this.height,
|
||||||
this.renderMode,
|
this.renderMode,
|
||||||
|
this.lastRenderMode,
|
||||||
this.autoClear,
|
this.autoClear,
|
||||||
this.autoClearColor,
|
this.autoClearColor,
|
||||||
this.autoClearDepth,
|
this.autoClearDepth,
|
||||||
|
@ -538,6 +559,7 @@ GameLib.D3.Renderer.prototype.toApiObject = function() {
|
||||||
),
|
),
|
||||||
this.clearColor.toApiObject(),
|
this.clearColor.toApiObject(),
|
||||||
GameLib.Utils.IdOrNull(this.camera),
|
GameLib.Utils.IdOrNull(this.camera),
|
||||||
|
GameLib.Utils.IdOrNull(this.editCamera),
|
||||||
this.scenes.map(
|
this.scenes.map(
|
||||||
function(scene){
|
function(scene){
|
||||||
return GameLib.Utils.IdOrNull(scene);
|
return GameLib.Utils.IdOrNull(scene);
|
||||||
|
|
|
@ -26,7 +26,6 @@ GameLib.D3.Scene = function (
|
||||||
apiScene.materials,
|
apiScene.materials,
|
||||||
apiScene.images,
|
apiScene.images,
|
||||||
apiScene.fog,
|
apiScene.fog,
|
||||||
apiScene.renderCamera,
|
|
||||||
apiScene.showGrid,
|
apiScene.showGrid,
|
||||||
apiScene.showAxis,
|
apiScene.showAxis,
|
||||||
apiScene.gridSize,
|
apiScene.gridSize,
|
||||||
|
@ -132,13 +131,6 @@ GameLib.D3.Scene = function (
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.renderCamera instanceof GameLib.D3.API.Camera) {
|
|
||||||
this.renderCamera = new GameLib.D3.Camera(
|
|
||||||
this.graphics,
|
|
||||||
this.renderCamera
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.gridColor instanceof GameLib.API.Color) {
|
if (this.gridColor instanceof GameLib.API.Color) {
|
||||||
this.gridColor = new GameLib.Color(
|
this.gridColor = new GameLib.Color(
|
||||||
this.graphics,
|
this.graphics,
|
||||||
|
@ -169,8 +161,7 @@ GameLib.D3.Scene = function (
|
||||||
'textures' : [GameLib.D3.Texture],
|
'textures' : [GameLib.D3.Texture],
|
||||||
'materials' : [GameLib.D3.Material],
|
'materials' : [GameLib.D3.Material],
|
||||||
'images' : [GameLib.Image],
|
'images' : [GameLib.Image],
|
||||||
'fog' : GameLib.D3.Fog,
|
'fog' : GameLib.D3.Fog
|
||||||
'renderCamera' : GameLib.D3.Camera
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -394,7 +385,6 @@ GameLib.D3.Scene.prototype.toApiObject = function() {
|
||||||
apiMaterials,
|
apiMaterials,
|
||||||
apiImages,
|
apiImages,
|
||||||
GameLib.Utils.IdOrNull(this.fog),
|
GameLib.Utils.IdOrNull(this.fog),
|
||||||
GameLib.Utils.IdOrNull(this.renderCamera),
|
|
||||||
this.showGrid,
|
this.showGrid,
|
||||||
this.showAxis,
|
this.showAxis,
|
||||||
this.gridSize,
|
this.gridSize,
|
||||||
|
|
|
@ -885,7 +885,7 @@ GameLib.System.GUI.prototype.buildControl = function(folder, componentTemplate,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
} else if (property === 'renderMode') {
|
} else if (property === 'renderMode' || property === 'lastRenderMode') {
|
||||||
controllers.push(
|
controllers.push(
|
||||||
folder.add(
|
folder.add(
|
||||||
object,
|
object,
|
||||||
|
@ -893,7 +893,8 @@ GameLib.System.GUI.prototype.buildControl = function(folder, componentTemplate,
|
||||||
{
|
{
|
||||||
'canvas': GameLib.D3.API.Renderer.MODE_CANVAS,
|
'canvas': GameLib.D3.API.Renderer.MODE_CANVAS,
|
||||||
'target': GameLib.D3.API.Renderer.MODE_TARGET,
|
'target': GameLib.D3.API.Renderer.MODE_TARGET,
|
||||||
'canvas and target': GameLib.D3.API.Renderer.MODE_CANVAS_AND_TARGET
|
'canvas and target': GameLib.D3.API.Renderer.MODE_CANVAS_AND_TARGET,
|
||||||
|
'edit': GameLib.D3.API.Renderer.MODE_EDIT
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
|
@ -355,50 +355,51 @@ GameLib.System.Input.prototype.registerMouseControls = function(mouseControl) {
|
||||||
mouseControl.domElement.instance.addEventListener(
|
mouseControl.domElement.instance.addEventListener(
|
||||||
'mousedown',
|
'mousedown',
|
||||||
this.mouseDown,
|
this.mouseDown,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.addEventListener(
|
mouseControl.domElement.instance.addEventListener(
|
||||||
'mousemove',
|
'mousemove',
|
||||||
this.mouseMove,
|
this.mouseMove,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.addEventListener(
|
mouseControl.domElement.instance.addEventListener(
|
||||||
'wheel',
|
'wheel',
|
||||||
this.mouseWheel,
|
this.mouseWheel,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.addEventListener(
|
mouseControl.domElement.instance.addEventListener(
|
||||||
'mouseup',
|
'mouseup',
|
||||||
this.mouseUp,
|
this.mouseUp,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
GameLib.System.Input.prototype.registerEditorControls = function(editorControl) {
|
GameLib.System.Input.prototype.registerEditorControls = function(editorControl) {
|
||||||
|
//
|
||||||
/**
|
// /**
|
||||||
* If we already have mouse controls, we don't want to add another event listener onto the DOM
|
// * If we already have mouse controls, we don't want to add another event listener onto the DOM
|
||||||
*/
|
// */
|
||||||
this.mouseControls.map(
|
// this.mouseControls.map(
|
||||||
function(mouseControl) {
|
// function(mouseControl) {
|
||||||
if (mouseControl.domElement.instance === editorControl.domElement.instance) {
|
// if (mouseControl.domElement.instance === editorControl.domElement.instance) {
|
||||||
this.deRegisterMouseControls(mouseControl);
|
// this.deRegisterMouseControls(mouseControl);
|
||||||
}
|
// }
|
||||||
}.bind(this)
|
// }.bind(this)
|
||||||
);
|
// );
|
||||||
|
//
|
||||||
/**
|
// /**
|
||||||
* If we already have keyboard controls, we don't want to add another event listener onto the DOM
|
// * If we already have keyboard controls, we don't want to add another event listener onto the DOM
|
||||||
*/
|
// */
|
||||||
this.keyboardControls.map(
|
// this.keyboardControls.map(
|
||||||
function(keyboardControl) {
|
// function(keyboardControl) {
|
||||||
if (keyboardControl.domElement.instance === editorControl.domElement.instance) {
|
// if (keyboardControl.domElement.instance === editorControl.domElement.instance) {
|
||||||
this.deRegisterKeyboardControls(keyboardControl);
|
// this.deRegisterKeyboardControls(keyboardControl);
|
||||||
}
|
// }
|
||||||
}.bind(this)
|
// }.bind(this)
|
||||||
);
|
// );
|
||||||
|
|
||||||
editorControl.domElement.instance.addEventListener(
|
editorControl.domElement.instance.addEventListener(
|
||||||
'mousedown',
|
'mousedown',
|
||||||
|
@ -534,24 +535,25 @@ GameLib.System.Input.prototype.deRegisterMouseControls = function(mouseControl)
|
||||||
mouseControl.domElement.instance.removeEventListener(
|
mouseControl.domElement.instance.removeEventListener(
|
||||||
'mousedown',
|
'mousedown',
|
||||||
this.mouseDown,
|
this.mouseDown,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.removeEventListener(
|
mouseControl.domElement.instance.removeEventListener(
|
||||||
'mousemove',
|
'mousemove',
|
||||||
this.mouseMove,
|
this.mouseMove,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.removeEventListener(
|
mouseControl.domElement.instance.removeEventListener(
|
||||||
'wheel',
|
'wheel',
|
||||||
this.mouseWheel,
|
this.mouseWheel,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
mouseControl.domElement.instance.removeEventListener(
|
mouseControl.domElement.instance.removeEventListener(
|
||||||
'mouseup',
|
'mouseup',
|
||||||
this.mouseUp,
|
this.mouseUp,
|
||||||
true
|
false
|
||||||
);
|
);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -250,11 +250,14 @@ GameLib.System.Render.prototype.render = function(data) {
|
||||||
|
|
||||||
var camera = renderer.camera;
|
var camera = renderer.camera;
|
||||||
|
|
||||||
/**
|
if (renderer.renderMode === GameLib.D3.API.Renderer.MODE_EDIT) {
|
||||||
* A scene's renderCamera overrides the renderer camera
|
|
||||||
*/
|
if (!renderer.editCamera || !renderer.editCamera.instance) {
|
||||||
if (scene.renderCamera && scene.renderCamera.instance) {
|
console.warn('edit camera not ready');
|
||||||
camera = scene.renderCamera;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
camera = renderer.editCamera;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -288,6 +291,11 @@ GameLib.System.Render.prototype.render = function(data) {
|
||||||
scene.instance,
|
scene.instance,
|
||||||
camera.instance
|
camera.instance
|
||||||
);
|
);
|
||||||
|
} else if (renderer.renderMode === GameLib.D3.API.Renderer.MODE_EDIT) {
|
||||||
|
renderer.instance.render(
|
||||||
|
scene.instance,
|
||||||
|
camera.instance
|
||||||
|
)
|
||||||
} else {
|
} else {
|
||||||
console.warn('unknown render mode:' + renderer.renderMode);
|
console.warn('unknown render mode:' + renderer.renderMode);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue