<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hello. My name is Václav Vančura. &#187; actionscript</title>
	<atom:link href="http://vaclav.vancura.org/tag/actionscript/feed" rel="self" type="application/rss+xml" />
	<link>http://vaclav.vancura.org</link>
	<description></description>
	<lastBuildDate>Sat, 31 Jul 2010 12:47:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>TrazzlePublisher</title>
		<link>http://vaclav.vancura.org/trazzlepublisher</link>
		<comments>http://vaclav.vancura.org/trazzlepublisher#comments</comments>
		<pubDate>Fri, 18 Jun 2010 12:18:24 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[falanxia]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2520</guid>
		<description><![CDATA[If you use de.dev_lab.logging.Logger to standardize your AS3 logging needs, I've got something for you.

At Falanxia we've been using SOS Max Logger by PowerFlasher, but recently I've found a great new supplement, which I think is a great leap forward: Trazzle. Let me copy paste few features we love here:

* Bitmap logging
* Performance monitoring
* Multiple Log Levels
* TextMate support

For us just the Bitmap logging feature was a reason to switch. In case we logged events just via SOS Max, there would be a need to rewrite all logger calls, and it would be a somewhat painful and completely useless experience. Since we use the as3logger approach, it was really easy to add a small Trazzle wrapper. And there was no need to rewrite anything in our sources.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">If you use <a href="http://code.google.com/p/as3logger">as3logger</a> to standardize your AS3 logging needs, I&#8217;ve got something for you.</span>
</p>

<p>At <a href="http://falanxia.com">Falanxia</a> we&#8217;ve been using <a href="http://www.sos.powerflasher.com/">SOS Max Logger</a> by PowerFlasher, but recently I&#8217;ve found a great new supplement, which I think is a great leap forward: <a href="http://www.nesium.com/products/trazzle/">Trazzle</a>. Let me copy paste few features we love here:</p>

<ul>
<li>Bitmap logging</li>
<li>Performance monitoring</li>
<li>Multiple Log Levels</li>
<li><a href="http://macromates.com/">TextMate</a> support</li>
</ul>

<p>For us just the Bitmap logging feature was a reason to switch. In case we logged events just via SOS Max, there would be a need to rewrite all logger calls, and it would be a somewhat painful and completely useless experience. Since we use the <a href="http://code.google.com/p/as3logger">as3logger</a> approach, it was really easy to add a small Trazzle wrapper. And there was no need to rewrite anything in our sources.</p>

<p>Here&#8217;s the source:</p>

<pre class="brush:as3">
/*
 * Falanxia Utilitaris.
 *
 * Copyright (c) 2010 Falanxia (http://falanxia.com)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

package com.falanxia.utilitaris.logger {
    import com.falanxia.utilitaris.utils.*;
    import com.nesium.logging.*;

    import de.dev_lab.logging.*;
    import de.dev_lab.logging.publisher.*;

    import flash.display.*;



    /**
     * The {@code String} publisher outputs the Log to a Trazzle.
     * See more info about Trazzle here: http://www.nesium.com/products/trazzle
     *
     * @author Vaclav Vancura @ Falanxia a.s. vaclav@falanxia.com
     * @author Falanxia (http://falanxia.com, @falanxia)
     * @since 1.0
     */
    public class TrazzlePublisher implements IPublisher {


        private static var _trazzle:TrazzleLogger;



        /**
         * Constructor.
         */
        public function TrazzlePublisher(stageReference:Stage, appName:String) {
            if(_trazzle == null) {
                _trazzle = new TrazzleLogger();
                _trazzle.setParams(stageReference, appName);
            }
        }



        /**
         * Outputs the message to the {@code String}.
         * @param logLevel Log level
         * @param object Message
         */
        public function publish(logLevel:int, object:*, ...additional):void {
            var prefix:String;

            switch(logLevel) {
                case Logger.DEBUG:
                    prefix = "d ";
                    break;

                case Logger.INFO:
                    prefix = "i ";
                    break;

                case Logger.WARN:
                    prefix = "w ";
                    break;

                case Logger.ERROR:
                    prefix = "e ";
                    break;

                case Logger.FATAL:
                    prefix = "f ";
                    break;

                default:
                    prefix = "";
            }

            if(object == null) object = "[null]";

            _trazzle.log(prefix + String(object), 4);
        }



        /**
         * Clear.
         * Trazzle has no clear method, so it's just a placeholder.
         */
        public function clear():void {
        }



        /**
         * Destructor.
         */
        public function destroy():void {
            clear();
        }



        /* ★ SETTERS &#038; GETTERS ★ */


        /**
         * Get Trazzle reference.
         * @return Reference to Trazzle
         */
        public static function get trazzle():TrazzleLogger {
            return _trazzle;
        }
    }
}
</pre>

<p>Of course you need <a href="http://code.google.com/p/as3logger">as3logger</a> de.dev_lab.logging.Logger class.</p>

<p>All you need now is just an initialization of the logger:</p>

<pre class="brush:as3">
Logger.addPublisher(new TrazzlePublisher(stage, "My application name"));
</pre>

<p>And you can log as you logged before:</p>

<pre class="brush:as3">
Logger.debug("Debug message");
Logger.info("Info message");
Logger.warn("Warning message");
Logger.error("Error message");
Logger.fatal(Math.random() * 1000);
</pre>

<p>If you want to call Trazzle for any reason (e.g. to log a Bitmap), you can use:</p>

<pre class="brush:as3">
var myBitmapData = new BitmapData(100, 100);
myBitmapData.noise(Math.random() * 1000);
TrazzlePublisher.trazzle.logBitmapData(myBitmapData);
</pre>

<p>Or to invoke a beep and show a performance window:</p>

<pre class="brush:as3">
TrazzlePublisher.trazzle.beep();
TrazzlePublisher.trazzle.startPerformanceMonitoring();
</pre>

<p>You can fork or watch the Gist for this class <a href="http://gist.github.com/443573">here</a> on Git.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/trazzlepublisher/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bzoonk</title>
		<link>http://vaclav.vancura.org/bzoonk</link>
		<comments>http://vaclav.vancura.org/bzoonk#comments</comments>
		<pubDate>Thu, 17 Jun 2010 15:42:55 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[User Interface Coding]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[falanxia]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2484</guid>
		<description><![CDATA[Use arrow keys to go to the bar, drink beer and run to the toilet before time is out. How many beers could you stand? This is the first game by the Falanxia team I currently work with.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Master the power of alcoforce!</span>
</p>

<p>Use arrow keys to go to the bar, drink beer and run to the toilet before time is out. How many beers could you stand? This is the first game by the <a href="http://falanxia.com">Falanxia</a> team I currently work with.</p>

<p>
<div class="video">
	<div class="top"></div>
	<div class="mid player">
		<div class="video-js-box">
			<video class="video-js" width="480" height="320" poster="http://vaclav.vancura.org/data/video/bzoonk/bzoonk.jpg" controls>
				<source src="http://vaclav.vancura.org/data/video/bzoonk/bzoonk.webm" type='video/webm; codecs="vp8, vorbis"'>
				<source src="http://vaclav.vancura.org/data/video/bzoonk/bzoonk.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
				<source src="http://vaclav.vancura.org/data/video/bzoonk/bzoonk.ogv" type='video/ogg; codecs="theora, vorbis"'>
			</video>
		</div>
	</div>
	<div class="bot">Master the power of alcoforce!</div>
</div>
</p>

<p>
<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-2-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 1"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-2-poster.jpg" class="" /><span class="title">Screenshot 1</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-1-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 2"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-1-poster.jpg" class="" /><span class="title">Screenshot 2</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-10-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 3"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-10-poster.jpg" class="" /><span class="title">Screenshot 3</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-9-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 4"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-9-poster.jpg" class="" /><span class="title">Screenshot 4</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-3-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 5"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-3-poster.jpg" class="" /><span class="title">Screenshot 5</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-4-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 6"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-4-poster.jpg" class="" /><span class="title">Screenshot 6</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-5-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 7"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-5-poster.jpg" class="" /><span class="title">Screenshot 7</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-6-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 8"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-6-poster.jpg" class="" /><span class="title">Screenshot 8</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-7-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 9"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-7-poster.jpg" class="" /><span class="title">Screenshot 9</span></a></div>



<div class="mockrow"><a href="http://vaclav.vancura.org/data/2010/06/bzoonk-8-full.jpg" rel="zoombox[bzoonk] " title="Screenshot 10"><img src="http://vaclav.vancura.org/data/2010/06/bzoonk-8-poster.jpg" class="" /><span class="title">Screenshot 10</span></a></div>

</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/bzoonk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IntelliJ IDEA Refactoring Updates</title>
		<link>http://vaclav.vancura.org/intellij-idea-refactoring-updates</link>
		<comments>http://vaclav.vancura.org/intellij-idea-refactoring-updates#comments</comments>
		<pubDate>Wed, 09 Jun 2010 10:37:00 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[idea]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2457</guid>
		<description><![CDATA[As you may know, IntelliJ IDEA employs one of the best refactoring features you can meet in an IDE. Now the beta version 9.0.3 EAP adds something what amused me so much, that I decided to mock a small strip below.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">As you may know, <a href="http://www.jetbrains.com/idea/">IntelliJ IDEA</a> employs one of the best <a href="http://www.jetbrains.com/idea/features/refactoring.html">refactoring features</a> you can meet in an IDE. Now the <a href="http://confluence.jetbrains.net/display/IDEADEV/Maia+EAP">beta version 9.0.3 EAP</a> adds something what amused me so much, that I decided to mock a small strip below.</span>
</p>

<p>It&#8217;s easy: when you have a variable expression you want to extract, you can use <a href="http://www.jetbrains.com/idea/features/refactoring.html#Introduce_Variable">&#8220;Introduce Variable&#8221; refactoring feature</a>. Now I noticed the last EAP is even able to find ALL similar expressions and replace them at once. Click the image below to understand what I am talking about.</p>

<p>
<a href="http://vaclav.vancura.org/data/2010/06/introduce-variable-full.png" rel="zoombox " title="IntelliJ IDEA 9.0.3 Introduce Variable features"><img src="http://vaclav.vancura.org/data/2010/06/introduce-variable-poster.png" class="transparent " /></a><br />
<span class="image-description"><em>IntelliJ IDEA 9.0.3 Introduce Variable features</em> Click the image to see the full resolution mockup.</span>
</p>

<p>I really dig IntelliJ IDEA. And even I am 7/24 user, I still find new features which blow me away. If you&#8217;re unhappy with your current ActionScript IDE of choice, you should try <a href="http://www.jetbrains.com/idea/">IDEA</a> today.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/intellij-idea-refactoring-updates/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dummy Tween Plugin</title>
		<link>http://vaclav.vancura.org/dummy-tween-plugin</link>
		<comments>http://vaclav.vancura.org/dummy-tween-plugin#comments</comments>
		<pubDate>Sun, 02 May 2010 21:26:39 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[falanxia]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2433</guid>
		<description><![CDATA[As I said before, last few months I&#8217;ve been working for Falanxia.com, where I help to develop social games in Flash (and more platforms coming). I was not very happy with the way how to periodically call a method: var timer:Timer = new Timer(10, 100); // call a method 100 times with 10 ms delay) [...]]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">A somewhat different approach to periodical calling of a method. This time with TweenLite/TweenMax by <a href="http://greensock.com">Greensock</a></span>
</p>

<p>As I said before, last few months I&#8217;ve been working for <a href="http://falanxia.com">Falanxia.com</a>, where I help to develop social games in Flash (and more platforms coming). I was not very happy with the way how to periodically call a method:</p>

<pre class="brush:as3">
var timer:Timer = new Timer(10, 100); // call a method 100 times with 10 ms delay)
timer.addEventListener(TimerEvent.TIMER, method);
timer.start();
</pre>

<p>Is there a shorter approach to do the same thing? While we already use TweenLite/TweenMax a lot, I thought there has to be a plugin which should handle this task (no, I don&#8217;t need TweenLite.delayedCall(). Well, nope, there&#8217;s not. But sure it can be handled this way:</p>

<pre class="brush:as3">
var tweenObj:Object = {pass:0};
TweenLite.to(tweenObj, 1, {ease:Liner.easeNone, onUpdate:method}); // 100 * 10 ms = 1 second
</pre>

<p>IMHO this way is a bit cumbersome and you need to create an Object to be tweened. I came up with a simple TweenLite plugin to do the job:</p>

<pre class="brush:as3">
/*
 * Falanxia Utilitaris.
 *
 * Copyright (c) 2010 Falanxia (http://falanxia.com)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

package com.falanxia.utilitaris.plugins {
    import com.greensock.*;
    import com.greensock.plugins.*;



    /**
     * Dummy tween plugin.
     *
     * @author Vaclav Vancura @ Falanxia a.s. vaclav@falanxia.com
     * @author Falanxia (<a href="http://falanxia.com">falanxia.com</a>, <a href="http://twitter.com/falanxia">@falanxia</a>)
     * @since 1.0
     */
    public class DummyTweenPlugin extends TweenPlugin {


        public static const API:Number = 1.0;

        protected var _target:Object;



        /**
         * Constructor.
         */
        public function DummyTweenPlugin() {
            super();
            this.propName = "dummy";
            this.overwriteProps = ["dummy"];
        }



        /**
         * Tween initialization.
         * Gets called when any tween of the special property begins. Store any initial values
         * and/or variables that will be used in the "changeFactor" setter when this method runs.
         * @param target Target object of the TweenLite instance using this plugin
         * @param value The value that is passed in through the special property in the tween.
         * @param tween The TweenLite or TweenMax instance using this plugin.
         * @return If the initialization failed, it returns false. Otherwise true. It may fail if, for example, the plugin requires that the target be a DisplayObject or has some other unmet criteria in which case the plugin is skipped and a normal property tween is used inside TweenLite
         */
        override public function onInitTween(target:Object, value:*, tween:TweenLite):Boolean {
            return true;
        }
    }
}
</pre>

<p>How to use it?</p>

<pre class="brush:as3">
TweenPlugin.activate([DummyTweenPlugin]); // first you need to activate the plugin, but only once in the whole app
TweenLite.to(this, 1.0, {dummy:{}, onUpdate:method});
</pre>

<p>This way there&#8217;s no need to create an Object variable. I think it&#8217;s a bit simpler. Actually this article took much more time to write than to code the DummyTweenPlugin.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/dummy-tween-plugin/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MumboJumboT: Done</title>
		<link>http://vaclav.vancura.org/mumbojumbot-done</link>
		<comments>http://vaclav.vancura.org/mumbojumbot-done#comments</comments>
		<pubDate>Tue, 02 Feb 2010 22:22:31 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[Illustration]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2368</guid>
		<description><![CDATA[I am finally done with the MumboJumboT project.

As you may know from this blog, I recently wrote a few paragraphs about progress of the project. And there is even MumboJumboT's Twitter stream with more detailed tweets. But -- it's hard to tell -- now I am not very happy with the results and I have to confess I failed on several places.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">I am finally done with the MumboJumboT project.</span>
</p>

<p>As you may know from this blog, I recently wrote a few paragraphs about progress of the project. And there is even <a href="http://twitter.com/mumbojumbot">MumboJumboT&#8217;s Twitter stream</a> with more detailed tweets. But &#8212; believe me, it&#8217;s hard to tell &#8212; now I am not very happy with the results and I have to confess I failed on several places.</p>

<p>First, as usual, I was way too optimistic. I thought I&#8217;d be able to code more and harder, but it was not really possible for several reasons. Just a few hours before I started the project I had finished another long term job and hence I was somewhat tired. Our kids were sick two days as well and on the end I was lazy too :) As you may know I planned to create a blabbing machine. And&#8230; Failed. Sorry about that, next time I&#8217;ll think twice before I start a project like this one.</p>

<p>But! I think even with my failures I&#8217;ve got something for you. The MumboJumboT project lite. Very lite. If you&#8217;re interested, I&#8217;d be glad to show you my humble Adobe AIR application, which you can install by clicking the badge <a href="http://mumbojumbot.ambilab.com/client/">here</a>.</p>

<p><span id="more-2368"></span></p>

<h3>So what is it all about?</h3>

<p>This is just an eye candy and mainly a tutorial AIR app. You can click links below to read more on how the project was done and meanwhile you can play with it.</p>

<p>MumboJumboT allows you to:</p>

<ul>
<li><p>Load a sample song (thanks to <a href="http://jimmac.musichall.cz">Jakub Steiner aka Jimmac</a> for The Sphere song from his <a href="http://jimmac.musichall.cz/organic.php">Organic</a> album, the other song done by me),</p></li>
<li><p>Load your very own <a href="http://en.wikipedia.org/wiki/Vorbis">Ogg Vorbis</a> file (info on <a href="http://xiph.org">Xiph.org</a> as well),</p></li>
<li><p>Play an Ogg file &#8212; actually it was not possible before, because Flash knows just MP3s. If you don&#8217;t want to get into dirty details on the Wiki page, you just need to know Ogg provides much higher quality on lower bitrates. The playback is done by <a href="http://automatastudios.com">Branden Hall</a>&#8216;s Ogg Vorbis <a href="http://labs.adobe.com/wiki/index.php/Alchemy:Libraries">Alchemy</a> port, heavily altered by me for purposes of this app,</p></li>
<li><p>Somewhat visualize the playback.</p></li>
</ul>

<p>That&#8217;s pretty much for now, so let&#8217;s continue on the code stuff.</p>

<h3>MumboJumboT code</h3>

<p>You can read everything about the project&#8217;s code on the <a href="http://j.mp/ambilab-mumbojumbot-docs">documentation page</a> of the MumboJumboT project. Please don&#8217;t forget to visit its <a href="http://github.com/vancura/ambilab">GitHub repository</a>.</p>

<p>What you will learn:</p>

<h4>PureMVC and Startup Manager</h4>

<p><a href="http://puremvc.org">PureMVC</a> is a cool <a href="http://en.wikipedia.org/wiki/Model–view–controller">Model-View-Controller</a> framework aimed to help you to create cleaner code in several <a href="http://trac.puremvc.org/PureMVC">languages</a>. And its <a href="http://trac.puremvc.org/Utility_AS3_Loadup">Startup Manager</a> is a good way how to put initialization of your application in a queue, while following each Proxy requirements.</p>

<ul>
<li>Application facade (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/AppFacade_AppFacade.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/AppFacade.as">code</a>)</li>
<li>Application mediator (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/view_AppMediator.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/AppMediator.as">code</a>)</li>
<li>Loading and queue of proxies (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/controller_LoadResourcesCommand.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/controller/LoadResourcesCommand.as">code</a>)</li>
</ul>

<h4>Config files</h4>

<p>Here you can see my Proxy helping to easily parse config XML settings. The online flavour allows you to merge parsed settings with FlashVars. You can localize the app from the config XML as well, you know, it&#8217;s not a good thing to have any static text in the SWF (it obviously doesn&#8217;t apply to the logging output).</p>

<ul>
<li>Config proxy (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/model_ConfigProxy.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/model/ConfigProxy.as">code</a>)</li>
</ul>

<h4>AIR Updates</h4>

<p>Adobe AIR platform allows applications to self-update when there&#8217;s a new version available. See the code below to see how to do that:</p>

<ul>
<li>Checking for updates (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/controller_CheckForUpdateCommand.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/controller/CheckForUpdateCommand.as">code</a>)</li>
</ul>

<h4>Away3D</h4>

<p><a href="http://away3d.com">Away3D</a> is a well known 3D library. And its new <a href="http://away3d.com/away3d-lite-v1-0-fastest-and-smallest-3d-engine-in-flash">Lite</a> flavour finally provides hardware acceleration via Flash 10 <a href="http://video.google.com/videoplay?docid=6731027747102186445#">postcards in space</a> acceleration features.</p>

<ul>
<li>Spinbox (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/view_components_spinbox_Spinbox.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/SpinboxMediator.as">code</a>)</li>
<li>Spinbox Mediator (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/view_SpinboxMediator.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/components/spinbox/Spinbox.as">code</a>)</li>
</ul>

<h4>OGG Decoding</h4>

<p>As I wrote above, thanks to Branden Hall I was able to use Ogg Vorbis files in the app, even it was not possible before.</p>

<ul>
<li>Ogg Vorbis Decoder (<a href="http://github.com/vancura/ambilab/tree/master/MumboJumboT/src/helpers/ogg_decoder">code</a>)</li>
<li>Sample Proxy (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/model_SampleProxy.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/model/SampleProxy.as">code</a>)</li>
</ul>

<h4>Advanced mouse controls</h4>

<p>You can see there&#8217;s a somewhat sick mouse handler allowing you to drag-and-rotate so called Spinbox.</p>

<ul>
<li>Mouse Proxy (<a href="http://dl.dropbox.com/u/24071/docs/ambilab-mumbojumbot/html/model_MouseProxy.html">Documentation</a> and <a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/model/MouseProxy.as">code</a>)</li>
</ul>

<h4>Skinning</h4>

<p>Here you can see how to skin the app with my <a href="http://github.com/vancura/vancura-as3-libs">vancura-as3-libs</a> library. Download the skin folder <a href="http://dl.dropbox.com/u/24071/projects/mumbojumbot/deploy/skin.zip">here</a>.</p>

<ul>
<li>About Panel (<a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/components/panels/AboutPanel.as">code</a>)</li>
<li>Load Panel (<a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/components/panels/LoadPanel.as">code</a>)</li>
<li>Play Panel (<a href="http://github.com/vancura/ambilab/blob/master/MumboJumboT/src/view/components/panels/PlayPanel.as">coe</a>)</li>
</ul>

<h4>Mocking up</h4>

<p>Just to revisit what was written in <a href="http://vaclav.vancura.org/mumbojumbot-day-1">previous</a> <a href="http://vaclav.vancura.org/mumbojumbot-day-2">articles</a>, here&#8217;s <a href="http://dl.dropbox.com/u/24071/projects/mumbojumbot/deploy/mockups.zip">an archive</a> of PSD files you can download. Just in case you&#8217;d be interested on how the GUI part was done.</p>

<p>You can watch a screencast of the mocking up on <a href="http://vimeo.com/9013867">Vimeo</a>.</p>

<h3>Legal stuff</h3>

<p>Licensed under <a href="http://creativecommons.org/licenses/by-sa/3.0">Attribution-Share Alike (CC) license</a>.
OGG Alchemy Decoder by <a href="http://automatastudios.com">Branden Hall</a> and <a href="http://xiph.org">Xiph.org Foundation</a>. <a href="http://labs.adobe.com/wiki/index.php/Alchemy:Libraries">More info</a>
RaveIN font by <a href="http://jimmac.musichall.cz">Jakub Steiner aka Jimmac</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/mumbojumbot-done/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MumboJumboT: Day 1</title>
		<link>http://vaclav.vancura.org/mumbojumbot-day-1</link>
		<comments>http://vaclav.vancura.org/mumbojumbot-day-1#comments</comments>
		<pubDate>Tue, 26 Jan 2010 10:23:15 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2340</guid>
		<description><![CDATA[Unfortunately on the first day I was not really working as hard as I would need. Mainly because I finished a large project yesterday morning and I was not so fresh. I need to concentrate more during next few days, so I won&#8217;t be a promising looser. But there were few things I&#8217;ve successfully done. [...]]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Ok, here&#8217;s the last day&#8217;s news digest on the <a href="http://vaclav.vancura.org/mumbojumbot">MumboJumboT</a> project.</span>
</p>

<p>Unfortunately on the first day I was not really working as hard as I would need. Mainly because I finished a large project yesterday morning and I was not so fresh. I need to concentrate more during next few days, so I won&#8217;t be a promising looser.</p>

<p>But there were few things I&#8217;ve successfully done. First, I made a Twitter account. Pretty sweet, huh :]</p>

<p>Then there was the logotype. The application is based on a concept of a robot blabbing nonsense. Because I&#8217;ll use <a href="http://away3d.com/away3d-lite-v1-0-fastest-and-smallest-3d-engine-in-flash">Away3D</a> library, everything will be somewhat raw &#8211; boxes and angles everywhere. That should be OK for a robot, except Eva from Wall-E nearly all robots are made of boxes.</p>

<p><span id="more-2340"></span></p>

<h3>Logo</h3>

<p>I was not entirely happy with boxy look, so I needed to make it softer somehow. Hence I added the key to the right side. My robot, MumboJumboT, will have a similar key, hopefully rotating while playing.</p>

<p>
<div class="fullsize-image"><img src="http://vaclav.vancura.org/data/2010/01/mumbojumbot-logo.png" class="transparent " /></div>

</p>

<h3>Twitter</h3>

<p>Then I needed to come up with a Twitter background and of course an avatar. Here&#8217;s a screenshot of current state of <a href="http://twitter.com/mumbojumbot">MumboJumboT&#8217;s Twitter home</a>:</p>

<p>
<a href="http://vaclav.vancura.org/data/2010/01/mumbojumbot-twitter-fullsize.jpg" rel="zoombox "><img src="http://vaclav.vancura.org/data/2010/01/mumbojumbot-twitter-poster.jpg" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>As promised, <a href="http://dl.dropbox.com/u/24071/projects/mumbojumbot/deploy/twitter-mockups-source.zip">here</a> you can have PSDs I created.</p>

<h3>Source code</h3>

<p>Yesterday I was also happy to prepare a functional AIR source base I can use now. It&#8217;s deployed to the <a href="http://github.com/vancura/ambilab/tree/master/MumboJumboT">GitHub repo</a> I&#8217;ve prepared for the project.</p>

<p>So now it&#8217;s the second day and I need to continue. Today I want to prepare all graphics assets I will need. Watch the MumboJumboT&#8217;s Twitter stream at <a href="http://twitter.com/mumbojumbot">@mumbojumbot</a> for more information about the progress.</p>

<h3>Update</h3>

<p>MumboJumboT project is done. Read more <a href="http://vaclav.vancura.org/mumbojumbot-done">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/mumbojumbot-day-1/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MumboJumboT</title>
		<link>http://vaclav.vancura.org/mumbojumbot</link>
		<comments>http://vaclav.vancura.org/mumbojumbot#comments</comments>
		<pubDate>Mon, 25 Jan 2010 13:15:13 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[Illustration]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2337</guid>
		<description><![CDATA[Since today I'll be working on a small one week project, something like a workshop. I'd be glad to prepare an application for realtime visualization of audio.

I love this kind of projects: you got a limited time - 7 days should be enough to prepare a small application. Game, audio or video stuff, you name it. When you work alone, you could manage your time more precisely, there's no one who tells you what to do and what you should avoid. It's solely your work and you can do whatever you want to - but it has to be done before the deadline, which can't be moved in any circumstances.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Since today I&#8217;ll be working on a small one week project, something like a workshop. I&#8217;d be glad to prepare an application for realtime visualization of audio.</span>
</p>

<p>I love this kind of projects: you got a limited time &#8211; 7 days should be enough to prepare a small application. Game, audio or video stuff, you name it. When you work alone, you could manage your time more precisely, there&#8217;s no one who tells you what to do and what you should avoid. It&#8217;s solely your work and you can do whatever you want to &#8211; but it has to be done before the deadline, which can&#8217;t be moved in any circumstances.</p>

<p>This time I&#8217;ll prepare a small audio application. No business plan, no desires to sell it. No visible sight of making money of it. Just simple fun. This app was on paper for too long and <a href="http://www.viktorbezdek.cz/2009/10/soutez-s-adobe-user-group-czech-o-software-od-adobe-za-2100-pravidla-podminky-a-zadani/">this contest</a> made me start it.</p>

<p>The app will mix samples in a never-ending stream of blabs. Everything will be mixed randomly from predefined settings, adjustable by you. And most importantly you&#8217;ll be able to make your very own generator by recording audio from your computer&#8217;s Line In or Microphone input.</p>

<p>I want to show you some of technologies I developed during last few years. GUI widgets with loadable skins, audio processing (I made few multitrack sequencers and mixers), a slice of 3D rendering. All Model-View-Controller via PureMVC.</p>

<p><span id="more-2337"></span>
I want to use these technologies if you&#8217;re interested to know:</p>

<ul>
<li><a href="http://labs.adobe.com/technologies/air2">Air 2.0 beta</a></li>
<li><a href="http://labs.adobe.com/wiki/index.php/Alchemy:Libraries">Ogg Vorbis / Alchemy</a></li>
<li><a href="http://puremvc.org">PureMVC</a></li>
<li><a href="http://away3d.com/away3d-lite-v1-0-fastest-and-smallest-3d-engine-in-flash">Away3D Lite</a></li>
<li><a href="http://code.google.com/p/popforge">PopForge</a></li>
<li><a href="http://code.google.com/p/bulk-loader/">BulkLoader</a></li>
<li><a href="http://destroytoday.com">DestroyToday&#8217;s</a> <a href="http://github.com/vancura/DestroyFramework/blob/master/src/com/destroytoday/display/Scale9Bitmap.as">Scale9Bitmap</a> (slightly changed by me)</li>
<li><a href="http://tweenmax.com">Greensock TweenMax</a></li>
<li>and a small help of my <a href="http://github.com/vancura/vancura-as3-libs">libraries</a>.</li>
</ul>

<p>If you want to take a few lessons from ActionScript and these areas, this project is a lovely place to start. I did not tell you? Everything I am going to produce here will be licensed as Creative Commons, open for everybody. And that doesn&#8217;t apply only to source codes, I am talking about assets, source PSDs, illustrations, samples etc.</p>

<p>So if you&#8217;re interested in what I am going to come up with in next 6.5 days, enjoy me on the voyage. It will be a rather fast, but very fun trip. Watch this place and Twitter stream at <a href="http://twitter.com/mumbojumbot">@mumbojumbot</a>.</p>

<h3>Update</h3>

<p>MumboJumboT project is done. Read more <a href="http://vaclav.vancura.org/mumbojumbot-done">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/mumbojumbot/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Přednáška o Involveru a mých AS3 komponentách</title>
		<link>http://vaclav.vancura.org/course-2009-12</link>
		<comments>http://vaclav.vancura.org/course-2009-12#comments</comments>
		<pubDate>Mon, 14 Dec 2009 09:29:01 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[course]]></category>
		<category><![CDATA[life]]></category>
		<category><![CDATA[prague]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2315</guid>
		<description><![CDATA[Dobré ráno, Ve středu 16.12. od 17:30 budu mít v Adobe přednášku o Involver Media Playeru a mých AS3 GUI komponentách. Přijďte se podívat! Více info má Adobe UG. Těším se na vás! • Good morning, On Wednesday 16 at 5:30 I&#8217;ll have a small course at Adobe Prague about Involver Media Playeru and my [...]]]></description>
			<content:encoded><![CDATA[<h2>Dobré ráno,</h2>

<p>Ve středu 16.12. od 17:30 budu mít v Adobe přednášku o <a href="http://j.mp/involver">Involver Media Playeru</a> a mých <a href="http://j.mp/vancas">AS3 GUI komponentách</a>. Přijďte se podívat! Více info <a href="http://j.mp/87uxJG">má Adobe UG</a>.</p>

<p>Těším se na vás!</p>

<p>•</p>

<h2>Good morning,</h2>

<p>On Wednesday 16 at 5:30 I&#8217;ll have a small course at Adobe Prague about <a href="http://j.mp/involver">Involver Media Playeru</a> and my <a href="http://j.mp/vancas">AS3 GUI components</a>. Come to see me! More info <a href="http://j.mp/87uxJG">is on Czech Adobe UG</a>.</p>

<p>Looking forward to meet you!</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/course-2009-12/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vancura-AS3-Libs</title>
		<link>http://vaclav.vancura.org/vancura-as3-libs</link>
		<comments>http://vaclav.vancura.org/vancura-as3-libs#comments</comments>
		<pubDate>Fri, 06 Nov 2009 09:56:50 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=2291</guid>
		<description><![CDATA[Finally I was able to take some free time and open my AS3 libraries. What does it do?]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Finally I was able to take some free time<br />and open my AS3 libraries.</span>
</p>

<p>What does it do? Read the docs here: <a href="http://doc.vaclav.vancura.org/vancura-as3-libs">here</a> and point your browser to the <a href="http://github.com/vancura/vancura-as3-libs">git repo</a>.</p>

<p><span id="more-2291"></span></p>

<h3>Features</h3>

<p>Currently these features are covered:</p>

<h4>Core functions</h4>

<ul>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/MorphSprite-as.html">MorphSprite class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/QBitmap-as.html">QBitmap class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/QSprite-as.html">QSprite class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/QTextField-as.html">QTextField class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/QVideo-as.html">QVideo class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/Stats-as.html">Stats class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/FPS-as.html">FPS class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/GlobalStage-as.html">GlobalStage class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/ModalWindow-as.html">ModalWindow class</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/Drawing-as.html">Drawing()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/Bitmapping-as.html">Bitmapping()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/addChildren-as.html">addChildren()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/removeChildren-as.html">removeChildren()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/duplicateMovieClip-as.html">duplicateMovieClip()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/addEventListeners-as.html">addEventListeners()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/removeEventListeners-as.html">removeEventListeners()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/assign-as.html">assign()</a></li>
<li><a href="http://doc.vaclav.vancura.org/vancura-as3-libs/files/org/vancura/vaclav/core/clone-as.html">clone()</a></li>
</ul>

<h4>Easy <a href="http://code.google.com/p/vanrijkom-flashlibs/wiki/FAR">Far</a> wrapper:</h4>

<ul>
<li>Far</li>
<li>FarHelperItem</li>
</ul>

<p>More features coming soon: <strong>skinnable widgets</strong>, <strong>remoting</strong> and more. Watch this space for more information.</p>

<h3>How to get the SWC</h3>

<p>There are several ways to get the library for use in your project.</p>

<h4>Binary distribution</h4>

<p>In case you&#8217;re lazy or you don&#8217;t have all required components to compile it on your machine, you can grab the SWC <a href="http://github.com/vancura/vancura-as3-libs/blob/master/bin/vancura-as3-libs.swc">here</a>.</p>

<h4>Compilation from source</h4>

<p>You can compile the SWC very easily. In simple words you just need to launch <strong>./compile.sh</strong> file. I wrote it on OSX, but it should work fine on a Linux machine as well. The only issue, actually, is the Windows machine. Since I don&#8217;t have access to any Windows installation around here, you have to figure out how to compile it. Just take a look at the compile.sh file and you&#8217;ll see what&#8217;s going on there.</p>

<p>The library uses several 3rd party components:
* <a href="http://tweenmax.com">Greensock Tweening Platform</a> (known as TweenNano, TweenLite and TweenMax)
* <a href="http://code.google.com/p/printf-as3">Printf-AS3</a>, an article <a href="http://www.stimuli.com.br/trane/2009/feb/21/printf-as3">here</a>.
* <a href="http://code.google.com/p/vanrijkom-flashlibs">Vanrijkom Flashlibs</a>
* <a href="http://www.dafont.com/search.php?psize=m&#038;q=uni_05_x">Uni fonts</a> by <a href="http://miniml.com">miniml.com</a></p>

<p>All these files are downloaded from internet and not included in the source package. Hence you&#8217;ll get the most up-to-date SWC if you compile.</p>

<p>Of course you need <a href="http://www.adobe.com/products/flex">Adobe Flex SDK</a>. In my <strong>compile.sh</strong> script I use <a href="http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4">FlexSDK4 beta</a>, which is not out yet, but works pretty well for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/vancura-as3-libs/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Involver Media Player</title>
		<link>http://vaclav.vancura.org/involver-media-player-featured</link>
		<comments>http://vaclav.vancura.org/involver-media-player-featured#comments</comments>
		<pubDate>Wed, 21 Oct 2009 09:38:47 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[sideshow]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1852</guid>
		<description><![CDATA[The request sent from Sideshow and Involver was clear: to prepare the most advanced video player today. With plugin support, skinning, color theming (to fit any client color combination), advanced error recovery and other bleeding edge features.]]></description>
			<content:encoded><![CDATA[<p>The request sent from Sideshow and Involver was clear: to prepare the most advanced video player today. With plugin support, skinning, color theming (to fit any client color combination), advanced error recovery and other bleeding edge features.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/involver-media-player-featured/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Involver Media Player</title>
		<link>http://vaclav.vancura.org/involver-media-player</link>
		<comments>http://vaclav.vancura.org/involver-media-player#comments</comments>
		<pubDate>Wed, 21 Oct 2009 08:07:32 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[User Interface Coding]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[sideshow]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1834</guid>
		<description><![CDATA[The request sent from Sideshow and Involver was clear: to prepare the most advanced video player today. With plugin support, skinning, color theming (to fit any client color combination), advanced error recovery and other bleeding edge features.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">The request sent from Sideshow and Involver was clear: to prepare the most advanced video player today. With plugin support, skinning, color theming (to fit any client color combination), advanced error recovery and other bleeding edge features.</span>
</p>

<p>
<div class="fullsize-image"><img src="http://vaclav.vancura.org/data/2009/10/involver-logo.png" class="transparent " /></div>

</p>

<p>The Involver Media Player is coded in pure ActionScript 3 (to save space and hence bandwidth), with a help by PureMVC, BulkLoader, TweenMax libraries and a lot of my own open source classes.</p>

<p>Today you can meet this player on Facebook and other social networks. I worked on this player for several months and I think the request was successfully fulfilled. As you can see below, the feature set is pretty comprehensive.</p>

<h3>Features:</h3>

<ul>
<li>Skinning with custom loaded skins saved as SWFs, easily compiled in Adobe Flash (no Flex and AS3 coding needed, so it&#8217;s very easy to prepare new skins),</li>
<li>Color theming of all skin elements (via config XML),</li>
<li>Configuration from config XML, overriding any settings via FlashVars and remoting,</li>
<li>Plugins (external in remote SWFs, internal bundled with player),</li>
<li>Advanced system and network error recovery,</li>
<li>Logging locally via LocalConnection, trace() and remotely to logging remoting endpoint,</li>
<li>JavaScript events to invoke on a certain event (play, pause, stop, checkpoint spotted, plugin widget clicked, etc.),</li>
<li>Player can be fully controlled from JavaScript,</li>
<li>Full playback support (play, pause, skip, seek, load progress, playback progress, volume, mute),</li>
<li>Full playlist support (sequential playback, random playback, intro playback),</li>
<li>Fullscreen support,</li>
<li>Titles, logos and other graphics on screen while playing, with animation and precise positioning,</li>
<li>Mouse wheel support to control volume and/or seeking,</li>
<li>Set checkpoints in video and playlist to call a function or plugin,</li>
<li>Plugins can add custom buttons to the toolbar, footer and &#8220;More&#8221; screen,</li>
<li>Advanced animation when resizing player window,</li>
<li>Plugin tickers during video playback,</li>
<li>Preroll / postroll plugins and actions,</li>
<li>Popup blocker handler and ticker,</li>
<li>Galleries of images and videos,</li>
<li>Carousel to navigate images and videos,</li>
<li>Facebook application plugin,</li>
<li>Discussion plugin (with a playback ticker),</li>
<li>Link plugin (with a list of links and playback ticker),</li>
<li>Playlist navigator plugin,</li>
<li>Image viewer plugin,</li>
<li>Slideshow plugin,</li>
<li>RSS reader plugin,</li>
<li>Share this video plugin,</li>
<li>Signup plugin,</li>
<li>Stream listing plugin.</li>
</ul>

<h3>Examples:</h3>

<ul>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/1-basic-small.php" rel="zoombox 300 300">Basic player with two plugins</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/2-larger.php" rel="zoombox 600 400">Larger player with two plugins</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/3-full-page-resize.php" target="_blank">Scaling full window player (opens a new window)</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/6-try-clicking-the-video.php" rel="zoombox 800 600">Player with mouse click handler to show a page</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/10-more-plugins.php" rel="zoombox 800 600">More plugins</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/11-link-plugin-previews.php" rel="zoombox 800 480">Notification bar handled by the Link plugin</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/12-quiz-plugin-previews.php" rel="zoombox 800 480">Notification bar handled by the Quiz plugin</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/13-rss-plugin-previews.php" rel="zoombox 800 480">Notification bar handled by the RSS plugin</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/14-resize-plugin-menu.php" target="_blank">A lot of plugins, try resizing browser window after clicking &#8220;More&#8221; button (opens a new window)</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/15-theming.php" rel="zoombox 800 480">Color theming from configuration XML</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/16-muppets.php" rel="zoombox 800 480">Muppets skin by Alex Schleifer</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-1/17-theming-muppets.php" rel="zoombox 800 480">Theming Muppets skin by Alex Schleifer</a></li>
<li><a href="http://mirror.vaclav.vancura.org/involver-player-2/sunkist-skin.php" rel="zoombox 300 250">Sunkist skin by Sunkist Soda</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/involver-media-player/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ve víru velkoměst</title>
		<link>http://vaclav.vancura.org/ve-viru-velkomest-featured</link>
		<comments>http://vaclav.vancura.org/ve-viru-velkomest-featured#comments</comments>
		<pubDate>Tue, 20 Oct 2009 14:01:43 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flier creation]]></category>
		<category><![CDATA[frognfly]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[jiglib]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[papervision3d]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1772</guid>
		<description><![CDATA[Staropramen asked Flier Creation and me to create a visually expressive game called "Ve víru velkoměst". We thought isometric view would be awesome for a game of this type. My part of job was to bring to life the whole client side, except drawings (done by Vladimír 'Frognfly' Chalupa) - that means all user interface graphics, icons, animations, Flash, Papervision3D and interactivity is my work. I really enjoyed this job, as I was able to do what I love, from scratch to finish.]]></description>
			<content:encoded><![CDATA[<p>Staropramen asked Flier Creation and me to create a visually expressive game called &#8220;Ve víru velkoměst&#8221;. We thought isometric view would be awesome for a game of this type. My part of job was to bring to life the whole client side, except drawings (done by Vladimír &#8216;Frognfly&#8217; Chalupa) &#8211; that means all user interface graphics, icons, animations, Flash, Papervision3D and interactivity is my work. I really enjoyed this job, as I was able to do what I love, from scratch to finish.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/ve-viru-velkomest-featured/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Young &amp; Rubicam Prague</title>
		<link>http://vaclav.vancura.org/young-rubicam-prague-featured</link>
		<comments>http://vaclav.vancura.org/young-rubicam-prague-featured#comments</comments>
		<pubDate>Tue, 20 Oct 2009 08:37:57 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flier creation]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[usability]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1623</guid>
		<description><![CDATA[Young &#038; Rubicam Prague site created together with Flier Creation. I've prepared whole client side, client-server bridge, tweaked media recompression settings and helped to design parts of UI and UX.]]></description>
			<content:encoded><![CDATA[<p>Young &#038; Rubicam Prague site created together with Flier Creation. I&#8217;ve prepared whole client side, client-server bridge, tweaked media recompression settings and helped to design parts of UI and UX.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/young-rubicam-prague-featured/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tsentas Developers</title>
		<link>http://vaclav.vancura.org/tsentas-developers-featured</link>
		<comments>http://vaclav.vancura.org/tsentas-developers-featured#comments</comments>
		<pubDate>Sun, 11 Oct 2009 13:38:28 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[papervision3d]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[sideshow]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=989</guid>
		<description><![CDATA[Real estate developer of residential and commercial properties on Cyprus. This site heavily uses Papervision3D library and advanced 3D navigation. I've produced the whole project: user interface graphics, Flash programming, Drupal administration and remoting via AMFPHP and search engine optimization.]]></description>
			<content:encoded><![CDATA[<p>Real estate developer of residential and commercial properties on Cyprus. This site heavily uses Papervision3D library and advanced 3D navigation. I&#8217;ve produced the whole project: user interface graphics, Flash programming, Drupal administration and remoting via AMFPHP and search engine optimization.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/tsentas-developers-featured/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ve víru velkoměst</title>
		<link>http://vaclav.vancura.org/ve-viru-velkomest</link>
		<comments>http://vaclav.vancura.org/ve-viru-velkomest#comments</comments>
		<pubDate>Tue, 31 Mar 2009 22:00:09 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[User Interface Coding]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flier creation]]></category>
		<category><![CDATA[frognfly]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[jiglib]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[papervision3d]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1719</guid>
		<description><![CDATA[Staropramen asked Flier Creation and me to create a visually expressive game called "Ve víru velkoměst".]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Staropramen asked Flier Creation and me<br />to create a visually expressive game called<br />&#8220;Ve víru velkoměst&#8221;.</span>
</p>

<p>
<img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-logo.png" class="transparent inserted " />

We thought isometric view would be awesome for a game of this type. My part of this job was to bring to life the whole client side, except drawings (done by Vladimír &#8216;Frognfly&#8217; Chalupa) &#8211; that means all user interface graphics, icons, animations, Flash, Papervision3D and interactivity is my work.</p>

<p>I really enjoyed this job as I was able to do what I love, from scratch to finish. While designing skinning core, I developed a new skinning library I will open for public use soon. Watch my space on <a href="http://github.com/vancura">GitHub</a>.</p>

<h3>Click the images below to view<br />full resolution screenshots.</h3>

<p>
<a href="http://vaclav.vancura.org/data/2009/10/staropramen-1-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Initial game screen"><img src="http://vaclav.vancura.org/data/2009/10/staropramen-1-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Initial game screen.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-1-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Basic screen elements"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-1-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Basic screen elements.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-2-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="First game mockups"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-2-poster.jpg" class="" /></a><br />
<span class="image-description"><em>First game mockups.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-3-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Overall map with an already bought house and current avatar position"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-3-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Overall map with an already bought house and current avatar position.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-4-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Original overall map"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-4-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Original overall map.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-5-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Original character designer screen, page 1"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-5-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Original character designer screen, page 1.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-6-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Original character designer screen, page 2"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-6-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Original character designer screen, page 2.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-7-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Defect window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-7-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Defect window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-8-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Jackpot window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-8-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Jackpot window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-9-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Casino window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-9-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Casino window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-10-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Help a Friend window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-10-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Help a Friend window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-11-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Job window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-11-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Job window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-12-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="New Message window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-12-poster.jpg" class="" /></a><br />
<span class="image-description"><em>New Message window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-13-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Taxi window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-13-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Taxi window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-14-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Jail window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-14-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Jail window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-15-fullsize.jpg" rel="zoombox[ve-viru-velkomest] " title="Webcafe window"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-mockup-15-poster.jpg" class="" /></a><br />
<span class="image-description"><em>Webcafe window.</em> Click the image to see the full resolution screenshot.</span>
</p>

<h3>Animated preloader preview</h3>

<p>
<a href="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-preloader.swf" rel="zoombox[ve-viru-velkomest] 913 472" title="Animated preloader"><img src="http://vaclav.vancura.org/data/2009/06/ve-viru-velkomest-preloader-poster.png" class="" /></a><br />
<span class="image-description">Click to see the preloader preview.</span>
</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/ve-viru-velkomest/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Myousica Multitrack Editor</title>
		<link>http://vaclav.vancura.org/myousica-multitrack-editor</link>
		<comments>http://vaclav.vancura.org/myousica-multitrack-editor#comments</comments>
		<pubDate>Wed, 31 Dec 2008 22:00:14 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[User Interface Coding]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[adelao]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[usability]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1856</guid>
		<description><![CDATA[For this project I prepared online multitrack audio editor, video and audio player and other solutions.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">For this project I prepared online multitrack audio editor, video and audio player and a web site ticker.</span>
</p>

<p>Unfortunately the project is not alive anymore. However all these subprojects were pretty complex and made me much better programmer.</p>

<h3>Click the images below to view<br />full resolution screenshots.</h3>

<p>
<div class="fullsize-image"><a href="http://vaclav.vancura.org/data/2009/10/myousica-1-fullsize.png" rel="zoombox[myousica-multitrack-editor] "><img src="http://vaclav.vancura.org/data/2009/01/myousica-1-poster.png" class="transparent " /></a></div>
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>
<div class="fullsize-image"><a href="http://vaclav.vancura.org/data/2009/10/myousica-2-fullsize.png" rel="zoombox[myousica-multitrack-editor] "><img src="http://vaclav.vancura.org/data/2009/10/myousica-2-poster.png" class="transparent " /></a></div>
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2009/10/myousica-3-fullsize.png" rel="zoombox[myousica-multitrack-editor] "><img src="http://vaclav.vancura.org/data/2009/10/myousica-3-poster.png" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/myousica-multitrack-editor/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tsentas Developers</title>
		<link>http://vaclav.vancura.org/tsentas-developers-full</link>
		<comments>http://vaclav.vancura.org/tsentas-developers-full#comments</comments>
		<pubDate>Sat, 31 May 2008 22:00:03 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[User Interface Coding]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[papervision3d]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[sideshow]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://vaclav.vancura.org/?p=1635</guid>
		<description><![CDATA[Real estate developer of residential and commercial properties on Cyprus. This site heavily uses Papervision3D library. ]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Real estate developer of residential and commercial properties on Cyprus. This site heavily uses <a href="http://papervision3d.org">Papervision3D</a> library.</span>
</p>

<p>I designed user interface and interaction, programmed client-side Flash and server-side Drupal administration system. On the end everything you can see here is my work, except the content of course.</p>

<h3>Click the images below to view<br />full resolution screenshots.</h3>

<p>
<a href="http://vaclav.vancura.org/data/2008/06/tsentas-1-fullsize.jpg" rel="zoombox[tsentas-developers] "><img src="http://vaclav.vancura.org/data/2008/06/tsentas-1-poster.jpg" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2008/06/tsentas-2-fullsize.jpg" rel="zoombox[tsentas-developers] "><img src="http://vaclav.vancura.org/data/2008/06/tsentas-2-poster.jpg" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2008/06/tsentas-3-fullsize.jpg" rel="zoombox[tsentas-developers] "><img src="http://vaclav.vancura.org/data/2008/06/tsentas-3-poster.jpg" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>

<p>
<a href="http://vaclav.vancura.org/data/2008/06/tsentas-4-fullsize.jpg" rel="zoombox[tsentas-developers] "><img src="http://vaclav.vancura.org/data/2008/06/tsentas-4-poster.jpg" class="" /></a><br />
<span class="image-description">Click the image to see the full resolution.</span>
</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/tsentas-developers-full/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Papervision3D: Cube</title>
		<link>http://vaclav.vancura.org/papervision3d-cube</link>
		<comments>http://vaclav.vancura.org/papervision3d-cube#comments</comments>
		<pubDate>Fri, 23 Nov 2007 19:35:21 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[papervision3d]]></category>

		<guid isPermaLink="false">http://localhost/Homepage/Vaclav.Vancura.org-wordpress/?p=161</guid>
		<description><![CDATA[Poslední týden jsem strávil studiem knihovny Papervision3D...]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Poslední týden jsem strávil studiem knihovny <a href="http://wiki.papervision3d.org">Papervision3D</a>&#8230;</span>
</p>

<p><em>Prosím čtěte před spuštěním kostky:</em> Právě jsme s Kaplickem zjistili, že vám kostka pravděpodobně shodí browser, pokud nemáte nejnovější Flash Player. Aktuální build je 9.0.98.0, verzi vašeho pluginu zjistíte <a href="http://www.mediacollege.com/flash/player/version/show.html">zde</a> a aktuální betu Flash Playeru stáhnete <a href="http://labs.adobe.com/downloads/flashplayer9.html">zde</a>.</p>

<p>
<a href="http://vaclav.vancura.org/data/2007/11/Cube.swf" rel="zoombox 600 600" title="Papervision3D: Cube" class="modal"><img src="http://vaclav.vancura.org/data/2009/10/cube.jpg" /></a>
<br /><span class="modal-description">Click the image to launch Flash.</span>
</p>

<p><span id="more-161"></span></p>

<p>Nemůžu se nepodělit o své nadšení, popravdě nečekal jsem, že to s ní půjde tak hladce. Již <a href="http://vaclav.vancura.org/paper-vision">minule</a> jsem dal k dispozici zdroják na animující se koberec, ale vzhledem k tomu, že jsem nepřibalil samotný Papervision, tak to asi nikdo z vás nezkompiloval (pokud si nestáhnul PV3D z SVN nebo jiného zdroje).</p>

<p>V <a href="http://vaclav.vancura.org/data/2007/11/Cube.zip">dnešním balíčku</a> naleznete i kompletní aktuální knihovnu a okomentovaný zdroják. Jediné co potřebujete, je Adobe Flash CS3 (a unzip).</p>

<p>Pokud máte nějaké dotazy, formulář níže je vám k dispozici.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/papervision3d-cube/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Flex a Embed</title>
		<link>http://vaclav.vancura.org/flex-a-embed</link>
		<comments>http://vaclav.vancura.org/flex-a-embed#comments</comments>
		<pubDate>Fri, 09 Nov 2007 14:50:30 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flex]]></category>

		<guid isPermaLink="false">http://localhost/Homepage/Vaclav.Vancura.org-wordpress/?p=157</guid>
		<description><![CDATA[Dnes jsem zjistil, že Flex vůbec není pro grafiky. Že jsou programátoři z úplně jiné galaxie než grafici je jasné. Lidé v Adobe na tom asi nejsou jinak. Flash je pro grafiky a Flex pro programátory.

Programátory asi totiž moc nezajímá, jak se obrázky a zvuky z Flexu exportují. Není totiž žádná možnost jak nastavit kvalitu a kompresi přidávaného obrázku či zvuku, používají se základní hodnoty - které navíc ani nejsou nikde popsané, řekl bych, že se obrázky komprimují na 70 % JPEG.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Dnes jsem zjistil, že Flex vůbec není pro grafiky. Že jsou programátoři z úplně jiné galaxie než grafici je jasné. Lidé v Adobe na tom asi nejsou jinak. Flash je pro grafiky a Flex pro programátory.</span>
</p>

<p>Programátory asi totiž moc nezajímá, jak se obrázky a zvuky z Flexu exportují. Není totiž žádná možnost jak nastavit kvalitu a kompresi přidávaného obrázku či zvuku, používají se základní hodnoty &#8211; které navíc ani nejsou nikde popsané, řekl bych, že se obrázky komprimují na 70 % JPEG.</p>

<p>Flex je naštěstí docela soudný a tak dokáže rozpoznat, kdy je vhodné obrázek komprimovat bezztrátově PNGem a kdy ho prohnat JPEG kompresí. Kdekdo by ale asi docela ocenil, kdyby to bylo možné někde vyladit. Není. U obrázků se to dá přežít, u zvuků je to ale horší. MP3jku, do které se váš zvuk zkomprimuje, nijak neovlivníte. To mi přijde jako opravdu největší amatérismus.</p>

<p><span id="more-157"></span></p>

<h3>Co s tím?</h3>

<p>Naštěstí je zde metoda, jak toto vše nastavit &#8211; potřebujete na to Flash. Zkrátka si připravíte SWF se všemi potřebnými třídami s obrázky a zvuky a použijete interní komprimaci Flashe, která se &#8211; bohudík &#8211; dá nastavit odjakživa.</p>

<p>Ale je tu problém: průhledné obrázky. Ve Flashi jsme si všichni zvykli používat průhledné obrázky komprimované JPEGem, aniž bychom přemýšleli, jak to vlastně s tou kompersí je. Popravdě &#8211; to je jasná věc &#8211; průhledný JPEG neexistuje. Jak to tedy Macromedia vyšpekulovala?</p>

<p>Pokud do Flashe nacpete průhledný PNG a necháte ho při exportu  komprimovat jako JPEG, Flash ho rozloží na dva obrázky: barevný 24bitový a 8bitovou alphu ve škále šedi. Oba zkomprimuje jako JPEG a Flash Player to pak při přehrávání zkombinuje a pustí na obrazovku.</p>

<p>Jenže tohle přesně neumí Flex. Při embedování nepochopí, co to ty dva obrázky vedle sebe v SWF jsou a hodí chybu, ze které se moc nedozvíte. Dnes mi zabralo půl dne, než jsem na to přišel.</p>

<h3>Řešení?</h3>

<p>Jsou dvě: nepoužívat JPEG pro kompresi průhledných obrázků (a tedy komprimovat do PNGu, který umí 8bitovou alphu odjakživa) anebo počkat, co s tím Adobe udělá. Napíšu jim bug report.</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/flex-a-embed/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Paper Vision</title>
		<link>http://vaclav.vancura.org/paper-vision</link>
		<comments>http://vaclav.vancura.org/paper-vision#comments</comments>
		<pubDate>Thu, 08 Nov 2007 17:29:32 +0000</pubDate>
		<dc:creator>Václav Vančura</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[papervision3d]]></category>

		<guid isPermaLink="false">http://localhost/Homepage/Vaclav.Vancura.org-wordpress/?p=156</guid>
		<description><![CDATA[Dlouho mi vrtalo hlavou, proč se knihovna Papervision3D jmenuje jak se jmenuje. Už to vím.]]></description>
			<content:encoded><![CDATA[<p>
<span class="perex">Dlouho mi vrtalo hlavou, proč se knihovna <a href="http://www.papervision3d.org">Papervision3D</a> jmenuje jak se jmenuje. Už to vím.</span>
</p>

<p>Včera jsem se pustil do 3D ve Flashi a dost mne to vzalo. Klikejte, zdroják je <a href="http://vaclav.vancura.org/data/2007/11/Test4.zip">zde</a>.</p>

<p>
<a href="http://vaclav.vancura.org/data/2007/11/Test4.swf" rel="zoombox 744 600" title="Paper Vision" class="modal"><img src="http://vaclav.vancura.org/data/2007/11/Test4.jpg" /></a>
<br /><span class="modal-description">Click the image to launch Flash.</span>
</p>
]]></content:encoded>
			<wfw:commentRss>http://vaclav.vancura.org/paper-vision/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
