Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

10. April 2012

 

 

Got an Android device and dreamed about coding while out and about?  Until now your choices have been slim to none, but that’s changed with the release of AIDE.aide  What is AIDE?  It’s a complete Java toolchain, including IDE that runs on your Android device.  Frankly, it’s really really really cool.  Did I mention yet, it’s very cool?  Cause it is!

 

 

Everything you need to create an Android app is included, from a text editor with full auto-completion, full compiler, app signing.  Perhaps more impressively, it also includes a full Git implementation and the ability to load Eclipse projects from your DropBox account.

 

 

Here is AIDE in action on my Samsung Galaxy Note:

 

export_08

 

On my Transformer, with full keyboard, it is actually a remarkably desktop-like development experience, but even more shocking, developing on my phone was actually do-able.  Not something I would want to do every day, but editing code was very natural.  The zooming feature is extremely smooth.

 

 

 

Now ready to be really impressed?

 

 

First off… it’s free!

 

 

Second, it’s just over 6MB in size!  An entire Java toolchain, including IDE in under 6 MB?  Extremely impressive.

 

 

AIDE is still currently in beta, but well worth checking out!  You do require Android 2.2 or higher.

Cool Thing of the Week

21. March 2012

 

 

Hey, I’m on time this time! Well, almost…

 

 

This weeks cool thing is in an area where there aren’t too many options, audio capture and manipulation tools.  On the “pro” side, the dominant player is probably Pro-Tools, which is in a word expensive.  With pricing starting at 700$ and going up from there, it is out of the reach of many peoples budget.  Truth of the matter is, it’s probably overkill for most people too.

 

 

In the mid range you have other, slightly cheaper options such as Adobe's SoundBooth or if you are the Mac type, Apple’s Logic Pro.  Both of these apps sell for about 200$.  If you’ve noticed one thing about me though, it’s I like free stuff, I really like free stuff.

 

 

Thankfully there is a free option, and it’s pretty damned good.  This weeks CTofW is Audacity.  In addition to being a rather clever pun, it is also a “free, open source, cross-platform software for recording and editing sounds.  It is available on Windows, Linux and Mac. 

 

 

Audacity in action editing a Wav file:

image

 

 

As is pretty typical of open-source projects, it’s a bit on the ugly side, although compared to it’s open-source peers, it is the belle of the ball.  However, unlike most open sourced projects, it’s incredibly well documented.  In addition to the included documentation, there are actually a few published books including Getting Started with Audacity 1.3 and The book of Audacity.  It’s a good thing too, even though Audacity is pretty simple to get started with, it’s an amazingly deep program.  The short form description for their site goes as follows:

 

You can use Audacity to:

  • Record live audio.
  • Convert tapes and records into digital recordings or CDs.
  • Edit Ogg Vorbis, MP3, WAV or AIFF sound files.
  • Cut, copy, splice or mix sounds together.
  • Change the speed or pitch of a recording.
  • And more!

 

 

 

Instead of going into depth here about what this program can do, I’ll refer you to their feature list.  And I promise you, that list just scratches the surface.

 

 

So, if you are looking for a audio capture and manipulation application and are doing things on a budget, you really can’t do better than Audacity.  Seeing as it’s free and only a 20MB download, what have you got to lose?

Cool Thing of the Week

7. March 2012

 

 

Ok, I realize my definition of a week may vary from what you might traditionally expect.  When I started this concept I thought I would find things all the time, and winnowing it down to aPyBook single item would be the biggest challenge!  Hunting down cool things is trickier than I thought!  This “week” was quite easy, it was brought to my attention using the contact form on this site.  If you have something you think other developers ( and developers in training ) would be interested in, send it to me!

 

 

Anyways, enough about my apparent inability to tell time, on to the cool thing.  Are you interested in learning game programming but are intimidated by the gigantic mountain of details ahead of you?  I understand your frustration, it’s an overwhelming subject with so much to learn and so many options available to you, options that you really aren’t well equipped to answer yet.  This is why I put together my beginners guide and you may notice that one of the languages I suggested was Python, although that section was pretty sparse.  Well this item goes a long way towards fixing that.

 

 

Author Albert Sweigart has created not just one, but two Python books about learning to program games using python.  The first book teaches the Python language by building a number of classic “basic” games including Hangman, Tic Tac Toe and Reversi.  Then around chapter 17, he starts to address more advanced games using the popular Pygame library.  Three chapters is far too little time to deal with this subject, and clearly the author agrees, as the entirety of the second book is about using Python with PyGame. 

 

 

The second book creates much more advanced games, while still teaching Python concepts by example.  In this book you create a minesweeper-esque game, a SNAFU/Nibble clone, a 2D Katamari Damacy’ish with squirrels game, a box pusher type game and a handful more.  It is slightly more involved than the first book, but together you should have no problems with it. The author set out to write a book that a 12 year old could understand and I believe he has succeeded.

 

 

At this point you may be wonder why exactly I’ve featured these particular books, there are literally thousands of books out there.  Good question and how is this for an answer…  They are free!  Al has made both books available under the creative commons license completely free, by almost any definition of the word.  You can head over to InventWithPython.com and read either book online, or download them as PDF.  Absolutely no strings attached.

 

 

