Skip to content
Snippets Groups Projects
Commit 6588ef40 authored by Alexander Rose's avatar Alexander Rose
Browse files

wip, render teweaks

parent 5a0557b4
No related branches found
No related tags found
No related merge requests found
...@@ -113,6 +113,7 @@ namespace Viewer { ...@@ -113,6 +113,7 @@ namespace Viewer {
let pickDirty = true let pickDirty = true
let drawPending = false let drawPending = false
let lastRenderTime = -1
const prevProjectionView = Mat4.zero() const prevProjectionView = Mat4.zero()
const prevSceneView = Mat4.zero() const prevSceneView = Mat4.zero()
...@@ -129,9 +130,9 @@ namespace Viewer { ...@@ -129,9 +130,9 @@ namespace Viewer {
} }
function mark(loci: Loci, action: MarkerAction) { function mark(loci: Loci, action: MarkerAction) {
reprMap.forEach((roSet, repr) => repr.mark(loci, action)) // reprMap.forEach((roSet, repr) => repr.mark(loci, action))
scene.update() // scene.update()
requestDraw() // requestDraw()
} }
let nearPlaneDelta = 0 let nearPlaneDelta = 0
...@@ -156,7 +157,7 @@ namespace Viewer { ...@@ -156,7 +157,7 @@ namespace Viewer {
let fogNear = targetDistance - camera.near + 1 * focusRadius - nearPlaneDelta; let fogNear = targetDistance - camera.near + 1 * focusRadius - nearPlaneDelta;
let fogFar = targetDistance - camera.near + 2 * focusRadius - nearPlaneDelta; let fogFar = targetDistance - camera.near + 2 * focusRadius - nearPlaneDelta;
//console.log(fogNear, fogFar); // console.log(fogNear, fogFar);
camera.fogNear = Math.max(fogNear, 0.1); camera.fogNear = Math.max(fogNear, 0.1);
camera.fogFar = Math.max(fogFar, 0.2); camera.fogFar = Math.max(fogFar, 0.2);
...@@ -181,8 +182,9 @@ namespace Viewer { ...@@ -181,8 +182,9 @@ namespace Viewer {
Mat4.copy(prevSceneView, scene.view) Mat4.copy(prevSceneView, scene.view)
renderer.render(scene, variant) renderer.render(scene, variant)
if (variant === 'draw') { if (variant === 'draw') {
lastRenderTime = performance.now()
pickDirty = true pickDirty = true
pick() // pick()
} }
didRender = true didRender = true
} }
...@@ -204,10 +206,14 @@ namespace Viewer { ...@@ -204,10 +206,14 @@ namespace Viewer {
function animate () { function animate () {
draw(false) draw(false)
if (performance.now() - lastRenderTime > 500) {
if (pickDirty) pick()
}
window.requestAnimationFrame(() => animate()) window.requestAnimationFrame(() => animate())
} }
function pick() { function pick() {
console.log('pick')
render('pickObject', pickDirty) render('pickObject', pickDirty)
render('pickInstance', pickDirty) render('pickInstance', pickDirty)
render('pickGroup', pickDirty) render('pickGroup', pickDirty)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment