|  | @@ -92,6 +92,86 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |              };
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              this.state.kernel = this.kernel.kernel.kernel;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            this.aframeDef = {
 | 
	
		
			
				|  |  | +                'A-BOX':    [
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-map', 'ambient-occlusion-map-intensity',
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-texture-offset', 'ambient-occlusion-texture-repeat',
 | 
	
		
			
				|  |  | +                    'color',  'depth', 'displacement-bias', 'displacement-map',
 | 
	
		
			
				|  |  | +                    'displacement-scale', 'displacement-texture-offset',
 | 
	
		
			
				|  |  | +                    'displacement-texture-repeat', 'env-map',
 | 
	
		
			
				|  |  | +                    'fog', 'height', 'metalness',
 | 
	
		
			
				|  |  | +                    'normal-map', 'normal-scale',
 | 
	
		
			
				|  |  | +                    'normal-texture-offset', 'normal-texture-repeat',
 | 
	
		
			
				|  |  | +                    'repeat', 'roughness', 'segments-depth',
 | 
	
		
			
				|  |  | +                    'segments-height', 'segments-width',
 | 
	
		
			
				|  |  | +                    'spherical-env-map', 'src', 'width',
 | 
	
		
			
				|  |  | +                    'wireframe', 'wireframe-linewidth'],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                'A-SPHERE': [
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-map', 'ambient-occlusion-map-intensity',
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-texture-offset', 'ambient-occlusion-texture-repeat',
 | 
	
		
			
				|  |  | +                    'color', 'displacement-bias', 'displacement-map',
 | 
	
		
			
				|  |  | +                    'displacement-scale', 'displacement-texture-offset',
 | 
	
		
			
				|  |  | +                    'displacement-texture-repeat', 'env-map',
 | 
	
		
			
				|  |  | +                    'fog', 'height', 'metalness',
 | 
	
		
			
				|  |  | +                    'normal-map', 'normal-scale',
 | 
	
		
			
				|  |  | +                    'normal-texture-offset', 'normal-texture-repeat',
 | 
	
		
			
				|  |  | +                    'phi-length', 'phi-start', 'radius', 
 | 
	
		
			
				|  |  | +                    'repeat', 'roughness', 'segments-depth',
 | 
	
		
			
				|  |  | +                    'segments-height', 'segments-width',
 | 
	
		
			
				|  |  | +                    'spherical-env-map', 'src', 
 | 
	
		
			
				|  |  | +                    'theta-length', 'theta-start',
 | 
	
		
			
				|  |  | +                    'width',  'wireframe', 'wireframe-linewidth'
 | 
	
		
			
				|  |  | +                ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                'A-PLANE': [
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-map', 'ambient-occlusion-map-intensity',
 | 
	
		
			
				|  |  | +                    'ambient-occlusion-texture-offset', 'ambient-occlusion-texture-repeat',
 | 
	
		
			
				|  |  | +                    'color', 'displacement-bias', 'displacement-map',
 | 
	
		
			
				|  |  | +                    'displacement-scale', 'displacement-texture-offset',
 | 
	
		
			
				|  |  | +                    'displacement-texture-repeat', 'env-map',
 | 
	
		
			
				|  |  | +                    'fog', 'height', 'metalness',
 | 
	
		
			
				|  |  | +                    'normal-map', 'normal-scale',
 | 
	
		
			
				|  |  | +                    'normal-texture-offset', 'normal-texture-repeat',
 | 
	
		
			
				|  |  | +                    'repeat', 'roughness',
 | 
	
		
			
				|  |  | +                    'segments-height', 'segments-width',
 | 
	
		
			
				|  |  | +                    'spherical-env-map', 'src', 'width',
 | 
	
		
			
				|  |  | +                    'wireframe', 'wireframe-linewidth'
 | 
	
		
			
				|  |  | +                ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                'A-TEXT': [
 | 
	
		
			
				|  |  | +                        'align', 'alpha-test', 'anchor',
 | 
	
		
			
				|  |  | +                        'baseline', 'color', 'font',
 | 
	
		
			
				|  |  | +                        'font-image', 'height',
 | 
	
		
			
				|  |  | +                        'letter-spacing', 'line-height',
 | 
	
		
			
				|  |  | +                        'opacity', 'shader',
 | 
	
		
			
				|  |  | +                        'side', 'tab-size',
 | 
	
		
			
				|  |  | +                        'transparent', 'value',
 | 
	
		
			
				|  |  | +                        'white-space', 'width',
 | 
	
		
			
				|  |  | +                        'wrap-count', 'wrap-pixels',
 | 
	
		
			
				|  |  | +                        'z-offset'
 | 
	
		
			
				|  |  | +                    ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                'A-SKY': [
 | 
	
		
			
				|  |  | +                    'color', 'metalness', 'opacity',
 | 
	
		
			
				|  |  | +                    'phi-length', 'phi-start', 'radius',
 | 
	
		
			
				|  |  | +                    'repeat', 'roughness', 'segments-height',
 | 
	
		
			
				|  |  | +                    'segments-width', 'shader',
 | 
	
		
			
				|  |  | +                    'side', 'src',
 | 
	
		
			
				|  |  | +                    'theta-length', 'theta-start',
 | 
	
		
			
				|  |  | +                    'transparent'
 | 
	
		
			
				|  |  | +                    ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                'A-LIGHT': [
 | 
	
		
			
				|  |  | +                    'angle', 'color', 'decay', 'distance',
 | 
	
		
			
				|  |  | +                    'ground-color', 'intensity', 'penumbra',
 | 
	
		
			
				|  |  | +                    'type', 'target'
 | 
	
		
			
				|  |  | +                    ]
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // == Model API ============================================================================
 | 
	
	
		
			
				|  | @@ -249,65 +329,19 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        // case "interpolation":
 | 
	
		
			
				|  |  | -                        //     aframeObject.setAttribute('interpolation', { duration: propertyValue});
 | 
	
		
			
				|  |  | -                        //         break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                          case "worldPosition":
 | 
	
		
			
				|  |  | -                       
 | 
	
		
			
				|  |  | -                        break;
 | 
	
		
			
				|  |  | +                            break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          case "position":
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        this.state.setAFrameProperty('position', propertyValue, aframeObject);
 | 
	
		
			
				|  |  | -                            // if (propertyValue.hasOwnProperty('x')) {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('position', propertyValue)
 | 
	
		
			
				|  |  | -                            // } else
 | 
	
		
			
				|  |  | -                            //     if (Array.isArray(propertyValue)) {
 | 
	
		
			
				|  |  | -                            //         aframeObject.setAttribute('position', { x: propertyValue[0], y: propertyValue[1], z: propertyValue[2] })
 | 
	
		
			
				|  |  | -                            //     } else if (typeof propertyValue === 'string') {
 | 
	
		
			
				|  |  | -                            //         aframeObject.setAttribute('position', AFRAME.utils.coordinates.parse(propertyValue))
 | 
	
		
			
				|  |  | -                            //     }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +                            this.state.setAFrameProperty('position', propertyValue, aframeObject);
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                          case "rotation":
 | 
	
		
			
				|  |  | -                        this.state.setAFrameProperty('rotation', propertyValue, aframeObject);
 | 
	
		
			
				|  |  | -                            // if (Array.isArray(propertyValue)) {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('rotation', { x: propertyValue[0], y: propertyValue[1], z: propertyValue[2] });
 | 
	
		
			
				|  |  | -                            // } else {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('rotation', AFRAME.utils.coordinates.parse(propertyValue));
 | 
	
		
			
				|  |  | -                            // }
 | 
	
		
			
				|  |  | +                            this.state.setAFrameProperty('rotation', propertyValue, aframeObject);
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                          case "scale":
 | 
	
		
			
				|  |  |                          this.state.setAFrameProperty('scale', propertyValue, aframeObject);
 | 
	
		
			
				|  |  | -                            // if (Array.isArray(propertyValue)) {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('scale', { x: propertyValue[0], y: propertyValue[1], z: propertyValue[2] });
 | 
	
		
			
				|  |  | -                            // } else {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('scale', AFRAME.utils.coordinates.parse(propertyValue));
 | 
	
		
			
				|  |  | -                            // }
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        // case "color":
 | 
	
		
			
				|  |  | -                        //     aframeObject.setAttribute('color', propertyValue);
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        // case "transparent":
 | 
	
		
			
				|  |  | -                        //     aframeObject.setAttribute('material', 'transparent', propertyValue);
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        // case "opacity":
 | 
	
		
			
				|  |  | -                        //     aframeObject.setAttribute('material', 'opacity', propertyValue);
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "fog":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('material', 'fog', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "wireframe":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('wireframe', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "wireframe-linewidth":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('wireframeLinewidth', propertyValue);
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          case "clickable":
 | 
	
	
		
			
				|  | @@ -338,17 +372,6 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                          //     break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "src":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('src', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "repeat":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('repeat', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "side":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('material', {'side': propertyValue});
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                          // case "look-controls-enabled":
 | 
	
		
			
				|  |  |                          //     aframeObject.setAttribute('look-controls', 'enabled', propertyValue);
 | 
	
		
			
				|  |  |                          //     break;
 | 
	
	
		
			
				|  | @@ -382,22 +405,18 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                if (value === undefined && aframeObject.nodeName == "A-SKY") {
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "IMG") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('color',propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "side":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('side',propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        case "itemID":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('id', propertyValue);
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "src":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('src',propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        case "itemSrc":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('src', propertyValue);
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          default:
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
	
		
			
				|  | @@ -405,25 +424,18 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                if (value === undefined && aframeObject.nodeName == "A-TEXT") {
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "AUDIO") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "value":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('value', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('color', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "side":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('side', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        case "itemID":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('id', propertyValue);
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "font":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('font', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        case "itemSrc":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('src', propertyValue);
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          default:
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
	
		
			
				|  | @@ -431,6 +443,25 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "A-SKY") {
 | 
	
		
			
				|  |  | +                    value = propertyValue;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-SKY'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  | +                            value = undefined;
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "A-TEXT") {
 | 
	
		
			
				|  |  | +                    value = propertyValue;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-TEXT'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  | +                            value = undefined;
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  | +                   
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-SCENE") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -444,9 +475,9 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                          aframeObject.setAttribute('background', {'transparent': propertyValue} );
 | 
	
		
			
				|  |  |                          break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "fog":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('fog', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        // case "fog":
 | 
	
		
			
				|  |  | +                        //     aframeObject.setAttribute('fog', propertyValue);
 | 
	
		
			
				|  |  | +                        //     break;
 | 
	
		
			
				|  |  |                          case "assets":
 | 
	
		
			
				|  |  |                              let assetsEl = document.querySelector('a-assets');
 | 
	
		
			
				|  |  |                              if (!assetsEl) {
 | 
	
	
		
			
				|  | @@ -481,66 +512,43 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                if (value === undefined && aframeObject.nodeName == "A-BOX") {
 | 
	
		
			
				|  |  | -                    value = propertyValue;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "depth":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('depth', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "height":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('height', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "width":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('width', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                           
 | 
	
		
			
				|  |  | -                            // let materialName = '/' + node.name + '/material';
 | 
	
		
			
				|  |  | -                            // let materialID = vwf.find('', materialName)[0];
 | 
	
		
			
				|  |  | -                            // if (materialID) {
 | 
	
		
			
				|  |  | -                            //     //self.kernel.setProperty(materialID, 'color', propertyValue)
 | 
	
		
			
				|  |  | -                            // }   else {
 | 
	
		
			
				|  |  | -                            //     aframeObject.setAttribute('color', propertyValue);
 | 
	
		
			
				|  |  | -                            // }
 | 
	
		
			
				|  |  | -                            
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('color', propertyValue);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "A-BOX") {
 | 
	
		
			
				|  |  | +                    value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        default:
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-BOX'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-LIGHT") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-LIGHT'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  | +                            value = undefined;
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        //"angle", "color", "decay", "distance", "ground-color", "intensity", "penumbra", "type", "target"
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('color', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "type":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('type', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "intensity":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('intensity', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "distance":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('distance', propertyValue);
 | 
	
		
			
				|  |  | +                    switch (propertyName) {
 | 
	
		
			
				|  |  | +                        case "castShadow":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('light', 'castShadow', propertyValue);
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                        case "shadowCameraVisible":
 | 
	
		
			
				|  |  | +                            aframeObject.setAttribute('light', 'shadowCameraVisible', propertyValue);
 | 
	
		
			
				|  |  | +                            break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          default:
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                            break; 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-GLTF-MODEL") {
 | 
	
	
		
			
				|  | @@ -620,34 +628,20 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-PLANE") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "height":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('height', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "width":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('width', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        default:
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-PLANE'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-SPHERE") {
 | 
	
		
			
				|  |  |                      value = propertyValue;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "radius":
 | 
	
		
			
				|  |  | -                            aframeObject.setAttribute('radius', propertyValue);
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        default:
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-SPHERE'].forEach(element => {
 | 
	
		
			
				|  |  | +                        element == propertyName ? aframeObject.setAttribute(element, propertyValue) :
 | 
	
		
			
				|  |  |                              value = undefined;
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -760,13 +754,6 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        // case "interpolation":
 | 
	
		
			
				|  |  | -                        //     var interpolation = aframeObject.getAttribute('interpolation');
 | 
	
		
			
				|  |  | -                        //     if (interpolation !== null && interpolation !== undefined) {
 | 
	
		
			
				|  |  | -                        //         value = interpolation.duration;
 | 
	
		
			
				|  |  | -                        //     }
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                          case "worldPosition":
 | 
	
		
			
				|  |  |                          var pos = aframeObject.object3D.getWorldPosition();
 | 
	
		
			
				|  |  |                          if (pos !== undefined) {
 | 
	
	
		
			
				|  | @@ -794,55 +781,10 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                       
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "side":
 | 
	
		
			
				|  |  | -                        if (aframeObject.getAttribute('material')) {
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('material').side;
 | 
	
		
			
				|  |  | -                        }
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "fog":
 | 
	
		
			
				|  |  | -                            if (aframeObject.getAttribute('material')) {
 | 
	
		
			
				|  |  | -                                value = aframeObject.getAttribute('material').fog;
 | 
	
		
			
				|  |  | -                            }
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                         // case "color":
 | 
	
		
			
				|  |  | -                        //     value = aframeObject.getAttribute('color');
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        // case "opacity":
 | 
	
		
			
				|  |  | -                        //     if (aframeObject.getAttribute('material')) {
 | 
	
		
			
				|  |  | -                        //         value = aframeObject.getAttribute('material').opacity;
 | 
	
		
			
				|  |  | -                        //     }
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        // case "transparent":
 | 
	
		
			
				|  |  | -                        //     if (aframeObject.getAttribute('material')) {
 | 
	
		
			
				|  |  | -                        //         value = aframeObject.getAttribute('material').transparent;
 | 
	
		
			
				|  |  | -                        //     }
 | 
	
		
			
				|  |  | -                        //     break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "wireframe":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('wireframe');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "wireframe-linewidth":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('wireframeLinewidth');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                          case "clickable":
 | 
	
		
			
				|  |  |                              value = node.events.clickable;
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                        case "src":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('src');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "repeat":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('repeat');
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                          // case "look-controls-enabled":
 | 
	
		
			
				|  |  |                          //     var look = aframeObject.getAttribute('look-controls-enabled');
 | 
	
		
			
				|  |  |                          //     if (look !== null && look !== undefined) {
 | 
	
	
		
			
				|  | @@ -881,12 +823,44 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "IMG") {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    switch (propertyName) {
 | 
	
		
			
				|  |  | +                        
 | 
	
		
			
				|  |  | +                        case "itemID":
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute('id');
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  | +                    
 | 
	
		
			
				|  |  | +                        case "itemSrc":
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute('src');
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                      
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "AUDIO") {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    switch (propertyName) {
 | 
	
		
			
				|  |  | +                        
 | 
	
		
			
				|  |  | +                        case "itemID":
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute('id');
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  | +                    
 | 
	
		
			
				|  |  | +                        case "itemSrc":
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute('src');
 | 
	
		
			
				|  |  | +                        break;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                      
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-SCENE") {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "fog":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('fog');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | +                        // case "fog":
 | 
	
		
			
				|  |  | +                        //     value = aframeObject.getAttribute('fog');
 | 
	
		
			
				|  |  | +                        //     break;
 | 
	
		
			
				|  |  |                          
 | 
	
		
			
				|  |  |                          case "color":
 | 
	
		
			
				|  |  |                          if (aframeObject.getAttribute('background')) {
 | 
	
	
		
			
				|  | @@ -904,97 +878,71 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-SKY") {
 | 
	
		
			
				|  |  |                      
 | 
	
		
			
				|  |  | -                                        switch (propertyName) {
 | 
	
		
			
				|  |  | -                                            case "color":
 | 
	
		
			
				|  |  | -                                                value = aframeObject.getAttribute('color');
 | 
	
		
			
				|  |  | -                                                break;
 | 
	
		
			
				|  |  | -                                            case "side":
 | 
	
		
			
				|  |  | -                                                value = aframeObject.getAttribute('side');
 | 
	
		
			
				|  |  | -                                                break;
 | 
	
		
			
				|  |  | -                                            case "src":
 | 
	
		
			
				|  |  | -                                                value = aframeObject.getAttribute('src');
 | 
	
		
			
				|  |  | -                                                break;
 | 
	
		
			
				|  |  | -                                        }
 | 
	
		
			
				|  |  | -                                    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                if (value === undefined && aframeObject.nodeName == "A-BOX") {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "depth":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('depth');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "height":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('height');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "width":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('width');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('color');
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-SKY'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +               
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-LIGHT") {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    //"angle", "color", "decay", "distance", "ground-color", "intensity", "penumbra", "type", "target"
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-LIGHT'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                      switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('color');
 | 
	
		
			
				|  |  | +                        case "castShadow":
 | 
	
		
			
				|  |  | +                        value = aframeObject.getAttribute('light').castShadow;
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  | -                        case "type":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('type');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "distance":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('distance');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "intensity":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('intensity');
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        case "shadowCameraVisible":
 | 
	
		
			
				|  |  | +                        value = aframeObject.getAttribute('light').shadowCameraVisible;
 | 
	
		
			
				|  |  |                              break;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                if (value === undefined && aframeObject.nodeName == "A-BOX") {
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-BOX'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-PLANE") {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "height":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('height');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "width":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('width');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                   self.aframeDef['A-PLANE'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-SPHERE") {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "radius":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('radius');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-SPHERE'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  if (value === undefined && aframeObject.nodeName == "A-TEXT") {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    switch (propertyName) {
 | 
	
		
			
				|  |  | -                        case "value":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('value');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        case "color":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('color');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "side":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('side');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        case "font":
 | 
	
		
			
				|  |  | -                            value = aframeObject.getAttribute('font');
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | +                    self.aframeDef['A-TEXT'].forEach(element => {
 | 
	
		
			
				|  |  | +                        if (element == propertyName) {
 | 
	
		
			
				|  |  | +                            value = aframeObject.getAttribute(element);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                    })
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1155,6 +1103,29 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                  aframeObj.setAttribute('src', "");
 | 
	
		
			
				|  |  |                  assets.appendChild(aframeObj);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        } else if (self.state.isAFrameClass(protos, "http://vwf.example.com/aframe/a-asset-image-item.vwf")) {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            let assets = document.querySelector('a-assets');
 | 
	
		
			
				|  |  | +            if (assets){
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                aframeObj = document.createElement('img');
 | 
	
		
			
				|  |  | +                aframeObj.setAttribute('id', "item-"+GUID());
 | 
	
		
			
				|  |  | +                aframeObj.setAttribute('src', "");
 | 
	
		
			
				|  |  | +                assets.appendChild(aframeObj);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        } else if (self.state.isAFrameClass(protos, "http://vwf.example.com/aframe/a-asset-audio-item.vwf")) {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            let assets = document.querySelector('a-assets');
 | 
	
		
			
				|  |  | +            if (assets){
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                aframeObj = document.createElement('audio');
 | 
	
		
			
				|  |  | +                aframeObj.setAttribute('id', "item-"+GUID());
 | 
	
		
			
				|  |  | +                aframeObj.setAttribute('src', "");
 | 
	
		
			
				|  |  | +                assets.appendChild(aframeObj);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          } else if (self.state.isAFrameClass(protos, "http://vwf.example.com/aframe/asky.vwf")) {
 | 
	
		
			
				|  |  |              aframeObj = document.createElement('a-sky');
 | 
	
	
		
			
				|  | @@ -1190,7 +1161,7 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |              aframeObj = document.createElement('a-entity');
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        if (aframeObj.nodeName !== "A-ASSET-ITEM"){
 | 
	
		
			
				|  |  | +        if (aframeObj.nodeName !== "A-ASSET-ITEM" && aframeObj.nodeName !== "IMG" && aframeObj.nodeName !== "AUIDO"){
 | 
	
		
			
				|  |  |              aframeObj.setAttribute('id', node.ID);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1210,7 +1181,7 @@ define(["module", "vwf/model", "vwf/utility"], function (module, model, utility)
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      parent.children.push(node.ID);
 | 
	
		
			
				|  |  |                      //console.info( "Adding child: " + childID + " to " + nodeID );
 | 
	
		
			
				|  |  | -                    if (node.aframeObj.nodeName !== "A-ASSET-ITEM"){
 | 
	
		
			
				|  |  | +                    if (node.aframeObj.nodeName !== "A-ASSET-ITEM" && node.aframeObj.nodeName !== "IMG" && node.aframeObj.nodeName !== "AUIDO"){
 | 
	
		
			
				|  |  |                      parent.aframeObj.appendChild(node.aframeObj);
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 |