This commit is contained in:
Leon van Kammen 2023-07-04 18:15:08 +02:00
parent 11edb4e963
commit e33591f432
5 changed files with 86 additions and 14 deletions

View file

@ -1337,11 +1337,12 @@ xrf.frag.rot = function(v, opts){
xrf.frag.src = function(v, opts){
opts.embedded = v // indicate embedded XR fragment
let { mesh, model, camera, scene, renderer, THREE} = opts
let src = new THREE.Group()
if( v.string[0] == "#" ){ // local
console.log(" └ instancing src")
let frag = xrfragment.URI.parse(v.string)
console.log(" └ instancing src")
let src = new THREE.Group()
let frag = xrfragment.URI.parse(v.string)
const localSRC = () => {
// apply embedded XR fragments
setTimeout( () => {
@ -1370,6 +1371,25 @@ xrf.frag.src = function(v, opts){
if( !opts.recursive ) mesh.material.visible = false // lets hide the preview object because deleting disables animations+nested objs
},10)
}
const externalSRC = () => {
debugger
console.log("external !")
console.dir(v)
console.dir(frag)
//// apply URI XR Fragments inside src-value
//for( var i in frag ){
// xrf.eval.fragment(i, Object.assign(opts,{frag, model,scene}))
//}
//let {urlObj,dir,file,hash,ext} = xrf.parseUrl(url)
//const Loader = xrf.loaders[ext]
//if( !Loader ) throw 'xrfragment: no loader passed to xrfragment for extension .'+ext
//loader = loader || new Loader().setPath( dir )
}
if( v.string[0] == "#" ) localSRC() // local
else externalSRC()
}
window.AFRAME.registerComponent('xrf', {
schema: {

View file

@ -1337,11 +1337,12 @@ xrf.frag.rot = function(v, opts){
xrf.frag.src = function(v, opts){
opts.embedded = v // indicate embedded XR fragment
let { mesh, model, camera, scene, renderer, THREE} = opts
let src = new THREE.Group()
if( v.string[0] == "#" ){ // local
console.log(" └ instancing src")
let frag = xrfragment.URI.parse(v.string)
console.log(" └ instancing src")
let src = new THREE.Group()
let frag = xrfragment.URI.parse(v.string)
const localSRC = () => {
// apply embedded XR fragments
setTimeout( () => {
@ -1370,4 +1371,23 @@ xrf.frag.src = function(v, opts){
if( !opts.recursive ) mesh.material.visible = false // lets hide the preview object because deleting disables animations+nested objs
},10)
}
const externalSRC = () => {
debugger
console.log("external !")
console.dir(v)
console.dir(frag)
//// apply URI XR Fragments inside src-value
//for( var i in frag ){
// xrf.eval.fragment(i, Object.assign(opts,{frag, model,scene}))
//}
//let {urlObj,dir,file,hash,ext} = xrf.parseUrl(url)
//const Loader = xrf.loaders[ext]
//if( !Loader ) throw 'xrfragment: no loader passed to xrfragment for extension .'+ext
//loader = loader || new Loader().setPath( dir )
}
if( v.string[0] == "#" ) localSRC() // local
else externalSRC()
}

View file

@ -1337,11 +1337,12 @@ xrf.frag.rot = function(v, opts){
xrf.frag.src = function(v, opts){
opts.embedded = v // indicate embedded XR fragment
let { mesh, model, camera, scene, renderer, THREE} = opts
let src = new THREE.Group()
if( v.string[0] == "#" ){ // local
console.log(" └ instancing src")
let frag = xrfragment.URI.parse(v.string)
console.log(" └ instancing src")
let src = new THREE.Group()
let frag = xrfragment.URI.parse(v.string)
const localSRC = () => {
// apply embedded XR fragments
setTimeout( () => {
@ -1370,5 +1371,24 @@ xrf.frag.src = function(v, opts){
if( !opts.recursive ) mesh.material.visible = false // lets hide the preview object because deleting disables animations+nested objs
},10)
}
const externalSRC = () => {
debugger
console.log("external !")
console.dir(v)
console.dir(frag)
//// apply URI XR Fragments inside src-value
//for( var i in frag ){
// xrf.eval.fragment(i, Object.assign(opts,{frag, model,scene}))
//}
//let {urlObj,dir,file,hash,ext} = xrf.parseUrl(url)
//const Loader = xrf.loaders[ext]
//if( !Loader ) throw 'xrfragment: no loader passed to xrfragment for extension .'+ext
//loader = loader || new Loader().setPath( dir )
}
if( v.string[0] == "#" ) localSRC() // local
else externalSRC()
}
export default xrf;

View file

@ -677,7 +677,7 @@
27,
28
],
"name" : "portal_external",
"name" : "src_external",
"rotation" : [
0,
-0.969214141368866,
@ -1259,7 +1259,8 @@
"NORMAL" : 86,
"TEXCOORD_0" : 87
},
"indices" : 88
"indices" : 88,
"material" : 7
}
]
},

View file

@ -39,7 +39,18 @@ xrf.frag.src = function(v, opts){
}
const externalSRC = () => {
debugger
console.log("external !")
console.dir(v)
console.dir(frag)
//// apply URI XR Fragments inside src-value
//for( var i in frag ){
// xrf.eval.fragment(i, Object.assign(opts,{frag, model,scene}))
//}
//let {urlObj,dir,file,hash,ext} = xrf.parseUrl(url)
//const Loader = xrf.loaders[ext]
//if( !Loader ) throw 'xrfragment: no loader passed to xrfragment for extension .'+ext
//loader = loader || new Loader().setPath( dir )
}