/bin-release/srcview/source/away3d/materials/EnviroBitmapMaterial.as.html

https://github.com/davidcoleman007/AS3MazeSolver · HTML · 103 lines · 86 code · 16 blank · 1 comment · 0 complexity · b52347a9875991364de6682867e43915 MD5 · raw file

  1. <!-- saved from url=(0014)about:internet -->
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6. <title>EnviroBitmapMaterial.as</title>
  7. <link rel="stylesheet" type="text/css" href="../../../SourceStyles.css"/>
  8. </head>
  9. <body><pre><span class="ActionScriptpackage">package</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">materials</span>
  10. <span class="ActionScriptBracket/Brace">{</span>
  11. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">materials</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">shaders</span><span class="ActionScriptOperator">.</span><span class="ActionScriptOperator">*</span>;
  12. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">display</span><span class="ActionScriptOperator">.</span><span class="ActionScriptOperator">*</span>;
  13. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">geom</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">ColorTransform</span>;
  14. <span class="ActionScriptASDoc">/**
  15. * Bitmap material with environment shading.
  16. */</span>
  17. <span class="ActionScriptReserved">public</span> <span class="ActionScriptclass">class</span> <span class="ActionScriptDefault_Text">EnviroBitmapMaterial</span> <span class="ActionScriptReserved">extends</span> <span class="ActionScriptDefault_Text">CompositeMaterial</span>
  18. <span class="ActionScriptBracket/Brace">{</span>
  19. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_mode</span>:<span class="ActionScriptDefault_Text">String</span>;
  20. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_reflectiveness</span>:<span class="ActionScriptDefault_Text">Number</span>;
  21. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_textureMaterial</span>:<span class="ActionScriptDefault_Text">BitmapMaterial</span>;
  22. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_enviroShader</span>:<span class="ActionScriptDefault_Text">EnviroShader</span>;
  23. <span class="ActionScriptASDoc">/**
  24. * Setting for possible mapping methods.
  25. */</span>
  26. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">mode</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">String</span>
  27. <span class="ActionScriptBracket/Brace">{</span>
  28. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_mode</span>;
  29. <span class="ActionScriptBracket/Brace">}</span>
  30. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">mode</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">String</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  31. <span class="ActionScriptBracket/Brace">{</span>
  32. <span class="ActionScriptDefault_Text">_mode</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  33. <span class="ActionScriptDefault_Text">_enviroShader</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">mode</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  34. <span class="ActionScriptBracket/Brace">}</span>
  35. <span class="ActionScriptASDoc">/**
  36. * Coefficient for the reflectiveness of the material.
  37. */</span>
  38. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">reflectiveness</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Number</span>
  39. <span class="ActionScriptBracket/Brace">{</span>
  40. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_reflectiveness</span>;
  41. <span class="ActionScriptBracket/Brace">}</span>
  42. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">reflectiveness</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Number</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  43. <span class="ActionScriptBracket/Brace">{</span>
  44. <span class="ActionScriptDefault_Text">_reflectiveness</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  45. <span class="ActionScriptDefault_Text">_textureMaterial</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">colorTransform</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">ColorTransform</span><span class="ActionScriptBracket/Brace">(</span>1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1<span class="ActionScriptBracket/Brace">)</span>;
  46. <span class="ActionScriptDefault_Text">_enviroShader</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">reflectiveness</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  47. <span class="ActionScriptBracket/Brace">}</span>
  48. <span class="ActionScriptASDoc">/**
  49. * Returns the bitmapData object being used as the material environment map.
  50. */</span>
  51. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">enviroMap</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">BitmapData</span>
  52. <span class="ActionScriptBracket/Brace">{</span>
  53. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_enviroShader</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">bitmap</span>;
  54. <span class="ActionScriptBracket/Brace">}</span>
  55. <span class="ActionScriptASDoc">/**
  56. * Returns the bitmap material being used as the material texture.
  57. */</span>
  58. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">textureMaterial</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">BitmapMaterial</span>
  59. <span class="ActionScriptBracket/Brace">{</span>
  60. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_textureMaterial</span>;
  61. <span class="ActionScriptBracket/Brace">}</span>
  62. <span class="ActionScriptASDoc">/**
  63. * Creates a new &lt;code&gt;EnviroBitmapMaterial&lt;/code&gt; object.
  64. *
  65. * @param bitmap The bitmapData object to be used as the material's texture.
  66. * @param enviroMap The bitmapData object to be used as the material's normal map.
  67. * @param init [optional] An initialisation object for specifying default instance properties.
  68. */</span>
  69. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">EnviroBitmapMaterial</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">bitmap</span>:<span class="ActionScriptDefault_Text">BitmapData</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">enviroMap</span>:<span class="ActionScriptDefault_Text">BitmapData</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">init</span>:<span class="ActionScriptDefault_Text">Object</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">null</span><span class="ActionScriptBracket/Brace">)</span>
  70. <span class="ActionScriptBracket/Brace">{</span>
  71. <span class="ActionScriptComment">//remove any reference to materials
  72. </span> <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">init</span> <span class="ActionScriptOperator">&amp;&amp;</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptString">"materials"</span><span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">)</span>
  73. <span class="ActionScriptReserved">delete</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptString">"materials"</span><span class="ActionScriptBracket/Brace">]</span>;
  74. <span class="ActionScriptReserved">super</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">)</span>;
  75. <span class="ActionScriptDefault_Text">_mode</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getString</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"mode"</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptString">"linear"</span><span class="ActionScriptBracket/Brace">)</span>;
  76. <span class="ActionScriptDefault_Text">_reflectiveness</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getNumber</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"reflectiveness"</span><span class="ActionScriptOperator">,</span> 0.5<span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:0<span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">max</span>:1<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  77. <span class="ActionScriptComment">//create new materials
  78. </span> <span class="ActionScriptDefault_Text">_textureMaterial</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">BitmapMaterial</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">bitmap</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptBracket/Brace">)</span>;
  79. <span class="ActionScriptDefault_Text">_textureMaterial</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">colorTransform</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">ColorTransform</span><span class="ActionScriptBracket/Brace">(</span>1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1 <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> 1<span class="ActionScriptBracket/Brace">)</span>;
  80. <span class="ActionScriptDefault_Text">_enviroShader</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">EnviroShader</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">enviroMap</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">mode</span>:<span class="ActionScriptDefault_Text">_mode</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">reflectiveness</span>:<span class="ActionScriptDefault_Text">_reflectiveness</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">blendMode</span>:<span class="ActionScriptDefault_Text">BlendMode</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">ADD</span><span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  81. <span class="ActionScriptComment">//add to materials array
  82. </span> <span class="ActionScriptDefault_Text">addMaterial</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_textureMaterial</span><span class="ActionScriptBracket/Brace">)</span>;
  83. <span class="ActionScriptDefault_Text">addMaterial</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_enviroShader</span><span class="ActionScriptBracket/Brace">)</span>;
  84. <span class="ActionScriptBracket/Brace">}</span>
  85. <span class="ActionScriptBracket/Brace">}</span>
  86. <span class="ActionScriptBracket/Brace">}</span></pre></body>
  87. </html>