That said, if you are the type that prefers a physical book in your hands, or you want to reward the author for his hard work, both Invent Your Own Computer Game with Python and Making Games with Python and PyGame are both available on Amazon, for less than 25$.  Looking at the reviews, it seems both of this books accomplished what they set out to do.

 

 

So, if you are just starting out or are picking up the Python language, these two books are a very good place to start.  Really, at a grand total price tag of 0$, what have you got to lose?

Cool Thing of the Week

10. February 2012

 

 

Sculpting is all the rage in 3D these days, and for good reason.  You can quickly and fairly easily make incredibly detailed models in a very intuitive manner.  Many professional studiossculptris_logo have slotted a sculpting application like Autodesk Mudbox or Pixologic ZBrush in their workflows.  Only one catch… got 800$?  In the world of 3D, that’s rather affordable, but in the world of my wallet, that’s a bit more harsh!  Of course Blender, Maya, Max et al. all have sculpting features, but they simply don’t approach the abilities of a dedicated application.  Fortunately for us, there exists a free option, Sculptris.

 

 

 

 

 

image

 

 

Sculptris began life as a hobby project of Tomas Pettersson, in an attempt to make a free version of ZBrush.  Thing is, he did a damned good job, so good in fact that Pixologic hired him on.  Even cooler for all of us, Pixologic made Sculptris on of their official products and continued to offer it for free!

 

So essentially, you can think of Sculptris as ZBrush lite, but don’t go thinking it’s a demo version or a toy, it is a remarkably capable and streamlined application.

 

If you have never used a 3D sculpting app before, its rather like modeling with virtual clay.  With Sculptris you start with either a flat plane or a 3d sphere, then start pushing, pulling, smoothing, creasing away until your model takes shape.  It really is a remarkably fluid way to work.  Tools are kept to a minimum, in Sculptris you model using: Crease, Rotate, Scale, Draw, Flatten, Grab, Inflate, Pinch and Smooth.  That’s it, and frankly, that’s about all you need.

 

Once you are done shaping your 3D model, now it’s a matter of texturing.  You click the Paint button, choose the texture size you want it to create and it goes to work for a few minutes.  Once your texture map is generated, you can now paint in 3D using the same interface.

 

 

Sculptris is Paint mode ( click for larger image )

image

 

 

Performance is good as is feedback.  I have never experienced a crash, although I have experienced some oddity using Sculptris on my laptop in power saving mode ( the buttons are all in the wrong location and the top menu bar disappears ), but then, using Scultpris in power saving mode isn’t particularly a brilliant idea, so I wouldn’t worry too much.

 

You can of course also import your own models, this is especially useful for creating displacement maps for your lower polygon work.  Sculptris supports importing OBJ ( wavefront, format, but nearly ubiquitous at this point )  as well as GoZ format ( ZBrush format ).  You can also export in the same two file formats.  Be careful though, your exported files aren’t going to be “light”.  Consider the model in the screenshot, it was imported as a 200K OBJ, and after a few minutes in Sculptris when it was exported  it was 14MB in size.

Cool Thing of the Week, Art

26. January 2012

 

 

OK, so I may just be late to the party on this CtotW, as this product is currently one of the darlings of the programming world but I ignored it completely until now.  What is it I ignored so completely and now am rather enamored of?

 

Node.js

 

 

What exactly is Node?  Well basically they ripped the V8 Engine ( yeah, it’s actually called that ) that powers the Javascript engine in Google Chrome and instead used it for creatinglogo-light server side applications, like you would traditionally make using ASP.Net or JSP.  In addition to providing a server side Javascript implementation, they have implemented a number of modules ( in C++ ) to handle many common tasks, from creating an HTTP server to cryptography.  You can of course create your own add-ons in C++.  Of course, as with all things Google, the build process is a bit convoluted and poorly documented, especially for Windows based developers.

 

 

So, why exactly have I ignored Node until now?  Frankly, I hate developing in Javascript, or at least I thought I did.  Reality is, I hate developing in Javascript for browsers!  Once you move yourself out of the browser, it becomes a much more pleasant experience!

 

 

 

What exactly makes Node so enticing?  You can make light weight, simple, scalable and asynchronous servers with absolutely no other software required.  Simple run node.exe “yourAppName” and you have a running server, no need to install Java or configure a web server.  Consider the following Hello World, a completely functional web server in just a few lines of code:

 

var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(8124, "127.0.0.1");

 

Pretty simple eh?

 

 

There are a few downsides though.  Since Node.exe runs as a single process, so will your application.  This means you are tied to a single core per instance of node.  Also, tooling support is a bit lacking.  I tried out the excellent (in concept ) Cloud9 online IDE but simply put, it didn’t work.  I really hope this changes soon, as a web based IDE sounds about perfect.  I am currently trying out WebStorm, but have formed no opinion yet.  Book support is quite limited as well, with Node Web Development and Node: Up and Running: Scalable Server-Side Code with JavaScript  being the only two published books at the moment, although a number of others are in the works.  No doubt as Node matures, so will the educational and tooling support available for it.

 

 

I am going to do a quick test of using Node.js as a simple game server for an SFML based game.  I will update here accordingly when (if) that is complete.

Cool Thing of the Week

Month List

Popular Comments