{"id":135,"date":"2009-02-23T17:42:21","date_gmt":"2009-02-23T22:42:21","guid":{"rendered":"http:\/\/www.stephencalenderblog.com\/?p=135"},"modified":"2010-05-24T00:31:41","modified_gmt":"2010-05-24T05:31:41","slug":"flash-render-profiling","status":"publish","type":"post","link":"https:\/\/www.stephencalenderblog.com\/?p=135","title":{"rendered":"Flash Render Profiling"},"content":{"rendered":"<table cellspacing=\"4\" cellpadding=\"4\" width=\"470\" border=\"0\">\n<tr>\n<td width=\"210\" align=\"center\" valign=\"top\"><img decoding=\"async\" src=\"https:\/\/www.stephencalenderblog.com\/images\/RenderProfilerTeaser.jpg\" alt=\"Flash Render Profiling Demo\" \/><\/td>\n<td width=\"260\" align=\"left\" valign=\"top\">\n<p>\n Use this tool and purge your projects of lethargic art assets!\n<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p><!--more--><br \/>\nI am going to show you how to use my Flash render profiling tool.  The source, available under GNU general public license, is available <a href=\"https:\/\/www.stephencalenderblog.com\/RenderProfiling\/Agreement.php\">here<\/a>.  Since you only need basic Flash editor knowledge to use this tool, it should be easy for an artist, designer, or producer to use and take an active role in the optimization of rendering. <\/p>\n<p><object id=\"csSWF\" classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"480\" height=\"378\" codebase=\"http:\/\/active.macromedia.com\/flash7\/cabs\/ swflash.cab#version=9,0,28,0\"><param name=\"src\" value=\"\/RenderProfiling\/RenderProfilerCamtasia.swf\"\/><param name=\"bgcolor\" value=\"#1a1a1a\"\/><param name=\"quality\" value=\"best\"\/><param name=\"allowScriptAccess\" value=\"always\"\/><param name=\"allowFullScreen\" value=\"true\"\/><param name=\"scale\" value=\"showall\"\/><param name=\"flashVars\" value=\"autostart=false\"\/><embed name=\"csSWF\" src=\"\/RenderProfiling\/RenderProfilerCamtasia.swf\" width=\"480\" height=\"378\" bgcolor=\"#1a1a1a\" quality=\"best\" allowScriptAccess=\"always\" allowFullScreen=\"true\" scale=\"showall\" flashVars=\"autostart=false\" pluginspage=\"http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash\"><\/embed><\/object><\/p>\n<p>I do not want to reiterate everything in the video but I do want to mention a few key points.  All you need to do is drag objects from the library onto the stage and run the application.  The code automatically searches the render tree and tests every art asset.  In the video, I point out where you can add objects to the stage using ActionScript.  My first experiment compared the render speed of a complex object created in ActionScript and the same object using the Flash editor, there was no appreciable difference.  You will get the same results from just dragging objects onto the stage as you would with coding them in ActionScript. <\/p>\n<p>I use the same methodology for this tool as I did in my <a href=\"https:\/\/www.stephencalenderblog.com\/?p=9\">benchmarking tests<\/a>.  To have accurate results you need to accumulate a significant amount of time to measure, give the system enough time to recover between tests, and conduct multiple trials.  Testing in the right environment is paramount, rendering time differs greatly between a local Flash player, debugging from the Flash editor, and running from a web browser.  <\/p>\n<p>It takes time to be accurate, and this tool certainly takes some time to do its job, but it would take far more time to find rendering bottlenecks by guessing.  There is no comparison to knowing.  This render profiler will let you target sources for optimization with surgical precision, and let you compare the results of your changes.    <\/p>\n<p>Thanks for reading, and remember, we are all in this together.<\/p>\n<table cellspacing=\"15\">\n<tr>\n<td>\n<a class=\"DiggThisButton DiggMedium\"><\/a>\n<\/td>\n<td>\n<a href=\"http:\/\/reddit.com\/submit\" onclick=\"window.location = 'http:\/\/reddit.com\/submit?url=' + encodeURIComponent(window.location); return false\"> <img decoding=\"async\" src=\"http:\/\/reddit.com\/static\/spreddit7.gif\" alt=\"submit to reddit\" border=\"0\" \/> <\/a>\n<\/td>\n<td>\n<table>\n<tr>\n<td>\n<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/static.delicious.com\/img\/delicious.small.gif\" height=\"10\" width=\"10\" alt=\"Delicious\" \/>\n<\/td>\n<td>\n<a href=\"http:\/\/delicious.com\/save\" onclick=\"window.open('http:\/\/delicious.com\/save?v=5&#038;noui&#038;jump=close&#038;url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550'); return false;\"> Bookmark this on Delicious<\/a><br \/>\n<\/tr>\n<\/table>\n<\/td>\n<td>\n<script src=\"http:\/\/www.stumbleupon.com\/hostedbadge.php?s=2\"><\/script><br \/>\n<\/tr>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Use this tool and purge your projects of lethargic art assets!<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-135","post","type-post","status-publish","format-standard","hentry","category-actionscript-30"],"_links":{"self":[{"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/posts\/135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=135"}],"version-history":[{"count":6,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/posts\/135\/revisions"}],"predecessor-version":[{"id":233,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=\/wp\/v2\/posts\/135\/revisions\/233"}],"wp:attachment":[{"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=135"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=135"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stephencalenderblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}