提交 ce269fde 编写于 作者: J Jerome Etienne

remove all mentions of markerCache by markerCloak! so more harrypotter :)

上级 1be34377
...@@ -154,26 +154,29 @@ ...@@ -154,26 +154,29 @@
// TODO to remove if webgl2 - better visual ? // TODO to remove if webgl2 - better visual ?
videoTexture.minFilter = THREE.NearestFilter videoTexture.minFilter = THREE.NearestFilter
var markerCache = new THREEx.ArMarkerCache(videoTexture); var markerCloak = new THREEx.ArMarkerCloak(videoTexture);
markerRoot.add(markerCache.object3d) markerRoot.add(markerCloak.object3d)
function toggleCache(){
if( markerCache.object3d.parent ){ // toggleCloak on click/keypress
markerRoot.remove(markerCache.object3d) function toggleCloak(){
if( markerCloak.object3d.parent ){
markerRoot.remove(markerCloak.object3d)
}else{ }else{
markerRoot.add(markerCache.object3d) markerRoot.add(markerCloak.object3d)
} }
} }
document.body.addEventListener('click', toggleCache) document.body.addEventListener('click', toggleCloak)
document.body.addEventListener('keypress', toggleCloak)
onRenderFcts.push(function(){ onRenderFcts.push(function(){
markerCache.update(markerRoot.matrix, camera.projectionMatrix) markerCloak.update(markerRoot.matrix, camera.projectionMatrix)
}) })
if( debugEnabled === true ){ if( debugEnabled === true ){
orthoScene.add(markerCache.orthoMesh) orthoScene.add(markerCloak.orthoMesh)
onRenderFcts.push(function(){ onRenderFcts.push(function(){
markerCache.orthoMesh.visible = markerRoot.visible markerCloak.orthoMesh.visible = markerRoot.visible
}) })
} }
......
...@@ -6,15 +6,15 @@ var THREEx = THREEx || {} ...@@ -6,15 +6,15 @@ var THREEx = THREEx || {}
* - cloakSegmentsHeight * - cloakSegmentsHeight
* - remove all mentions of cache, for cloak * - remove all mentions of cache, for cloak
*/ */
THREEx.ArMarkerCache = function(videoTexture){ THREEx.ArMarkerCloak = function(videoTexture){
var updateInShaderEnabled = true var updateInShaderEnabled = true
// build cloakMesh // build cloakMesh
// TODO if webgl2 use repeat warp, and not multi segment, this will reduce the geometry to draw // TODO if webgl2 use repeat warp, and not multi segment, this will reduce the geometry to draw
var geometry = new THREE.PlaneGeometry(1.3+0.25,1.85+0.25, 1, 8).translate(0,-0.3,0) var geometry = new THREE.PlaneGeometry(1.3+0.25,1.85+0.25, 1, 8).translate(0,-0.3,0)
var material = new THREE.ShaderMaterial( { var material = new THREE.ShaderMaterial( {
vertexShader: THREEx.ArMarkerCache.vertexShader, vertexShader: THREEx.ArMarkerCloak.vertexShader,
fragmentShader: THREEx.ArMarkerCache.fragmentShader, fragmentShader: THREEx.ArMarkerCloak.fragmentShader,
uniforms: { uniforms: {
texture: { texture: {
value: videoTexture value: videoTexture
...@@ -167,7 +167,7 @@ THREEx.ArMarkerCache = function(videoTexture){ ...@@ -167,7 +167,7 @@ THREEx.ArMarkerCache = function(videoTexture){
// Shaders // Shaders
////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////
THREEx.ArMarkerCache.markerSpaceShaderFunction = ` THREEx.ArMarkerCloak.markerSpaceShaderFunction = `
vec2 transformUvToMarkerSpace(vec2 originalUv){ vec2 transformUvToMarkerSpace(vec2 originalUv){
vec3 transformedUv; vec3 transformedUv;
// set transformedUv - from UV coord to clip coord // set transformedUv - from UV coord to clip coord
...@@ -191,7 +191,7 @@ THREEx.ArMarkerCache.markerSpaceShaderFunction = ` ...@@ -191,7 +191,7 @@ THREEx.ArMarkerCache.markerSpaceShaderFunction = `
} }
` `
THREEx.ArMarkerCache.vertexShader = THREEx.ArMarkerCache.markerSpaceShaderFunction + ` THREEx.ArMarkerCloak.vertexShader = THREEx.ArMarkerCloak.markerSpaceShaderFunction + `
varying vec2 vUv; varying vec2 vUv;
void main(){ void main(){
...@@ -208,7 +208,7 @@ THREEx.ArMarkerCache.vertexShader = THREEx.ArMarkerCache.markerSpaceShaderFuncti ...@@ -208,7 +208,7 @@ THREEx.ArMarkerCache.vertexShader = THREEx.ArMarkerCache.markerSpaceShaderFuncti
} }
`; `;
THREEx.ArMarkerCache.fragmentShader = ` THREEx.ArMarkerCloak.fragmentShader = `
varying vec2 vUv; varying vec2 vUv;
uniform sampler2D texture; uniform sampler2D texture;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册