<?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>ClickPopMedia &#187; Vector</title>
	<atom:link href="http://www.clickpopmedia.com/tag/vector/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.clickpopmedia.com</link>
	<description>ClickPopMedia is a great little design and illustration firm.</description>
	<lastBuildDate>Thu, 03 Dec 2009 17:28:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Updated: Vector Tutorial &#8211; Obama Logo (Added .ai and .eps Assets)</title>
		<link>http://www.clickpopmedia.com/2009/01/23/vector-tutorial-obama-logo/</link>
		<comments>http://www.clickpopmedia.com/2009/01/23/vector-tutorial-obama-logo/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 21:11:37 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[illustrator]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[obama]]></category>
		<category><![CDATA[tutorail]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=379</guid>
		<description><![CDATA[
No matter what you think of his politics, U.S. presidential cantidate Barack Obama has a pretty incredible marketing and design machine behind him. One strong example of this is his &#8220;O&#8221; logo. Simple, attractive, symbolic, it&#8217;s undeniably an effective logo.
Another aspect of the Obama campaign that is attractive to a lot of American&#8217;s is the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-medium wp-image-381" title="Obama Logo" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/obama.jpg" alt="" /></p>
<p>No matter what you think of his politics, U.S. presidential cantidate <a href="http://www.barackobama.com">Barack Obama</a> has a pretty incredible marketing and design machine behind him. One strong example of this is his &#8220;O&#8221; logo. Simple, attractive, symbolic, it&#8217;s undeniably an effective logo.</p>
<p>Another aspect of the Obama campaign that is attractive to a lot of American&#8217;s is the grass-roots, everybody can be involved attitude that they&#8217;ve been trying quite successfully to convey. In honor of that attitude, and just in time for the Democratic Convention, I thought I would show some really helpful Illustrator techniques by making the Obama logo. In this tutorial, we&#8217;ll be going over the Pathfinder, Envelope Warps, Opacity Masks, and Gradient Meshes. And we&#8217;ll use a drop shadow!</p>
<p>What&#8217;s that? You don&#8217;t think we can do it? I have three words for you my friend.</p>
<p>Yes. We. Can.</p>
<p><span id="more-379"></span></p>
<p><strong>Step 1. Get Yourself Ready<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-385" title="Obama 1" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/01.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">I&#8217;m working with a 400px by 400px artboard. I&#8217;ve set a verticle gradient from #0768A4 to #168ACB. Also, it&#8217;s important you&#8217;re working in CMYK for this tutorial. I&#8217;ll explain later when we get down to the Opacity Masks.</p>
<p style="text-align: left;"><strong>Step 2. Lay the Foundation<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-386" title="Obama 2" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/02.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Make a 350px by 350px white circle in the middle of your artboard.</p>
<p style="text-align: left;"><strong>Step 3. Lay Another Foundation<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-387" title="Obama 3" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/03.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Select your cirlce and copy in front (ctrl + f, <em>mac</em> cmd + f) to make a copy in the same position. Size it down to 320px by 320px and apply the same gradient that you have on the background. You&#8217;ll want to have the light blue on the bottom of this circle, and push it up past the middle.</p>
<p style="text-align: left;"><strong>Step 4. And a Third Foundation<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-388" title="Obama 4" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/04.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now copy in front (ctrl + f, <em>mac </em>cmd + f) again, size the circle down to 175px by 175px, and change the fill to white.</p>
<p style="text-align: left;"><strong>Step 5. Stripes<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-390" title="Obama 5" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/05.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now we have to make the gently sloping stripes that represent the bountiful fields of the American mid-west. We start to do this by making five rectangles, alternating red and white. You can start by making one rectangle, then hold down alt (<em>mac</em> option) and drag the shape to make another copy. Line them up, and repeat till you have your five stripes.</p>
<p style="text-align: left;"><strong>Step 6. Bendy Stripes<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-392" title="Obama 6" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/06.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now it&#8217;s time to get your warp on! Yeah! Hit ctrl + alt + shift + w (<em>mac </em>cmd + option + shift + w) or go to Object&gt;Envelope Distort&gt;Make With Warp&#8230; A dialogue box will pop up. Click the preview box, so you can see what you&#8217;re doing, and set distortion just the way you like it. I have mine set to Arc, with the bend at 25%, and the horizontal distortion at -50%.</p>
<p style="text-align: left;"><strong>Step 7. Bendy, Stripey Ground<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-394" title="Obama 7" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/07.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now you want to size up, rotate, and align your stripes. You want the top of your shape stopping slightly below the halfway mark of your innermost white circle, representing the sunrise of a new day or something. The bottom of the stripes need to cover the bottom of the inner blue circle.</p>
<p style="text-align: left;"><strong>Step 8. Pathfinding<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-395" title="Obama 8" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/08.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now we&#8217;re going to use an incredibly helpful tool that I&#8217;ve used in <a href="http://www.clickpopmedia.com/2008/03/27/fun-with-illustrator-happy-little-clouds/">other tutorial&#8217;s</a>. Say hello to the Pathfinder. Select the inner blue circle, copy it in front (ctrl + f, <em>mac</em> cmd + f) and move the copy to the front (ctr + shift + ], <em>mac</em> cmd + shift + ] ). Now select your stripes, expand (Object&gt;Envelope&gt;Expand) and ungroup (ctrl + shift + g, <em>mac </em>cmd + shift + g) them. Finally, select your stripes and the blue circle copy, and hit the crop button in the pathfinder window. You should end up with this:</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-397" title="Obama 9" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/09.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now, if you&#8217;re the boring type, you could stop right here with a perfectly functional Obama logo. If you&#8217;re the adverterous type, why don&#8217;t you continue with me?</p>
<p style="text-align: left;"><strong>Step 9.</strong> <strong>Depth and Shadow</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-398" title="Obama 10" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/10.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now you&#8217;re going to copy the big white circle from the back, and move it to the front (remember that one? ctrl + shift + ], <em>mac </em>cmd + shift + ] ). Here&#8217;s another really great illustrator thing, the gradient mesh. Object&gt;Create Gradient Mesh, then a dialogue window will popup. I set it to 3 columns and three rows. The more detail you want on your gradient, the more rows and columns you should set. For our purposes, 3 is fine.</p>
<p style="text-align: left;">Now we&#8217;re going to begin adding color to individual points on our mesh. Anywhere you want to darken (in my case the bottom left side of the logo) should be assigned darker shades.</p>
<p style="text-align: left;">In the transparency panel, we&#8217;re going to set the blend mode to multiply, and the opacity to 80.</p>
<p style="text-align: left;"><strong>Step 10. The Bright Horizon<br />
</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-399" title="Obama 11" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/11.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now we have to make the bright glow coming up from beyond the horizon. Any ideas on how to do this? If you said, &#8220;Let&#8217;s just use a simple white to black gradient with the blend mode set to lighten or screen.&#8221; you&#8217;d be wrong. Dead wrong.</p>
<p style="text-align: left;">Because of some problem, which I won&#8217;t pretend to understand, with working with CMYK in Illustrator, sometimes you can&#8217;t do lighten or screen gradients. Why don&#8217;t we just work with RGB then? Because the gradients look cruddy, that&#8217;s why.</p>
<p style="text-align: left;">The solution lies in something called an Opacity Mask. First select your inner blue circle, copy it, and move it to the front. Now set the fill to white and set the blend mode to <strong>lighten</strong>. While in the transparency panel, open up the more options menu and select <strong>Make Opacity Mask</strong>. Now with your opacity mask selected, make a rectangle with a white to black gradient fill. Keep in mind, the white area displays fully what&#8217;s underneath, and as you&#8217;re getting closer to black, it masks more and more.</p>
<p style="text-align: left;"><strong>Step 11. More Practice Masking</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-400" title="Obama 12" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/12.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">Now we need to set up another opacity mask for the &#8220;shine&#8221; cast by the rising sun. Copy, paste, and move to front The blue circle. Size it down slightly, and align it with the bottom of the original blue circle. Now Copy this circle, but don&#8217;t paste it yet. Set the blend mode of the white circle to <strong>Screen</strong><img src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/moz-screenshot.jpg" alt="" />.</p>
<p style="text-align: left;">Now create an Opacity Mask on this layer, like you did for your last layer. With the opacity layer selected, paste the circle into it from your clipboard and set the fill to a black to white gradient.  Play around with your gradient till you get the effect you want.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-401" title="Obama 13" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/13.jpg" alt="" width="400" height="400" /><strong></strong></p>
<p style="text-align: left;"><strong>Step 12. The Finishing Touch</strong></p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-403" title="Obama 14" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/14.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">To finish things off we&#8217;re going to add a little dropshadow. Select Effect&gt;Stylize&gt;Drop Shadow, set your settings, and go for it. I have the mode set to Multiply, opacity at 75%, x offset -10px, y offset 10px, and blur to 15px.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-404" title="Obama Logo" src="http://www.clickpopmedia.com/wp-content/uploads/2008/08/end.jpg" alt="" width="400" height="400" /></p>
<p style="text-align: left;">I hope you enjoyed this tutorial. In the next politically minded tutorial, I&#8217;m going to show you how to make a Shepard Farey inspired John McCain poster like <a href="http://www.clickpopmedia.com/projects/mccain/posters/McCain-Kids.pdf">this one:</a></p>
<p style="text-align: center;"><a href="http://www.clickpopmedia.com/projects/mccain/posters/McCain-Kids.pdf"><img class="alignnone" title="Kids" src="http://www.clickpopmedia.com/projects/mccain/McCain-Kids.jpg" alt="" width="300" height="388" /></a></p>
<p style="text-align: center;"><strong><a href="http://www.clickpopmedia.com/Freebies/obama.zip">Download the Obama Logo Asset Files Vectors</a></strong></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
<p style="text-align: center;">
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2009/01/23/vector-tutorial-obama-logo/feed/</wfw:commentRss>
		<slash:comments>44</slash:comments>
		</item>
		<item>
		<title>Free Vector Octopus</title>
		<link>http://www.clickpopmedia.com/2008/06/26/free-vector-octopus/</link>
		<comments>http://www.clickpopmedia.com/2008/06/26/free-vector-octopus/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 02:10:53 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[cartoon]]></category>
		<category><![CDATA[freebie]]></category>
		<category><![CDATA[octopus]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=351</guid>
		<description><![CDATA[
Today is your luck day, friend. It&#8217;s free octopus day at ClickPopMedia! So step up and download yourself an octopus.
Download the Vector Octopus (.ai and .eps)
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img src="http://www.clickpopmedia.com/wp-content/uploads/2008/06/header1.jpg" alt="" /></p>
<p style="text-align: left;">Today is your luck day, friend. It&#8217;s free octopus day at ClickPopMedia! So step up and download yourself an octopus.</p>
<p style="text-align: center;"><a href="http://www.clickpopmedia.com/Freebies/octopus.zip"><strong>Download the Vector Octopus (.ai and .eps)</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/06/26/free-vector-octopus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Water Buffalo Skull Vector</title>
		<link>http://www.clickpopmedia.com/2008/06/18/water-buffalo-skull-vector/</link>
		<comments>http://www.clickpopmedia.com/2008/06/18/water-buffalo-skull-vector/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 15:43:52 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[freebies]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=336</guid>
		<description><![CDATA[
Howdy pardners. I&#8217;m glad you stopped by the ol&#8217; ClickPop Ranch. Sit down, rest your feet a spell, and enjoy this water buffalo skull vector. I realize that this probably isn&#8217;t the way a water buffalo rancher would write. It&#8217;s more like a regular buffalo rancher, but hey, it gets the job done.
Download the Water [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-337" title="skull" src="http://www.clickpopmedia.com/wp-content/uploads/2008/06/skull.png" alt="" width="244" height="300" /></p>
<p>Howdy pardners. I&#8217;m glad you stopped by the ol&#8217; ClickPop Ranch. Sit down, rest your feet a spell, and enjoy this water buffalo skull vector. I realize that this probably isn&#8217;t the way a water buffalo rancher would write. It&#8217;s more like a regular buffalo rancher, but hey, it gets the job done.</p>
<p style="text-align: center;"><a href="http://www.clickpopmedia.com/Freebies/cowskull.zip">Download the Water Buffalo Skull Vector (.ai and .eps)</a></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/06/18/water-buffalo-skull-vector/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Batik is Beautiful &#8211; Free Vector Swatches UPDATED</title>
		<link>http://www.clickpopmedia.com/2008/06/05/batik-is-beautiful/</link>
		<comments>http://www.clickpopmedia.com/2008/06/05/batik-is-beautiful/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 05:07:28 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Textures]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[illustrator]]></category>
		<category><![CDATA[batik]]></category>
		<category><![CDATA[fabric]]></category>
		<category><![CDATA[freebies]]></category>
		<category><![CDATA[swatches]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=325</guid>
		<description><![CDATA[
Last week I posted some desktop wallpaper of a new vector swatch I was working on. Well, the pattern is finally finished, and I&#8217;m pretty happy with it. The design is based on a beautiful Indonesian batik fabric I saw and couldn&#8217;t get out of my mind. It&#8217;s exotic, a little trippy, and a lot [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-326 aligncenter" title="indonesian batik header" src="http://www.clickpopmedia.com/wp-content/uploads/2008/06/header.jpg" alt="" /></p>
<p>Last week I posted some <a href="http://www.clickpopmedia.com/2008/05/29/some-wallpaper/">desktop wallpaper</a> of a new vector swatch I was working on. Well, the pattern is finally finished, and I&#8217;m pretty happy with it. The design is based on a beautiful Indonesian batik fabric I saw and couldn&#8217;t get out of my mind. It&#8217;s exotic, a little trippy, and a lot of fun to play around with.</p>
<p><img style="float: left;" title="batik swatches" src="http://www.clickpopmedia.com/wp-content/uploads/2008/06/swatch_thumbs.gif" alt="" /></p>
<p>I set up three different color schemes: a regal orange and blue, an electric yellow and blue, and a psychedelic green and pink. I also made a bunch of Photoshop patterns from this swatch, if anyone wants those, let me know and I&#8217;ll post them.</p>
<blockquote><p><strong>Batik (<a href="http://en.wikipedia.org/wiki/Batik"><em>from wikipedia.com</em></a><em>, emphasis mine</em>)</strong></p>
<p>a wax-resist dyeing technique used on textile. Batik is found in several countries of West Africa, such as Nigeria, Ghana, Cameroon and Mali, and in Asia, such as India, Sri Lanka, Bangladesh, Iran, the Philippines, Malaysia and Thailand. However, it is in Indonesia that it is considered a national art form.</p></blockquote>
<p style="text-align: center;"><strong><a href="http://www.clickpopmedia.com/Freebies/batik.zip">Download the Batik Vector Swatch (.ai and Illustrator swatches)</a></strong></p>
<p style="text-align: left;"><strong>Update: </strong>First, the Batik vectors have been updated to fix a few issues with the patterns and include two more color schemes. We&#8217;ve also released some <a href="http://www.clickpopmedia.com/2008/06/11/batik-photoshop-patterns/">Photoshop patterns of these swatches</a>.</p>
<p style="text-align: left;">If you come up with some cool color schemes, we&#8217;d be excited to see them.</p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
<p style="clear: both; text-align: left;">.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/06/05/batik-is-beautiful/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Free Vectors: Penguins!</title>
		<link>http://www.clickpopmedia.com/2008/05/19/free-vectors-penguins/</link>
		<comments>http://www.clickpopmedia.com/2008/05/19/free-vectors-penguins/#comments</comments>
		<pubDate>Tue, 20 May 2008 01:02:37 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[free vectors]]></category>
		<category><![CDATA[freebies]]></category>
		<category><![CDATA[penguins]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=311</guid>
		<description><![CDATA[
We&#8217;re working on revamping certain parts of the site right now&#8230; Actually, we always seem to be revamping some part of the site at all times.  Sometimes the revamps are minor, boring little usability things, and sometimes they&#8217;re more interesting.  We don&#8217;t generally announce every time we upgrade something, but this time we [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" title="Penguins" src="http://www.clickpopmedia.com/wp-content/uploads/2008/05/650px1.jpg" alt="Penguins" /></p>
<p style="text-align: left;">We&#8217;re working on revamping certain parts of the site right now&#8230; Actually, we always seem to be revamping some part of the site at all times.  Sometimes the revamps are minor, boring little usability things, and sometimes they&#8217;re more interesting.  We don&#8217;t generally announce every time we upgrade something, but this time we couldn&#8217;t help ourselves.</p>
<p style="text-align: left;">You see, this revamp involves penguins. You read that right, glorious penguins.</p>
<p style="text-align: left;">Along with being a neato blog that gives away free vectors, textures, pixel paterns, and flash things, and offers tutorials on illustrator, web programming, flash, photoshop, etc, we&#8217;re also a new media marketing and web development company. We do all sorts of projects, for all sorts of people. Sometimes it&#8217;s web design, other times we do web app development, and sometimes we set up viral marketing campaigns and social advertising internet campaigns for some really cool companies.</p>
<p style="text-align: left;">We don&#8217;t advertise ourselves much on our blog, and that will probably stay the same, but we are soon going to be changing our &#8220;About&#8221; tab to a &#8220;Services&#8221; page that would really help show off our ClickPopSkills. And like I said, there will be penguins.</p>
<p style="text-align: left;">So have some fun with the cute little penguin chick, fun-loving rockhopper penguin, regal king penguin, and awe-inspiring emperor penguin.</p>
<p align="center"><a title="Penguins" href="http://www.clickpopmedia.com/Freebies/penguins.zip"><strong><span style="text-decoration: underline;">Download the Penguins vector pack (.ai and .eps)</span></strong></a></p>
<p align="left"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/05/19/free-vectors-penguins/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Free Vector: Platypus Swimmer</title>
		<link>http://www.clickpopmedia.com/2008/05/09/free-vector-platypus-swimmer/</link>
		<comments>http://www.clickpopmedia.com/2008/05/09/free-vector-platypus-swimmer/#comments</comments>
		<pubDate>Fri, 09 May 2008 05:41:34 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[cartoon]]></category>
		<category><![CDATA[character]]></category>
		<category><![CDATA[free vectors]]></category>
		<category><![CDATA[platypus]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=307</guid>
		<description><![CDATA[
I coach a YMCA swim team during the winter, so that&#8217;s why you&#8217;re getting this particular vector. This little platypus&#8217; all ready for the Olympics this summer. Have fun.
Download the Platypus (.ai and .eps)
GodBless:VQ
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" src="http://www.clickpopmedia.com/wp-content/uploads/2008/05/650px.jpg" alt="" /></p>
<p>I coach a YMCA swim team during the winter, so that&#8217;s why you&#8217;re getting this particular vector. This little platypus&#8217; all ready for the Olympics this summer. Have fun.</p>
<p style="text-align: center;"><a title="Platypus" href="http://www.clickpopmedia.com/Freebies/Platypus.zip"><strong><span style="text-decoration: underline;">Download the Platypus (.ai and .eps)</span></strong></a></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/05/09/free-vector-platypus-swimmer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Free Vectors: Speech Bubbles</title>
		<link>http://www.clickpopmedia.com/2008/04/21/free-vectors-speech-bubbles/</link>
		<comments>http://www.clickpopmedia.com/2008/04/21/free-vectors-speech-bubbles/#comments</comments>
		<pubDate>Mon, 21 Apr 2008 15:20:39 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[cartoon]]></category>
		<category><![CDATA[free vectors]]></category>
		<category><![CDATA[freebies]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=262</guid>
		<description><![CDATA[
Hey everyone! Have some free speech bubbles.  There&#8217;s a rectanglish one, a circley one, 2 puffy bubbles with varying degrees of puffiness, and a straight edged bubble.
We&#8217;d also like to introduce everyone to a new friend of ours.  You see that little otter in the post header? He&#8217;s a new mascot of ours. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img title="speechbubbles" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/speechbubbles.jpg" alt="Otter" /></p>
<p style="text-align: left;">Hey everyone! Have some free speech bubbles.  There&#8217;s a rectanglish one, a circley one, 2 puffy bubbles with varying degrees of puffiness, and a straight edged bubble.</p>
<p style="text-align: left;">We&#8217;d also like to introduce everyone to a new friend of ours.  You see that little otter in the post header? He&#8217;s a new mascot of ours.  He&#8217;s a tough young go-getter with a mind of his own, and a heart of gold.  There&#8217;s only one problem&#8230; He doesn&#8217;t have a name.</p>
<p style="text-align: left;">We can&#8217;t seem to find a name that really captures the attitude and heart of our friend, so we&#8217;re reaching out to you for some suggestions.  If you have any ideas, leave them in the comments.</p>
<p align="center"><a title="Recording ai" href="http://www.clickpopmedia.com/Freebies/speechBubbles.zip"><strong><span style="text-decoration: underline;">Download the Speech Bubbles (.ai and .eps)</span></strong></a></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/04/21/free-vectors-speech-bubbles/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Free Vectors: Ornamental Borders</title>
		<link>http://www.clickpopmedia.com/2008/04/18/free-vectors-ornamental-borders/</link>
		<comments>http://www.clickpopmedia.com/2008/04/18/free-vectors-ornamental-borders/#comments</comments>
		<pubDate>Fri, 18 Apr 2008 15:14:33 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[free vectors]]></category>
		<category><![CDATA[freebies]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=258</guid>
		<description><![CDATA[

Get out your top hats, monocles, and cashmere, because we have some fancy pants vectors this week. Now you can feel like John D. Rockefeller, Audrey Hepburn, or Scrooge McDuck, surrounded by your very own high class vectors.  Have fun you swanky people&#8230;
 
Download the Ornamental vector pack (.ai and .eps)
GodBless:VQ
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-260" title="ornamental1" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/ornamental1.jpg" alt="Ornamental Vectors" width="350" height="316" /></p>
<p><img style="float:right;" title="ornaments" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/ornaments.jpg" alt="" width="200" height="185" /></p>
<p style="text-align: left;">Get out your top hats, monocles, and cashmere, because we have some fancy pants vectors this week. Now you can feel like John D. Rockefeller, Audrey Hepburn, or Scrooge McDuck, surrounded by your very own high class vectors.  Have fun you swanky people&#8230;</p>
<p style="clear:both;"> </p>
<p align="center"><a title="Ornamental Borders" href="http://www.clickpopmedia.com/Freebies/Ornamental.zip"><strong><span style="text-decoration: underline;">Download the Ornamental vector pack (.ai and .eps)</span></strong></a></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/04/18/free-vectors-ornamental-borders/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Free Vector &#8211; Laurels</title>
		<link>http://www.clickpopmedia.com/2008/04/10/free-vector-laurels/</link>
		<comments>http://www.clickpopmedia.com/2008/04/10/free-vector-laurels/#comments</comments>
		<pubDate>Thu, 10 Apr 2008 17:47:27 +0000</pubDate>
		<dc:creator>VQ</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[VQ]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[free vectors]]></category>
		<category><![CDATA[freebies]]></category>
		<category><![CDATA[vectors]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=245</guid>
		<description><![CDATA[
Good mornin&#8217; pardner&#8217;s. I&#8217;ve vectorized some laurels a-la United Nations for you.  They&#8217;re a lot of fun to play around with, so go wild.
Download the Laurels (.ai and .eps)
GodBless:VQ
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-medium wp-image-246" title="laurelheader" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/laurelheader.png" alt="Laurel Header" width="650" height="200" /></p>
<p>Good mornin&#8217; pardner&#8217;s. I&#8217;ve vectorized some laurels a-la United Nations for you.  They&#8217;re a lot of fun to play around with, so go wild.</p>
<p align="center"><a title="Laurels" href="http://www.clickpopmedia.com/Freebies/clickPopLaurels.zip"><strong><span style="text-decoration: underline;">Download the Laurels (.ai and .eps)</span></strong></a></p>
<p style="text-align: left;"><strong>GodBless:VQ</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/04/10/free-vector-laurels/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Spring Animation with ActionScript 3</title>
		<link>http://www.clickpopmedia.com/2008/04/04/spring-animation-with-actionscript-3/</link>
		<comments>http://www.clickpopmedia.com/2008/04/04/spring-animation-with-actionscript-3/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 06:00:22 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Paul]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Vector]]></category>
		<category><![CDATA[Intermediate]]></category>

		<guid isPermaLink="false">http://www.clickpopmedia.com/?p=223</guid>
		<description><![CDATA[In celebration of our little vector contest I thought I would unofficially submit my own entry.
I made this animation using our Spring Time vector pack.  It&#8217;s about 360Kbs, but once it&#8217;s loaded click Play to get it started, then you can press the Left or Right arrows to control the little bunny.

I&#8217;ll walk you [...]]]></description>
			<content:encoded><![CDATA[<p>In celebration of our little vector contest I thought I would unofficially submit my own entry.</p>
<p>I made this animation using our <a href="http://www.clickpopmedia.com/2008/03/25/spring-vectors-and-contest/">Spring Time vector pack</a>.  It&#8217;s about 360Kbs, but once it&#8217;s loaded click Play to get it started, then you can press the Left or Right arrows to control the little bunny.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="550" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.clickpopmedia.com/wp-content/uploads/2008/04/keyboard-controls.swf" /><embed type="application/x-shockwave-flash" width="550" height="400" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/keyboard-controls.swf"></embed></object></p>
<p>I&#8217;ll walk you through the process I went through to create this here game/animation.</p>
<p><span id="more-223"></span></p>
<p>My first step was to get the <a href="http://www.clickpopmedia.com/category/products/">vector pack</a> that I wanted to use.  Then I imported it into Flash CS3.</p>
<p><a href="http://www.clickpopmedia.com/wp-content/uploads/2008/04/importaifile.png"><img class="aligncenter size-full wp-image-231" title="importaifile" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/importaifile.png" alt="Importing Dialogue Box" width="498" height="499" /></a></p>
<p>You can just go ahead and import everything. Then just delete anything you don&#8217;t need.  I only unchecked a few groups and paths that I knew weren&#8217;t needed.</p>
<p>Once all the groups are imported to the stage you can go into them by double clicking on them and remove or edit them how you like.  For example I got rid of the dirt path on the ground.</p>
<p>When everything was more or less how I wanted it, I started making MovieClip symbols out of some of the more important groups and the rest I either deleted or just left as background on the stage.</p>
<p>Before I wrote any code I thought it would be fun to animate the sun a little and work out how the bunny was going to hop.</p>
<p><img class="alignleft size-medium wp-image-232" title="sunanimate" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/sunanimate-300x278.png" alt="" width="300" height="278" /></p>
<p>For the sun I separated the face and the orange halo behind its head and over the span of 6 frames I rotated the halo just a little bit so that it would loop and look like it was always turning.</p>
<p><a href="http://www.clickpopmedia.com/wp-content/uploads/2008/04/animatebunny.png"><img class="aligncenter size-medium wp-image-233" style="float:left; margin-right:10px;" title="animatebunny" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/animatebunny-300x292.png" alt="Animating the Bunny" width="300" height="292" /></a></p>
<p>With a little thinking ahead I setup the bunny&#8217;s animation and on the first frame I added a quick 3 lines of code to let me stop it from looping if I wanted.</p>
<p>With all the prep done we are finally able to focus on the code.  I started off with my symbol class files (i.e. tree.as, clouds.as, and rabbit.as).</p>
<p>There is very little in the rabbit class.  Just a boolean property called &#8220;moving&#8221; so that the small bit of code on frame one will work.</p>
<p>The <strong>clouds class</strong> is a different story.  I wanted to be able to create a new cloud and not have to worry about what type of cloud it was or how fast it would move.  So, I made my clouds class randomly child one of my four types of clouds:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">public</span> <span class="kw2">class</span> clouds <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></p>
<p><span class="kw3">public</span> <span class="kw2">var</span> vel:<span class="kw3">Number</span>;<br />
<span class="kw3">private</span> <span class="kw2">var</span> c:<span class="kw3">Number</span>;</p>
<p><span class="kw3">public</span> <span class="kw2">function</span> clouds<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; c = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>c &gt; .<span class="nu0">85</span><span class="br0">&#41;</span><span class="br0">&#123;</span> <span class="co1">//15%</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = <span class="nu0">140</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw2">new</span> cloudMad<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span> <span class="kw1">if</span><span class="br0">&#40;</span>c &gt; .<span class="nu0">55</span><span class="br0">&#41;</span><span class="br0">&#123;</span> <span class="co1">//30%</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = <span class="nu0">135</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw2">new</span> cloudCry<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span> <span class="kw1">if</span><span class="br0">&#40;</span>c &gt; .<span class="nu0">3</span><span class="br0">&#41;</span><span class="br0">&#123;</span> <span class="co1">//25%</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = <span class="nu0">80</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw2">new</span> cloudWhistle<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span> <span class="br0">&#123;</span> <span class="co1">//30%</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = <span class="nu0">100</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw2">new</span> cloudSmile<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; vel = <span class="nu0">1</span> + <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>Event.<span class="me1">ENTER_FRAME</span>, doNext<span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></p>
<p><span class="kw3">private</span> <span class="kw2">function</span> doNext<span class="br0">&#40;</span>event:Event<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">x</span> += vel;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">x</span> &gt; <span class="nu0">700</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; removeEventListener<span class="br0">&#40;</span>Event.<span class="me1">ENTER_FRAME</span>, doNext<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; removeChildAt<span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dispatchEvent<span class="br0">&#40;</span><span class="kw2">new</span> Event<span class="br0">&#40;</span>Event.<span class="me1">COMPLETE</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Notice the variable <strong>vel</strong> being randomly set to a number between 1 and 2. Every frame the cloud will move to the right by <strong>vel</strong> pixels.  Since the stage is only 550 pixels long I wanted to delete the cloud once it&#8217;s definitely clear of the screen.  So I remove the child and the event listener and then dispatch a &#8220;complete&#8221; event so I can finish cleaning up somewhere else in my code.</p>
<p>The <strong>tree class</strong> is very similar to the <strong>cloud class</strong> in the respect that it handles it&#8217;s own movement.  But, there is an added complexity to the trees because 1.) I want to recycle them instead of delete them (actually it&#8217;s easier then deleting them), and 2.) The trees don&#8217;t move in a straight line across the screen like the clouds do.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">public</span> <span class="kw2">class</span> tree <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></p>
<p><span class="kw3">private</span> <span class="kw2">var</span> posY:<span class="kw3">Number</span>;</p>
<p><span class="kw3">public</span> <span class="kw2">function</span> tree<span class="br0">&#40;</span>posY:<span class="kw3">Number</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; vel = <span class="nu0">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = <span class="kw3">this</span>.<span class="me1">posY</span> = posY;<br />
&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>Event.<span class="me1">ENTER_FRAME</span>, doNext<span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></p>
<p><span class="kw3">private</span> <span class="kw2">function</span> doNext<span class="br0">&#40;</span>event:Event<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">x</span> += vel*<span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">scaleX</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">x</span> &gt; <span class="nu0">700</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">x</span> = <span class="nu0">-150</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">x</span> &lt; <span class="nu0">-150</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">x</span> = <span class="nu0">700</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">y</span> = posY + <span class="nu0">925</span> &#8211; <span class="kw3">Math</span>.<span class="kw3">sqrt</span><span class="br0">&#40;</span><span class="nu0">925</span>*<span class="nu0">925</span> &#8211; <span class="kw3">Math</span>.<span class="kw3">pow</span><span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">x</span><span class="nu0">-275</span>, <span class="nu0">2</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">this</span>.<span class="me1">rotation</span> = <span class="br0">&#40;</span><span class="kw3">this</span>.<span class="me1">x</span> &#8211; <span class="nu0">275</span><span class="br0">&#41;</span>/<span class="nu0">18</span>;<br />
<span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Multiplying the velocity (<strong>vel</strong>) by the scale (<strong>scaleX</strong>) will add to the illusion of depth.</p>
<p>In order to move my trees along the curvature of the land I first needed to find out the equation of that curve.  To me the curve looked a lot like a segment of a circle, so I just needed to find the radius of that circle.  To do that I zoomed out really far, drew a circle and then played around resizing it till it approximately fit the curve.  In the end I got a radius of 925 (which is actually slightly too big, but it&#8217;s close enough).<br />
Knowing that the <strong>equation of a circle is (X+xOffset)^2 + (Y+yOffset)^2 = R^2.</strong> <strong>Then the equation breaks down to Y = -yOffset + sqrt(R^2 &#8211; (X+xOffset)^2)</strong> and that&#8217;s pretty much what you see near the bottom of my code.  The operator signs (+/-) are different because in flash our coordinate plane is flipped vertically.</p>
<p>OK!  Now that I have (what tense/perspective was I writing in again?) my trees, clouds, and bunny that all take care of their own movement, it&#8217;s time I write the main code that adds everything to the stage.</p>
<p><a href="http://www.clickpopmedia.com/wp-content/uploads/2008/04/docprop.png"><img class="aligncenter size-full wp-image-236" title="docprop" src="http://www.clickpopmedia.com/wp-content/uploads/2008/04/docprop.png" alt="" width="500" height="118" /></a></p>
<p>Ever since I noticed that it was possible I&#8217;ve been writing all my code in external .AS files and then associating them with my document.</p>
<p>So, in my main code&#8217;s constructor I want to add my bunny and trees to the stage and maybe a new cloud every 5 seconds or so:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">public</span> <span class="kw2">class</span> main <span class="kw3">extends</span> <span class="kw3">MovieClip</span><span class="br0">&#123;</span><br />
<span class="kw3">public</span> <span class="kw2">var</span> bunny:<span class="kw3">MovieClip</span>;<br />
<span class="kw3">public</span> <span class="kw2">var</span> treeLayer1:Sprite;<br />
<span class="kw3">public</span> <span class="kw2">var</span> treeLayer2:Sprite;<br />
<span class="kw3">public</span> <span class="kw2">var</span> treeLayer3:Sprite;<br />
<span class="kw3">public</span> <span class="kw2">var</span> myTree:Sprite;<br />
<span class="kw3">public</span> <span class="kw2">var</span> myCloud:Sprite;<br />
<span class="kw3">public</span> <span class="kw2">var</span> cloudTimer:Timer;</p>
<p><span class="kw3">public</span> <span class="kw2">function</span> main<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; addTrees<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; addBunny<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; cloudTimer = <span class="kw2">new</span> Timer<span class="br0">&#40;</span><span class="nu0">5000</span><span class="br0">&#41;</span>; <span class="co1">// Every 5 seconds without an end</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; cloudTimer.<span class="me1">addEventListener</span><span class="br0">&#40;</span>TimerEvent.<span class="me1">TIMER</span>, addCloud<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; cloudTimer.<span class="kw3">start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>KeyboardEvent.<span class="me1">KEY_DOWN</span>, keyDownHandler<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>KeyboardEvent.<span class="me1">KEY_UP</span>, keyUpHandler<span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Of course I need to start to watch for keyboard actions too so I added the event listeners for that.</p>
<p>My addTrees() function has to make 3 layers of trees with different amounts of blur (also to give the illusion of depth):</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">private</span> <span class="kw2">function</span> addTrees<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; treeLayer1 = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; treeLayer2 = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; treeLayer3 = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addChild</span><span class="br0">&#40;</span>treeLayer1<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addChild</span><span class="br0">&#40;</span>treeLayer2<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addChild</span><span class="br0">&#40;</span>treeLayer3<span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> filter:BitmapFilter = <span class="kw2">new</span> BlurFilter<span class="br0">&#40;</span><span class="nu0">4</span>, <span class="nu0">4</span>, BitmapFilterQuality.<span class="me1">LOW</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> myFilters:<span class="kw3">Array</span> = <span class="kw2">new</span> <span class="kw3">Array</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; myFilters.<span class="kw3">push</span><span class="br0">&#40;</span>filter<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; treeLayer1.<span class="me1">filters</span> = myFilters;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; filter = <span class="kw2">new</span> BlurFilter<span class="br0">&#40;</span><span class="nu0">2.5</span>, <span class="nu0">2.5</span>, BitmapFilterQuality.<span class="me1">LOW</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; myFilters &nbsp;= <span class="kw2">new</span> <span class="kw3">Array</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; myFilters.<span class="kw3">push</span><span class="br0">&#40;</span>filter<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; treeLayer2.<span class="me1">filters</span> = myFilters;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i=<span class="nu0">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span><span class="br0">&#40;</span>i=<span class="nu0">0</span>; i&lt;<span class="nu0">4</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="coMULTI">/*The value sent to tree(value) is the Y value at the hight of it&#8217;s curve.*/</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree = <span class="kw2">new</span> tree<span class="br0">&#40;</span><span class="nu0">280</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">scaleX</span> = .<span class="nu0">8</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">scaleY</span> = .<span class="nu0">8</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">x</span> = <span class="nu0">20</span> + <span class="br0">&#40;</span><span class="nu0">200</span>*i<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; treeLayer1.<span class="me1">addChild</span><span class="br0">&#40;</span>myTree<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span><span class="br0">&#40;</span>i=<span class="nu0">0</span>; i&lt;<span class="nu0">3</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree = <span class="kw2">new</span> tree<span class="br0">&#40;</span><span class="nu0">300</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">scaleX</span> = .<span class="nu0">9</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">scaleY</span> = .<span class="nu0">9</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">x</span> = <span class="nu0">-20</span> + <span class="br0">&#40;</span><span class="nu0">300</span>*i<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; treeLayer2.<span class="me1">addChild</span><span class="br0">&#40;</span>myTree<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span><span class="br0">&#40;</span>i=<span class="nu0">0</span>; i&lt;<span class="nu0">2</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree = <span class="kw2">new</span> tree<span class="br0">&#40;</span><span class="nu0">320</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myTree.<span class="me1">x</span> = <span class="nu0">50</span> + <span class="br0">&#40;</span><span class="nu0">400</span>*i<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; treeLayer3.<span class="me1">addChild</span><span class="br0">&#40;</span>myTree<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Adding the bunny to the stage is also really easy:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">private</span> <span class="kw2">function</span> addBunny<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny = <span class="kw2">new</span> rabbit<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">scaleX</span> = .<span class="nu0">5</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">scaleY</span> = .<span class="nu0">5</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">x</span> = <span class="nu0">275</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">y</span> = <span class="nu0">350</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addChild</span><span class="br0">&#40;</span>bunny<span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></div>
<p>Our clouds&#8230;  since there aren&#8217;t ALWAYS clouds in the sky I figured I would only add a new cloud about 30% of the time every 5 seconds.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">private</span> <span class="kw2">function</span> addCloud<span class="br0">&#40;</span>event:TimerEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> &gt; .<span class="nu0">7</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myCloud = <span class="kw2">new</span> clouds<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myCloud.<span class="me1">x</span> = <span class="nu0">-100</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myCloud.<span class="me1">addEventListener</span><span class="br0">&#40;</span>Event.<span class="me1">COMPLETE</span>, handleOffScreen<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">addChildAt</span><span class="br0">&#40;</span>myCloud, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></p>
<p><span class="kw3">private</span> <span class="kw2">function</span> handleOffScreen<span class="br0">&#40;</span>event:Event<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">stage</span>.<span class="me1">removeChild</span><span class="br0">&#40;</span>Sprite<span class="br0">&#40;</span>event.<span class="me1">currentTarget</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></div>
<p>Also remembering to take care of the &#8220;complete&#8221; event that I dispatch from within my cloud object when it goes off stage.</p>
<p>Finally I just have to add my keyboard handling functions, which are really easy:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw3">private</span> <span class="kw2">function</span> keyDownHandler<span class="br0">&#40;</span>event:KeyboardEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>event.<span class="me1">keyCode</span> == <span class="nu0">39</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="co1">//Right</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>!bunny.<span class="me1">moving</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">scaleX</span> = -.<span class="nu0">5</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">moving</span> = <span class="kw2">true</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="kw3">play</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tree.<span class="me1">vel</span> = <span class="nu0">-4</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>event.<span class="me1">keyCode</span> == <span class="nu0">37</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="co1">//Left</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>!bunny.<span class="me1">moving</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">scaleX</span> = .<span class="nu0">5</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">moving</span> = <span class="kw2">true</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="kw3">play</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tree.<span class="me1">vel</span> = <span class="nu0">4</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></p>
<p><span class="kw3">private</span> <span class="kw2">function</span> keyUpHandler<span class="br0">&#40;</span>event:KeyboardEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; bunny.<span class="me1">moving</span> = <span class="kw2">false</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; tree.<span class="me1">vel</span> = <span class="nu0">0</span>;<br />
<span class="br0">&#125;</span></div>
<p>There it is!  I&#8217;ve given you almost all the code right there.  And if you want more, then download ALL the code here: <a href="http://www.clickpopmedia.com/wp-content/uploads/2008/04/springtime-animation.zip">Springtime Animation Source Code.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clickpopmedia.com/2008/04/04/spring-animation-with-actionscript-3/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

