/* 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 // GL representation of a material. /////////////////////////////////////////////////////////////////////// function QuiltMaterial01() { // initialize the inherited members this.inheritedFrom = GLMaterial; this.inheritedFrom(); /////////////////////////////////////////////////////////////////////// // Instance variables /////////////////////////////////////////////////////////////////////// this._name = "QuiltMaterial 1"; this._shaderName = "quilt_1"; /////////////////////////////////////////////////////////////////////// // Property Accessors /////////////////////////////////////////////////////////////////////// this.getShaderName = function() { return this._shaderName; } /////////////////////////////////////////////////////////////////////// // Methods /////////////////////////////////////////////////////////////////////// this.dup = function() { return new QuiltMaterial01(); } this.init = function() { // set up the material node this._materialNode = createMaterialNode("quiltMaterial01") this._materialNode.setDiffuseTexture("quilt01"); this._materialNode.setSpecTexture("quilt01_E"); this._materialNode.setNormalTexture("quilt01_N"); // set up the shader this._shader = new jshader(); this._shader.def = quiltShaderDef; this._shader.init(); this._materialNode.setShader(this._shader); } } /////////////////////////////////////////////////////////////////////// // Class GLMaterial // GL representation of a material. /////////////////////////////////////////////////////////////////////// function QuiltMaterial02() { // initialize the inherited members this.inheritedFrom = GLMaterial; this.inheritedFrom(); /////////////////////////////////////////////////////////////////////// // Instance variables /////////////////////////////////////////////////////////////////////// this._name = "QuiltMaterial 2"; this._shaderName = "quilt_2"; /////////////////////////////////////////////////////////////////////// // Property Accessors /////////////////////////////////////////////////////////////////////// this.getShaderName = function() { return this._shaderName; } /////////////////////////////////////////////////////////////////////// // Methods /////////////////////////////////////////////////////////////////////// this.dup = function() { return new QuiltMaterial02(); } this.init = function() { // set up the material node this._materialNode = createMaterialNode("quiltMaterial02") this._materialNode.setDiffuseTexture("quilt02"); this._materialNode.setSpecTexture("quilt02_E"); this._materialNode.setNormalTexture("quilt02_N"); // set up the shader this._shader = new jshader(); this._shader.def = quilt2ShaderDef; this._shader.init(); this._materialNode.setShader(this._shader); } } /////////////////////////////////////////////////////////////////////////////////////// // RDGE shaders /* * The main shader for the scene */ var quiltShaderDef = {'shaders': { // this shader is being referenced by file 'defaultVShader':"assets/shaders/quilt_vshader.glsl", 'defaultFShader':"assets/shaders/quilt_fshader.glsl", }, 'techniques': { 'default':[{ 'vshader' : 'defaultVShader', 'fshader' : 'defaultFShader', // attributes 'attributes' : { 'vert' : { 'type' : 'vec3' }, 'normal' : { 'type' : 'vec3' }, 'texcoord' : { 'type' : 'vec2' }, }, // parameters 'params' : { //'u_light0Diff' : { 'type' : 'vec4' }, //'u_matDiffuse' : { 'type' : 'vec4' } }, // render states 'states' : { 'depthEnable' : true, 'offset':[1.0, 0.1], 'blendEnabled' : true, 'srcBlend' : 'SRC_ALPHA', 'dstcBlend' : 'ONE_MINUS_SRC_ALPHA' }, }] }}; var quilt2ShaderDef = {'shaders': { // this shader is being referenced by file 'defaultVShader':"assets/shaders/quilt_vshader.glsl", 'defaultFShader':"assets/shaders/quilt2_fshader.glsl", }, 'techniques': { 'default':[{ 'vshader' : 'defaultVShader', 'fshader' : 'defaultFShader', // attributes 'attributes' : { 'vert' : { 'type' : 'vec3' }, 'normal' : { 'type' : 'vec3' }, 'texcoord' : { 'type' : 'vec2' }, }, // parameters 'params' : { //'u_light0Diff' : { 'type' : 'vec4' }, //'u_matDiffuse' : { 'type' : 'vec4' } }, // render states 'states' : { 'depthEnable' : true, 'offset':[1.0, 0.1], 'blendEnabled' : true, 'srcBlend' : 'SRC_ALPHA', 'dstcBlend' : 'ONE_MINUS_SRC_ALPHA' }, }] }};