title: Taking advantage of Flash hardware acceleration
body: <p>My goal is to test Flash 3D environment performance by generating lots of 3D cubes, rotating them and reading FPS.</p>
  
  <p>I know that I can rotate 2D objects in 3D space. For example, I can construct a cube with 6 movie clips, rotating them and putting them together accordingly. Then I can generate lots of these cubes in random x,y,z locations (predefined area in front of viewport), rotate them and read fps.</p>
  
  <p>But then I read about this hardware acceleration and it's unclear to me, when it is activated/used. Certain conditions must be met. I know that it must be allowed by the user (right click->settings->enable hardware acceleration) or if it is embedded through object tag, wmode=direct must be set.</p>
  
  <p>That's from viewers side, but what from developers?</p>
  
  <p><strong>If I draw a simple red rectangle on stage, and user has enabled hardware acceleration, does that mean that graphic information will get rendered on GPU?</strong></p>
  
  <p>I'm reading various sources and "Adobe Flash 11 Stage3D Game Programming" book, and from what I gather, in order to render graphical information on GPU, I have to explicitly call Stage3D class in AS3, then I can draw my 2d/3d objects there.</p>
  
  <p>Which is it - if I want my app to be run in hardware acceleration mode (and its enabled from viewers side), does it happen automatically no matter what the content in my flash file? Or do I have to add the Stage3D class there.</p>
  
  <p>Thank you.</p>
  
  <p>Will be waiting for the answer.</p>