A tutorial series on building a game engine from scratch… almost literally

14. June 2013

Kids these days with their free 3D game engines have no idea what life you used to be like!  In addition to walking 5 miles up hill in the snow, both ways, to get and from school, if we wanted to render a polygon on screen, we needed to create a polygon first!

 

I'm not really kidding either.  In the DOS and early Windows 95 days, OpenGL was only available on high end SGI workstations.  There was no 3D accelerations, there were very few game engines and those that were available were insanely expensive.  If you were creating a 3D game engine, you really needed to roll everything yourself… line drawing routines, triangle rasterizing routines ( the act of turning shapes into pixels ), everything was created from scratch and you had no hardware to help you out.  Looking back, its rather amazing how far things have come in such a short period of time!  I don't think anyone could have even fathomed the existence of the Unity game engine back in those days.  If you ever felt that OpenGL or DX11 programming was low level, you should have been programming in those days!

 

Truth told though, it was a lot of fun too.  You opened up your copy of Michael Abrash's Zen of Graphics Programming (still an amazing book!) and got to work. Perhaps most importantly, you also had a better understanding of what was going on than you do now.  Strangely enough, I struggle more now with modern shader programming than I ever did back in those days.  So, while you had to do a great deal more it was also a great deal more simple.  You were always in control of your code, something that has become less and less true.

 

So, why am I talking about this… am I having an old person moment?  No, not at all!  Or at least, I don't think so… do you recognize if you have an old person moment anyways?

 

Ok, back on track… I mention this, because oddly enough David Rousset over at MSDN is creating exactly such a tutorial series.  In his words:

So why building a 3D soft engine? Well, it’s simply because it really helps understanding how modern 3D works with our GPUs. Indeed, I’m currently learning the basics of 3D thanks to internal workshops delivered within Microsoft by the awesome David Catuhe. He’s been mastering 3D for many years now and matrices operations is hard-coded in his brain. When I was young, I was dreaming to be able to write such engines but I had the feeling it was too complex for me. Finally, you’ll see that this is not – that - complex. You simply need someone that will help you understanding the underlying principles in a simple way.

Through this series, you will learn how to project some 3D coordinates (X, Y, Z) associated to a point (a vertex) on a 2D screen, how to draw lines between each point, how to fill some triangles, to handle lights, materials and so on. This first tutorial will simply show you how to display 8 points associated to a cube and how to move them in a virtual 3D world.

