From 96a0a8c916533eb5625816192ed38488f639326d Mon Sep 17 00:00:00 2001 From: Nivesh Rajbhandari Date: Wed, 22 Feb 2012 11:00:20 -0800 Subject: Integrating canvas-2d drawing and WebGL fixes, including adding back WebGL materials. Signed-off-by: Nivesh Rajbhandari --- .../RDGE/Materials/RadialBlurMaterial.js | 246 +++++++++++++++++++++ 1 file changed, 246 insertions(+) create mode 100644 js/helper-classes/RDGE/Materials/RadialBlurMaterial.js (limited to 'js/helper-classes/RDGE/Materials/RadialBlurMaterial.js') diff --git a/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js new file mode 100644 index 00000000..732800cf --- /dev/null +++ b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js @@ -0,0 +1,246 @@ +/* + This file contains proprietary software owned by Motorola Mobility, Inc.
+ No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.
+ (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. +
*/ + + + +/////////////////////////////////////////////////////////////////////// +// Class GLMaterial +// RDGE representation of a material. +/////////////////////////////////////////////////////////////////////// +function RadialBlurMaterial() +{ + // initialize the inherited members + this.inheritedFrom = GLMaterial; + this.inheritedFrom(); + + /////////////////////////////////////////////////////////////////////// + // Instance variables + /////////////////////////////////////////////////////////////////////// + this._name = "RadialBlurMaterial"; + this._shaderName = "radialBlur"; + + this._texMap = 'assets/images/cubelight.png'; + this._color = [1,0,0,1]; + + this._time = 0.0; + this._dTime = 0.01; + + /////////////////////////////////////////////////////////////////////// + // Property Accessors + /////////////////////////////////////////////////////////////////////// + this.getName = function() { return this._name; } + this.getShaderName = function() { return this._shaderName; } + + this.getTextureMap = function() { return this._texMap.slice(0); } + this.setTextureMap = function(m) { this._propValues[this._propNames[0]] = m.slice(0); this.updateTexture(); } + + this.isAnimated = function() { return true; } + + /////////////////////////////////////////////////////////////////////// + // Material Property Accessors + /////////////////////////////////////////////////////////////////////// + this._propNames = ["texmap", "color"]; + this._propLabels = ["Texture map", "Color"]; + this._propTypes = ["file", "color"]; + this._propValues = []; + + this._propValues[ this._propNames[0] ] = this._texMap.slice(0); + this._propValues[ this._propNames[1] ] = this._color.slice(0); + + this.setProperty = function( prop, value ) + { + // make sure we have legitimate imput + var ok = this.validateProperty( prop, value ); + if (!ok) + console.log( "invalid property in Radial Gradient Material:" + prop + " : " + value ); + + switch (prop) + { + case "texmap": + this.setTextureMap(value); + break; + + case "color": + this._propValues[prop] = value.slice(0); + if (this._shader && this._shader.default) + this._shader.default[prop].set(value); + break; + } + } + /////////////////////////////////////////////////////////////////////// + + + /////////////////////////////////////////////////////////////////////// + // Methods + /////////////////////////////////////////////////////////////////////// + // duplcate method requirde + this.dup = function( world ) + { + // allocate a new uber material + var newMat = new RadialBlurMaterial(); + + // copy over the current values; + var propNames = [], propValues = [], propTypes = [], propLabels = []; + this.getAllProperties( propNames, propValues, propTypes, propLabels); + var n = propNames.length; + for (var i=0; i - This file contains proprietary software owned by Motorola Mobility, Inc.
- No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.
- (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. - */ - - - -/////////////////////////////////////////////////////////////////////// -// Class GLMaterial -// RDGE representation of a material. -/////////////////////////////////////////////////////////////////////// -function RadialBlurMaterial() -{ - // initialize the inherited members - this.inheritedFrom = GLMaterial; - this.inheritedFrom(); - - /////////////////////////////////////////////////////////////////////// - // Instance variables - /////////////////////////////////////////////////////////////////////// - this._name = "RadialBlurMaterial"; - this._shaderName = "radialBlur"; - - this._texMap = 'assets/images/cubelight.png'; - this._color = [1,0,0,1]; - - this._time = 0.0; - this._dTime = 0.01; - - /////////////////////////////////////////////////////////////////////// - // Property Accessors - /////////////////////////////////////////////////////////////////////// - this.getName = function() { return this._name; } - this.getShaderName = function() { return this._shaderName; } - - this.getTextureMap = function() { return this._texMap.slice(0); } - this.setTextureMap = function(m) { this._propValues[this._propNames[0]] = m.slice(0); this.updateTexture(); } - - this.isAnimated = function() { return true; } - - /////////////////////////////////////////////////////////////////////// - // Material Property Accessors - /////////////////////////////////////////////////////////////////////// - this._propNames = ["texmap", "color"]; - this._propLabels = ["Texture map", "Color"]; - this._propTypes = ["file", "color"]; - this._propValues = []; - - this._propValues[ this._propNames[0] ] = this._texMap.slice(0); - this._propValues[ this._propNames[1] ] = this._color.slice(0); - - this.setProperty = function( prop, value ) - { - // make sure we have legitimate imput - var ok = this.validateProperty( prop, value ); - if (!ok) - console.log( "invalid property in Radial Gradient Material:" + prop + " : " + value ); - - switch (prop) - { - case "texmap": - this.setTextureMap(value); - break; - - case "color": - this._propValues[prop] = value.slice(0); - if (this._shader && this._shader.default) - this._shader.default[prop].set(value); - break; - } - } - /////////////////////////////////////////////////////////////////////// - - - /////////////////////////////////////////////////////////////////////// - // Methods - /////////////////////////////////////////////////////////////////////// - // duplcate method requirde - this.dup = function( world ) - { - // allocate a new uber material - var newMat = new RadialBlurMaterial(); - - // copy over the current values; - var propNames = [], propValues = [], propTypes = [], propLabels = []; - this.getAllProperties( propNames, propValues, propTypes, propLabels); - var n = propNames.length; - for (var i=0; i --- .../RDGE/Materials/RadialBlurMaterial.js | 246 +++++++++++++++++++++ 1 file changed, 246 insertions(+) create mode 100644 js/helper-classes/RDGE/Materials/RadialBlurMaterial.js (limited to 'js/helper-classes/RDGE/Materials/RadialBlurMaterial.js') diff --git a/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js new file mode 100644 index 00000000..732800cf --- /dev/null +++ b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js @@ -0,0 +1,246 @@ +/* + This file contains proprietary software owned by Motorola Mobility, Inc.
+ No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.
+ (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. +
*/ + + + +/////////////////////////////////////////////////////////////////////// +// Class GLMaterial +// RDGE representation of a material. +/////////////////////////////////////////////////////////////////////// +function RadialBlurMaterial() +{ + // initialize the inherited members + this.inheritedFrom = GLMaterial; + this.inheritedFrom(); + + /////////////////////////////////////////////////////////////////////// + // Instance variables + /////////////////////////////////////////////////////////////////////// + this._name = "RadialBlurMaterial"; + this._shaderName = "radialBlur"; + + this._texMap = 'assets/images/cubelight.png'; + this._color = [1,0,0,1]; + + this._time = 0.0; + this._dTime = 0.01; + + /////////////////////////////////////////////////////////////////////// + // Property Accessors + /////////////////////////////////////////////////////////////////////// + this.getName = function() { return this._name; } + this.getShaderName = function() { return this._shaderName; } + + this.getTextureMap = function() { return this._texMap.slice(0); } + this.setTextureMap = function(m) { this._propValues[this._propNames[0]] = m.slice(0); this.updateTexture(); } + + this.isAnimated = function() { return true; } + + /////////////////////////////////////////////////////////////////////// + // Material Property Accessors + /////////////////////////////////////////////////////////////////////// + this._propNames = ["texmap", "color"]; + this._propLabels = ["Texture map", "Color"]; + this._propTypes = ["file", "color"]; + this._propValues = []; + + this._propValues[ this._propNames[0] ] = this._texMap.slice(0); + this._propValues[ this._propNames[1] ] = this._color.slice(0); + + this.setProperty = function( prop, value ) + { + // make sure we have legitimate imput + var ok = this.validateProperty( prop, value ); + if (!ok) + console.log( "invalid property in Radial Gradient Material:" + prop + " : " + value ); + + switch (prop) + { + case "texmap": + this.setTextureMap(value); + break; + + case "color": + this._propValues[prop] = value.slice(0); + if (this._shader && this._shader.default) + this._shader.default[prop].set(value); + break; + } + } + /////////////////////////////////////////////////////////////////////// + + + /////////////////////////////////////////////////////////////////////// + // Methods + /////////////////////////////////////////////////////////////////////// + // duplcate method requirde + this.dup = function( world ) + { + // allocate a new uber material + var newMat = new RadialBlurMaterial(); + + // copy over the current values; + var propNames = [], propValues = [], propTypes = [], propLabels = []; + this.getAllProperties( propNames, propValues, propTypes, propLabels); + var n = propNames.length; + for (var i=0; i --- js/helper-classes/RDGE/Materials/RadialBlurMaterial.js | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'js/helper-classes/RDGE/Materials/RadialBlurMaterial.js') diff --git a/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js index 732800cf..a5fb134c 100644 --- a/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js +++ b/js/helper-classes/RDGE/Materials/RadialBlurMaterial.js @@ -192,6 +192,17 @@ function RadialBlurMaterial() this.setName( pu.nextValue( "name: ") ); var rtnStr; + try + { + var endKey = "endMaterial\n"; + var index = importStr.indexOf( endKey ); + index += endKey.length; + rtnStr = importStr.substr( index ); + } + catch (e) + { + throw new Error( "could not import material: " + importStr ); + } return rtnStr; } -- cgit v1.2.3