Updated Articles
[sdlgit/SDL-Site.git] / pages / blog-0024.html-inc
index f5d4032..bdf8c94 100644 (file)
@@ -1,26 +1,31 @@
 <div class="blog">
 <h1 id="NAME">
-The beginnings of modular design for SDL Perl
+Quick Game for Toronto Perl Mongers
 </h1>
 <div class="CONTENT">
-<div style="text-align: right;"><i>“Do or do not... there is no try.”</i><br />
-</div><div style="text-align: right;"><i>--yoda </i><br />
+<i><br />
+<div style="text-align: right;">Beep ... Boop<br />
+</div></i><br />
 <br />
-</div><h1>The design before</h1><br />
-The bindings before were all in <a href="http://github.com/kthakore/SDL_perl/blob/master/src/SDL.xs">one huge XS file</a>. This was then exported into the SDL module. This means that the XS file has to handle with macros if any component (e.x SDL_Mixer) is not compiled. Moreover having ever binding in one XS file prevents use to treat C structs as object with only one point of free and malloc. This would be BEGIN and DESTROY in Perl. Also the monolithic design introduces a lot of bugs because we have to use free and malloc all over the place. Lastly SDL monolithic design has the constructor for all structs in both Perl and in XS. <br />
+So I am preparing a presentation of the new SDL perl for February's Toronto Perl Mongers meeting. What better way to so off SDL perl then with a game? <br />
 <br />
-<h1>The design we are aiming for</h1>Simple <a href="http://github.com/kthakore/SDL_perl/blob/master/src/Rect.xs">one XS</a> per Module. This would also simplify the Build code.<br />
+I started hacking a small point an click game a few days back. I really didn't have a idea in mind, but I did have a goal. I wanted to make a game that shows the basics of a game in SDL. Drawing to screen, game loops, physics and so on. I think I have accomplished it so far. <br />
 <br />
-<h2>First Step </h2><br />
-We have began with SDL Rect. It is in github master branch now. We are in the progress of making it back compatible. Originally SDL::Rect took named variables as parameters for new(). Now since the constructor <a href="http://github.com/kthakore/SDL_perl/blob/master/src/Rect.xs#L16">is in XS</a> we have only unnamed parameters. <br />
+Take a look at it <a alt="Click the balls to win" href="http://gist.github.com/301949">here</a>. Download that and call it<a alt="Click the balls to win" href="http://gist.github.com/301949">[Shooter.pl]</a>. To win click the balls.<br />
 <br />
+To play this game you need the following:<br />
 <br />
-<h3>Before</h3><br />
-SDL::Rect-&gt;new( -x =&gt; 0, -y =&gt; 0, -width =&gt; 0, -height =&gt; 0);<br />
+<ul><li> <b>Only for Linux)</b> sudo apt-get install libsdl-dev libsdl_gfx-dev </li>
+<li> cpan Alien::SDL </li>
+<li> Click Download Source http://github.com/kthakore/SDL_perl/tree/redesign </li>
+<li> Extract it </li>
+<li> perl Build.PL; perl Build; perl Build install </li>
+<li> perl Shooter.pl </li>
+</ul><br />
+I will put up binaries soon-ish.<br />
 <br />
-<h3>After</h3><br />
-SDL::Rect-&gt;new(0, 0, 0, 0);<br />
+It is a playable (albeit hard) game right now. All 7 seven levels of it. The purpose of the game is simple click the balls to win. Sounds easy but it isn't. You also get a time in milliseconds after each level. Share your scores on here! I will leave it up to you guys to be honest. <br />
 <br />
-Ideally we would like both ways of constructing Rect.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-6151839795039915111?l=yapgh.blogspot.com' alt='' /></div>
-<p><a href="http://feedads.g.doubleclick.net/~a/kLUEuAPtuInPChqB2WfChUn3YyI/0/da"><img src="http://feedads.g.doubleclick.net/~a/kLUEuAPtuInPChqB2WfChUn3YyI/0/di" border="0" ismap="true"></img></a><br/>
-<a href="http://feedads.g.doubleclick.net/~a/kLUEuAPtuInPChqB2WfChUn3YyI/1/da"><img src="http://feedads.g.doubleclick.net/~a/kLUEuAPtuInPChqB2WfChUn3YyI/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/YetAnotherPerlGameHackeryapgh/~4/uEzoBWRJEks" height="1" width="1"/></div></div>
\ No newline at end of file
+I do have to tidy it up and right documentation for it. This way I will be able to present it clearly to my fellow mongers. I am also still looking for ideas to make this a more polished game. FROGGS recommend I make it a classic NES duck hunt game. I thought since I am using gravity I could do a UFO game out of it where you shoot the UFOs. I am open to your ideas.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-1585061047069454098?l=yapgh.blogspot.com' alt='' /></div>
+<p><a href="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/0/da"><img src="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/0/di" border="0" ismap="true"></img></a><br/>
+<a href="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/1/da"><img src="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/YetAnotherPerlGameHackeryapgh/~4/oR6t0trX8yM" height="1" width="1"/></div></div>
\ No newline at end of file