He is working in higher level languages ( C#, JavaScript and TypeScript ) and isn't quite getting as low to the metal as we used to, but creating a soft engine goes a great deal lower level than most programmers ever have to go these days.

If you've ever struggled understanding HOW DX or OpenGL work, as in actually work not how to use them, running through this series would be a very good idea.  Currently part one and part two are online.  Here is the end result of part two:

 

Of course, this is all for educational purposes only!  Creating a software based 3D engine in this day and age makes about as much sense as buying a horse and buggy instead of a car.  So if you ever wanted a peek behind the curtains, you may want to keep an eye on this tutorial series.

Programming ,




Mis-Adventures in buying a Razer Blade laptop

14. June 2013

So a few weeks back the RazerBlade 14" laptop was announced and frankly this is exactly the kind of machine I have been looking for for a very long time.  I am exclusively a laptop user, but also a gamer and obviously as a game creator, I put a certain additional demand on my machines.

 

Right now, I am working primarily with a pair of machines.  The first is a Asus RoG G53SX.  Its coming up on two years old now, but it has a i7 with 16GB of RAM as well as an OK nVidia 560M video card.  So far as laptops went a year and a half back, this was about as good as you could get for a game playing system.  There is really only one problem:

G53

 

It's a monster.  Endor has small moons that weigh less, then you can take into account another couple pounds for the equally monstrous power supply.  Plus the fans literally burn my legs if I game with it actually on my lap!

 

Still, it serves it's purpose well.  When I am home at my desk, this is my primary machine, but it's portable enough that I can move between rooms or take it with me if I need a full power machine.  I will say though, lugging this thing around isn't pleasant… good exercise, but not good fun.

 

Earlier this year when my ultra portable died I ended up replacing it with a MacBook Air.  This wasn't my intention, I actually already have an iMac that I can port/test for iOS on, so I actually purchased this laptop with the intention of running only Windows on it ( in the end, I dual booted ).  When shopping I found that portable laptops where either cheap and awful, or expensive and awful!  At it's price level the MBA was actually the best constructed while still being ultra portable.  It's been a good machine and I can't complain.  The performance is OK, but if this was my only machine I certainly wouldn't be doing any gaming!  The HD4000 just isn't up to the task, and frankly, the battery isn't either.

 

On a typical day, I spend about 4 hours out and about using my MacBook, then another 4-6 working or playing on the Asus at home.  Wouldn't it be wonderful if I could just have one machine?  One that had the portability of my MacBook Air, but the power of my "desktop replacement"?

 

Enter the Razer Blade!  In case you haven't heard of it, Razer announced a 14 inch laptop, packing a 675M GPU and the newest Haswell Intel CPU.  Most impressively, they did it in a .66inch heigh form factor!

Razer Blade 14inch 06

 

For me, and my circumstances, its a match made in heaven!  The only thing I wasn't too keen on was the price, but at the end of the day if you want good + small + fast, you are going to have to pay for it.  It's still cheaper than a MacBook Pro and seemingly of comparable build quality.

 

Anyways, this is exactly the type of laptop I have been looking to buy for the last decade, and that has never existed.  After a couple days humming and hawing, I pre-ordered one.

 

Then E3 came and they announced "they were rewarding their loyal pre-order customers" and shipping early.  This was yesterday, so my laptop was being shipped to me about 2 weeks earlier than I expected.  WOOT!

 

Then today I get a notice that my shipment was back-ordered and it would be at least a 2 - 4 week wait.

 

So I basically went from patiently waiting for the ship date to arrive, to exuberant that it was going to be here in a day or two, to outright frustrated and waiting at least as long, perhaps twice as long as I originally expected, all in the span of 2 days.

 

This was really really really bad PR Razer!  The whole idea of back-ordering a pre-order is already quite irritating.  I mean, if you are going to not be able to ship on your ship date… why the hell are you taking pre-orders?  Why in my right mind would I pre-order something from you if it doesn't help me in the slightest. More so, you really blew it on the PR front.  The communication has been awful.  Frankly if it wasn't such a unique product, my order would have been cancelled already.  It's not really a matter that a manufacturing delay occurred, that happens, it sucks, but it happens.  

 

Where you blew it was managing expectations.  I was ok with my initial release date, thats the entire concept behind pre-order in the first place, so when that date arrives, you are sure you will get one.  Then you got my hopes up and my anticipation going by announcing at E3 that you shipped.  Not only aim I not receiving now… I am not even getting it on my original ship date… hell, being back ordered, who knows when I will get it making me question why the hell I pre-ordered in the first place.  Oh and on top, the notice of back order was a system generated message with not a lick of explanation why.

 

This is my first transaction with Razer and I am certainly not impressed.

 

Sorry, end of rant.  In the grand scheme of things it's very minor… I have to wait longer for a laptop I don't specifically need ( if my laptop was broken, that would be a much different story! ).  If they hadn't announced it was shipping yesterday, or it was explained why it was backordered it would have simply irritated, not aggravated me.  It's the combination of aspects that got me steamed… and incredibly disappointed in Razer.

Totally Off Topic




A programmer's guide to creating art for your game

11. June 2013

One man game development studios are becoming more and more common these days and plenty of them are having success.  That said, what do you do when that one man doesn't happen to be an artist?  This post looks at some of the options the Indie game developer has for creating or acquiring art for their game.

 

Pixel Art

 

Big chunky pixels that look like they jumped out of the 1980s are becoming more and more common and there is a good reason for it.  Creating Pixel art is easy, at least relative to other art styles.  Don't get me wrong, it still requires some artistic talent…  representing a complex object with a few blobs is certainly a skill.  That said, you can churn out a ton of pixel art in a very short period of time.  The downside to pixel art, if you don't like the aesthetic ( like me ), you are greatly limiting the appeal of your game.  

 

Pixel Art Example:

 

Realm of the Mad God

ROTMG Screenshot Combat

 

Realm of the Mad God is probably one of the most successful pixel art titles.  As you can see, it has a very simple aesthetic, harking back to games from the NES era… and possibly earlier.

If I am honest, far too many Indie titles are pixel art based… because it is probably the most accessible art style.  As a result, I am overwhelmingly sick of it.  It takes a hell of a lot of buzz to get me to even look at a game using this art style now.  Of course, that's just me… plenty of people still love pixel art, so you will have an audience.

 

Pixel Art Tools

At the end of the day, any image manipulation tool that supports a "fat grid" can be used.  A fat grid is a zoomed in view that shows each individual pixel extremely scaled up, as well as a view of the image at it's regular size.  This means your traditional raster graphic packages such as Photoshop, The GIMP and Paint.NET can all be used.  Of course, a great many (insane???) people just use Paint that comes with Windows!

Additionally a number of Pixel Art focused tools have been developed over the years as well.

Pyxel Edit -- in beta, written in Air

aseprite -- Allegro Sprite Editor.  In pixel art style itself

Pixelmator -- MacOS only raster graphics application.  A vastly cheaper alternative to Photoshop with pixel friendly tools

Grafx2 -- a free pixel art oriented graphic application inspired by Deluxe Paint.  Open source too if that's your thing

GraphicsGale -- available as shareware, another pixel art focused application

ProMotion -- another pixel oriented editor, this one is commercial and has been used to create several commercial games. Not sure about it's development status.

PD Pro -- commercial software.  A Photoshop alternative that is vastly cheaper than photoshop

UltimatePaint -- another Deluxe Paint derived painting app

Pixen -- another Mac only pixel editing app.  Beta is available free, otherwise its $15.

 

Frankly at the end of the day, any pixel based image editing tool will do.  Some of the above programs do make more complicated tasks like animating or lighting a great deal easier than just using Paint, so looking into a dedicated app is certainly worthwhile.  Oh, and if you are under 30, you may be wondering WTF Deluxe Paint is?  Simply put, it was THE 2D game art package for the Amiga.  I think it's safe to say that most games in the early 90s had their art drawn in Deluxe Paint!  Since those days, its become the benchmark of sorts for game art packages.

 

 

Tutorials

YouTube Video on pixel Art using GIMP

Pixel Art for games ( using Photoshop )

PixelJoint -- The sites all about pixel art and hosts a series of tutorials.

FinalBossBlues -- Another series of pixel art tutorials

 

My personal opinion… Pixel art is way overdone, I am sick of it and have to imagine many other people are as well.  That said, its the easiest art form for a non-artist to crank out.

 

Voxels

Voxels are the pixel art of the 3D world.  Voxel is an amalgamation of the worlds VOLUME + Pixel.  So, basically they are a pixel with depth, which in every day parlance is what we call a cube.  Voxel worlds are made up of thousands and thousands of cubes… like a gigantic lego set.  Minecraft wasn't the first voxel game, not by a long shot ( there was a company called Novalogic that was obsessed with Voxels ), but it was easily the most popular.

 

Voxel Example:

Minecraft

Minecraft snapshot

Comanche Maximum Overkill ( 1992! )

Comanche92or 2

 

Voxel Tools

There are a number of tools available for editing voxels, some free, some not so free.

Voxel -- create Voxels on your iPad or iPhone.  Export in OBJ/MTL format or in Minecraft's .binvox format. Free

Sproxel -- free voxel editor.  Seems to have been abandoned in 2012.  Last version was Windows only, prior version available for MacOS. Free

Q-Block -- free, online, simple Voxel editor

Paint3D -- $20.  Windows application for editing voxels.

Zoxel -- I think its free.  Available for Linux and Windows, can export in OBJ.

Voxelogic Acropora -- Much higher end product than the above, for creating ultra high resolution landscapes.  Commercial, $90, with demo available

Cubicle Constructor -- Probably the most polished looking app of the above. Prices range from free to $80.

 

Personally, and this is just me, I've always hated voxels.  These days, a voxel game is going to look like a Minecraft clone as there were SOOOOO many Minecraft clones out there.  That said, Voxels work a lot like lego, so if you can create something visually impressive in lego, you can do the same in Voxels.

 

Vector Graphics

Vector graphics are increasingly common, as you can support multiple resolutions using a single art asset.  Since files are stored as a series of vectors, the image stays sharp regardless to how large or small it is scaled.  This can be a huge boon when supporting multiple resolutions especially with mobile devices.  In many ways, constructing an image using vector graphics is similar to working with construction paper.  You essentially layer shapes on top of other shapes to make more complex objects.  Working with vector graphics is a great deal more difficult than pixel art, but isn't outrageously difficult.

 

Vector Graphics Example:

Castle Crashers

Castle crashers 20100902050138751 001

 

Vector Graphic Tools

There are less vector graphic applications and some clear favourites when it comes to game creation.

Adobe Illustrator -- This is the Photoshop of vector graphics.  It's also got a LOT of stuff in their that you don't need, as the package was originally made for doing page layout in the print world.  Still probably the most used professional tool. Expensive! Only available by subscription now.

Adobe Flash -- Increasingly Flash is becoming more and more about game creation.  Flash Professional can be used to create and animate vector graphics, and commonly is!  Also expensive. Only available by subscription now.

Inkscape -- FREE!  Great free vector graphic package.  Very commonly used by those on a budget.

Corel Draw -- another commercial vector graphic package.  Targeted at the same market as Illustrator. Also expensive ( $500 )

iDraw -- Mac/iPad only, quite cheap ( 10$ iPad, 30$ Mac ).  I personally use this program.  More intuitive than Inkscape, simpler than Flash/Illustrator.  No timeline for animation though.

 

There are a couple 2D animation systems available as well.  You can draw your character once, cut them into pieces and let the software handle the animations.  Note that these tools work with regular bitmap graphics, not just vectors

2D IK animation tools

Spine -- 2D skeletal animation

Spriter -- another 2D animation tool

 

Vector Graphic Tutorials

2dgameartforprogrammers -- Has a ton of great vector graphic tutorials.  Be sure to check out the Apache Helicopter tutorial.

Gamasutra tutorial -- Same guy as above, great series.

Inkscape Tutorials -- A series of, you guessed it!  Inkscape tutorials.  Not necessarily game related, but techniques still apply

 

3D Art

I've been a hobbyist at 3D graphics for about as long as there has been an industry and even still, I can only JUST make art good enough for a game and even then I probably take 3x longer than an actual artist, and generate much lower quality work.  Don't kid yourself, 3D is as much a profession as programming.  It will take you years to learn to the point your results don't look like crap.  Don't worry, I wouldn't mention it if there weren't options for the less… talented.  I will discuss those in a second.

 

If you are interested in pursuing 3D, you can find a list of the most commonly used 3D applications right here.  Many of these applications have a price tag in the $5000 range.  However there is the freely available Blender package which is an incredibly capable 3D program for modelling, animating and texturing.  On the other hand, it isn't an easy application to get started with.  That is why I created this five part series, Blender for Programmers.  If you are interested in 3D, it is a good place to start.

 

3D for the less talented!

There are plenty of tools available with a much lower learning curve if you want to work in 3D.  This section mentions a few of them.

Poser -- Use existing character models.  Dress them up, animate and render or exports.  You can easily create animated characters using this application, and can buy a number of pre made assets if the existing content isn't enough for you.  Poser costs between $200 and $400, although it is quite commonly on sale.

Daz Studio Pro -- This program is a lot like Poser.  However it is free but comes with a lot less assets.  I did a tutorial on creating a sprite sheet with Daz and The GIMP if you want an idea what it is like.  That said, although Daz is free, they will spam you A LOT.  I still get two or three emails a week from them and it's not trivial getting yourself removed from the mailing list!

Make Human -- Create fully boned photorealistic humans with ease.  Oh, and it's free!  Used to be a Blender plugin, but now it's free.

Bryce -- Create stunning landscapes with basically zero effort or talent.  It's rather amazing the results you can get from this guy!

Sketchup -- Previously a google application for making 3D models for use in Google Earth.  There is a gigantic repository of models available for free.  If you need to create levels or cityscapes, this is a GREAT place to start.  There was a recent article on Gamasutra on exactly this.  Be careful with licensing issues though!

 

Sculpting Applications:

These applications are like working with 3D clay.  Even with little skill, you can make some remarkably awesome results.

Sculptris -- Free!  Baby brother of ZBrush.  Try it out, it's free.

ZBrush -- THE 3D sculpting application.  $700.

3D Coat -- In between Sculptris and ZBrush.  $350.  Often on sale on Steam, keep an eye. 

Mudbox -- Autodesk's sculpting application.  Most expensive in the list, $800.

 

Use existing assets

There are a HUGE number of assets available that you can buy or simply download online.  You should be able to source a ton of your assets this way.  The maxim You Get Way You Pay For isn't always true, but it often is!  On the other hand, simply because you paid for something doesn't make it good!  Working from many of these assets is tricky because they may not be suitable for games, may not be legally licensable, etc.  

 OpenGameArt -- a huge repository of game focused 2D and 3D art assets.

Blend Swap -- 8000+ freely available Blender Blend files.

Blender-Models -- Another Blender model resource

Mixamo -- 3d character model and animation on a pay per use basis.  Much like Bryce and Daz but online.  Upload your own model for animating, or buy one of theirs.

Content Paradise -- (paid) content for Poser.

Daz3D models -- (paid) content for Daz3D

Unity Asset Store -- if you use the Unity 3D package, there is a huge asset store of ready to drop in assets and scripts

Turbo Squid -- the biggest 3D object store.  Huge variety of content, quality and prices.

CGTrader -- buy and sell 3D assets.

GameTextures -- high quality game ready texture maps for sale.

There are a number of other asset stores available, this is just a small selection of the more common resources. 

 

Programmatic Art

Of course, you always have the option of creating a game that uses strictly programmatic art.  This is, art that is generated by an algorithm instead of an artist.

 

Programmatic Art Example

Rez

Rez ingame

 

Geometry Wars

Geometry wars galaxies 20070629054423884

 

Basically if you go this route, your art is in mathematic form.  On the one hand generating your game art algorithmically has the advantage of minimizing the need for artists.  On the other hand, it requires a completely different set of skills, especially when it comes to writing shaders!  Fortunately there are a few tools out there that help you create shaders visually.

 

Hire an Artist

Of course you may also decide at the end of the day you need an artist!  Obviously adding another person to your team can have a number of downsides…  you will lose a certain amount of creative control ( and should by the way!  Why are you working with an artist if you don't trust their artistic direction? ) over your baby.  Of course there is also a loss in either ownership or a cost involved.

 

Paying an artist, how?

This part is always tricky… how much does an artist cost?  Do you get what you pay for?  Will they work for free?  Will they work for a percentage?  How much of a percentage should I give?  What should I expect from an artist?  What should an artist expect from me?

 

To answer all of those questions, it depends.  It depends on so many things you can't give a simple answer.  Some games have much higher art requirements than others.  Some people have a budget and can pay for contract work, others do not.

 

The easiest and most likely most successful option is collaborating with an artist you know in real life.  Of course, this isn't always an option and can still lead to massive friction once things become about real money.  Make sure you establish the revenue split up front, and make sure fixed costs are accounted for before you start splitting up the pie.  Also be realistic that the pie may never actually arrive!

Contracting out pieces is a bit trickier.  Probably the simplest is to pay X amount per assets.  For example, pay 25$ for a textured tree model.  Working on bid work is by far the most straight forward, but you need to be very specific in what you need from the artist.  The more detail you can give, the better your relationship with go.  Instead of saying " I need a textured tree", say "I need a textured tree, under 300 polygons, a single texture no larger than 512x512 using a power of 2 resolution".  As to determining the cost X… well that is an art form in and off itself!

There is a good chance you have no money, and are willing to offer a percentage of future profits in return for labour.  If this is the route you are going, be VERY upfront about this, and don't pester people that aren't interested in such a work example.  The further along you are in the project, the more likely you will be to acquire a good artist.  If you can hand a game to someone with programmer art stand ins that the artist needs to replace, things will go a lot smoother.  If you've got an idea only… get further along before recruiting, unless you know an artist personally.  If you got an idea only… and that's all you've got ( no programming skills ) I would generally suggest not wasting anyones time.  In this day and age, amazingly enough, the idea is the LEAST important part of the process.  Everybody has the next killer game idea!  The reality is, its generally execution that makes a game great, not the idea.  Exceptions exist, but they are exactly that, exceptions.

 

Where to recruit artists?

Real life is obviously a great place, but not always or even often, an option.  Otherwise there are a number of places you can look for artists, often depending on the type of contract you are offering.

http://www.polycount.com/forum/ -- They have a series of recruiting forums, for paid and unpaid work.

http://www.reddit.com/r/GameDevClassifieds -- Post your jobs, make sure to note paid/unpaid status.  Browse for artists looking for work

http://www.gamedev.net/classifieds -- GameDev.net job boards, contract board and hobby recruiting listings.

http://www.conceptart.org/forumdisplay.php?f=11 -- Concept artists, not game artists, but theres an amazing amount of talent here.

http://forum.deviantart.com/jobs/ -- You get a WIIIIIDDDDDEEEE gamut of talent on this forum, many without game experience, but it is certainly another place to look, if even just to figure out payment amounts.  Forums are for paid work only!

http://www.game-artist.net/forums/employment/ -- Game art focused forums, have sub forums for all kinds of hiring.

 

Summary

At the end of the day, relationships are CRITICAL.  The network of contacts you make will be one of the most valuable assets you can acquire.  Deal fairly with people, don't misrepresent yourself or your project and act professionally.  Even if you aren't paying, act professionally.  It will pay off massively in the long run.  Also keep in mind, every relationship is a two way street.  If you don't like working with an artist you contact walk away ( … if not in breach of contract! ), you will both benefit in the end.

 

Make as much clear up front as possible… revenue split, paid/unpaid, detailed specs, etc… the less ambiguity, the smoother things will go.  Oh, and never pay 100% up front, EVER!

 

This post on scratches the surface of what is out there.  As you can see, even if you don't have artistic talent, there are tons of options out there for you!  If I missed something you feel I should have included, let me know!

 

 

Art, Design, Programming , ,




Apple adds Sprite Kit graphics and physics library to iOS and OS/X

10. June 2013

 

The Apple World Wide Developer conference is currently going on and generally there isn’t all that much of interest to game developers.  This year is a bit of an exception as they added SpriteKit to OSX Maverick (10.9) as well as an upcoming release of iOS.  SpriteKit seems to be a combination of sprite library and physics engine.  In their own words:

Sprite Kit provides a graphics rendering and animation infrastructure that you can use to animate arbitrary textured images—sprites. Sprite Kit uses a traditional rendering loop that allows processing on the contents of each frame before it is rendered. Your game determines the contents of the scene and how those contents change in each frame. Sprite Kit does the work to render frames of animation efficiently using the graphics hardware. Sprite Kit is optimized to allow essentially arbitrary changes to each frame of animation.

Sprite Kit also provides other functionality that is useful for games, including basic sound playback support and physics simulation. In addition, Xcode provides built-in support for Sprite Kit, allowing complex special effects and texture atlases to be easily created and then used in your app. This combination of framework and tools makes Sprite Kit a good choice for games and other apps that require similar kinds of animations. For other kinds of user-interface animation, use Core Animation instead.

Followed by:

Sprite Kit is available on iOS and OS X. It uses the graphics hardware available on the hosting device to efficiently composite 2D images together at high frame rates. Sprite Kit supports many different kinds of content, including:

  • Untextured or untextured rectangles (sprites)

  • Text

  • Arbitrary CGPath-based shapes

  • Video

Sprite Kit also provides support for cropping and other special effects, allowing these effects to be applied to all or a portion of the content. All of these elements can be animated or changed in each frame. You can also attach physics bodies to these elements so that they properly support forces and collisions.

By supporting a rich rendering infrastructure and handling all of the low-level work to submit drawing commands to OpenGL, Sprite Kit allows you to focus your efforts on solving higher-level design problems and creating great gameplay.

So basically it’s a 2D game engine competing with the likes of Cocos2D.  Of course, if you use SpriteKit you will be tied to iOS/OS/X and the newest release at that.  If you are an Apple only shop, this isn’t a big deal, but if you work cross platform or are targeting older hardware, this new library is pretty much useless for now.

 

If you have an Apple ID, you can log in and read the documentation here.

News , , ,




Want a free license for Marmalade as well as a free Blackberry Dev Device?

7. June 2013

 

This promotion just arrived in my email and I figured a few of you might be interested.marmalade_logo

 

 

How do you get a Free Marmalade SDK Licence?

  1. Sign-up or sign-in below
  2. If you don’t already have a Marmalade SDK, download an evaluation licence
  3. Submit a draft BlackBerry 10 app using your existing Marmalade SDK or evaluation licence within 30 days. You will need a BlackBerry® World™ Vendor ID to do this. You can get one here. Don’t worry if it’s not ready at this stage - draft mode BlackBerry 10 apps are only verified to determine if they have been created with the Marmalade SDK, and thus qualify you for the offer. They are only reviewed for sale after the BlackBerry Vendor changes the app status.
    ***Please make sure you come back and input your BlackBerry® World™ Vendor ID (we only need the email address you use to register on BlackBerry World).***
    The first 300 qualifying Vendors* will receive a free BlackBerry Dev Alpha testing device
  4. Once your app is submitted for final review and approved for sale, you will receive a full Marmalade Indie licence worth $499 (existing Indie licence holders will have their licence extended by a year and new licence holders will convert to a full Marmalade Indie Licence).
  5. Go cross-platform: once your app is approved on BlackBerry World, reap further rewards on other app stores, using the full capabilities of your Marmalade cross-platform licence.

 

I am a little confused about part 3.  From the sounds of it, you can create a simple Hello World application and submit it, so long as it was compiled with Marmalade and you are one of the 300 first people to do it, you then qualify for a free BB Dev Alpha device.  It could be that I am reading that wrong.  Once your application is approved for sale on BB store, you then receive a Marmalade license ($499) enabling you to publish to other environments.  Makes sense in a way, as Blackberry is sponsoring this, so they effectively get the first release, but then you can bring your app to other devices. You can read the entire release right here(PDF Link).

 

For those of you that have never heard of it, Marmalade is a cross platform game development kit that supports just about any device you could think to target.  It is C++ based, although it now ships with Marmalade Quick, a RAD tool built on top of Cocos2D-x and Box2D and scripted using Lua.  Marmalade has been used to publish hundreds of mobile titles including Cut The Rope, Plants vs Zombies, Need for Speed and tons more.  Marmalade has been around for a number of years, starting life as the AirPlay SDK.  Marmalade have both a free (and limited) version available, as well as a 30 day trial of each of their versions.  The version being offered is a single seat for a year of the Indie version, which allows you to target BB, iOS, Android and Windows Phone 8.

 

Blackberry is a Canadian smartphone manufacturer, who outside of the business world were more or less a non-factor.  This is rapidly changing though with their most recent releases.  The recently released Z10 and Q10 smartphones, as well as the Playbook tablet are all powered by the QNX operating system, which RIM acquired a few years back.  After some serious teething pains, Blackberry is back and has a number of great devices for running games.  While the install base is smaller than both Android and iOS, it is said to be a lucrative market and hey… you’ve got nothing to lose, you can still port to iOS, Windows Phone and Android.

 

 

EDIT:  I figure I should point out that the Indie license they are giving away still has some limitations.  You cannot have an annual revenue of more than $500K and you need to give a Marmalade attribution.  Unlike the community version, this doesn’t involve a splashscreen or anything that intrusive.  A “Made with Marmalade” logo in your about or credit screen is sufficient.  Here is the full details regarding attribution:

 

As a technology business we thrive by sharing details of the amazing apps and games that are made with Marmalade.

It is for this reason that we ask licensees to reference Marmalade in one or more of the following ways:

Marmalade Community Licence holders

  • A Made with Marmalade splash screen will be displayed when your app loads. The splash screen will display automatically, and will remain on screen for a short time.

Marmalade Indie and Plus Licences

  • Include the Made with Marmalade logo and our website address www.madewithmarmalade.com within the credits and/or about screen. If possible, this should link to www.madewithmarmalade.com.
  • In the event that technical restrictions prevent the above, the wording “Made with Marmalade” and our website address www.madewithmarmalade.com should be included within the app credits and/or ‘About’ screen of your published app. If possible, this should link to our website www.madewithmarmalade.com.
  • An optional Made with Marmalade splash screen will be displayed when your app loads. The splash screen will display automatically, and will remain on screen for a short time.
  • Assets can be downloaded here.

 

EDIT2: I just did the Blackberry World vendor application, a bit of a warning, this doesn’t appear to be a real-time process!  I created a Blackberry ID, then a vendor account and cannot yet log in.  It appears there is a verification process before your account is created.  If it’s a race for the first 300 people, this disconnect, well, sucks.  Basically it means people with Blackberry World accounts already registered are basically guaranteed to get in first.

News ,