Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
31. January 2017

 

I found myself recently needed some rocks… I could easily download a collection of rocks, but I figured it would be extremely easy to just make my own.  My first thought was to simply take a cube, smoothly sub divide it a number of times, and apply a displacement modifier to it.  The end results however didn’t really bring the results I wanted:

Rock1

 

By the way, you can learn more about using the Displace modifier on my earlier tutorial on using Blender for level creation.

 

Ok, apparently this is going to take more than a few seconds…  hey… I wonder if there is a plugin?  Turns out, yes, yes there is.  The plugin add_mesh_rocks does exactly what it says.  You can download a tarball of the plugin here using the snapshot link.   You can get instructions for installing (a different but same process) plugin in Blender here.  Download and enable the plugin.

image

 

Once you’ve downloaded and enabled the plugin, there is a new option in the Add->Mesh menu, Rock Generator:

image

 

NOTE*** There seems to be a bug, the option wont be available if there isn’t any existing geometry in the scene.

TADA!

image

 

Ok, I admit, that looks a bit more like a kidney bean than a rock, but it’s a start.  If you look in the Tool (T) panel, you will see initial creation options for Rock Builder:

image

 

Click Generate materials if you want it to create a starting rock texture for you.  Every time you change any setting, you will get a completely different rock, like so:

Rock2

 

If you don’t want this behavior, turn off the random seed setting.  Once you’ve got a rock you are happy with… let’s destroy it!

 

Before we go to far though, if you dont want performance to absolutely crawl, we want to apply several modifiers that were created as part of the rock creation process.  Go to the modifiers tab and start applying the various modifiers:

image

 

OK, back to destruction.  The first and most obvious option is the Explode modifier.  There are a few steps we have to take here… first go into edit mode, select all the vertices and in the vertex data tab create a new vertex group.  Now apply first a particle system modifier, then an explode modifier.  Finally wire up the vertex group, like so:

image

 

The problem with explode is that it applies to the hull of the object only, so the results may not be way you want… as you can see:

Rock3

 

In some cases, that effect might be exactly what you are looking for.  Oh, and I turned gravity off to get the effect above. But if you instead want things to be a bit more… substantial, it’s time for a rethink.  In fact, it’s time for another plugin, but thankfully this one ships with Blender, it just needs to be enabled.   What you are looking for is “Cell Fracture”:

image

 

Once enabled, in Object mode, there will now be a new option available in the Edit section of the Tools tab:

image

 

Cell Fracture will split your object up into several solid pieces.  You’ve got tons of control over how the fracturing will occur.

image

 

What I personally did was changed source limit (number of pieces) down to 12 and unchecked “Next Layer” so the fracture occurs in the primary layer.  Now you will notice you’ve got several meshes instead of one:

image

 

In fact, you can now get rid of the source rock if you want.  You will notice your rock is actually 12 rocks now:

rock4

 

Instead of using a particle system like we did with explode, we are going to use Dynamics (Physics) instead.  Select all of the objects, switch to the physics tab and select Add Active.

image

 

This means all of our rocks will now participate in the physics engine.  To see the result, quickly add a plane to the scene, make it a rigid body and turn dynamic off:

image

 

And now press play in the timeline:

rock5

 

Now that looks much more realistic!  Now, what if we wanted our rock to explode instead of fall?  Well, physics are once again coming to our aid!  This time add a force field to the scene:

image

 

Then crank the strength way up (or lower the mass of your objects), like so:

image

 

Once again, I don’t want gravity to be part of the process, so I turn it off.  In the Scene tab, simply turn off gravity, like so:

image

 

And voila, exploding rocks!

Rock6

Art General


24. January 2017

 

Are you perhaps… artistically challenged?  This tutorial will give you passable 8-bit or 16-bit style pixel art results with a minimum of artistic ability.  Of course it assumes you know a bit about Blender, but dont worry if you don’t.  We have a pair of ground up tutorial series that will0001-0060 teach you everything you need to know to follow along, this Blender text tutorial series and this Blender video tutorial series.  Alright, let’s jump right in.  We are going to use a combination of vertex painting, cycles renderer and freestyle in Blender to create an image like the one to the right.  Not the most impressive thing you’ve ever seen I’m sure… but it was exceptionally easy.

 

 

Without further ado, let’s jump in.  For this example I am not going to model the sprite, if you are interested in seeing that process, watch the full video.  Instead we start with a simple model like the following:

image

 

Now let’s look at first colouring it, then cartoon rendering it and finally how to render it in pixel art style.

 

Vertex Painting The Object

First we start off by painting our surface.  The nice thing about Vertex Painting is it draws the colour information directly on the model, so you dont need to worry about UV maps or textures at all.  We just published a video on Vertex Painting in Blender if you want more details.  In the end we are going to use the Cycles renderer, but for now it’s easier to get started painting using the built in default Blender renderer.  This will enable us to easily see the painted vertices in the Blender viewport.  In the default material make sure that Vertex Color Paint is enabled:

image

 

Now it’s time to start filling out our different colors.  In Edit mode, simply select the faces you want to be a specific colour, like I have done here for the cockpit area:

image

 

Now switch over to Vertex Paint Mode:

image

 

Now select “Face Selection Masking For Painting”

image

 

This limits your painting to the faces currently selected in edit mode.  In the Tools menu ( T ), select the color you want to paint with.

image

 

Now hit SHIFT + K to fill the selection with the current colour, like so:

image

 

Now repeat this process for the rest of the ship.

 

Toon Shading In Cycles

Now that you’ve got your ship coloured, it’s time to switch over to the cycles renderer.  If using a default layout, simply select Cycles Render in the dropdown:

image

 

With the change to Cycles Render, we should now have a new option in the Materials dialog

image

 

Click Use Nodes.  Then select Toon BSDF.

image

 

Out of the box Vertex Colors aren't going to work in Cycles, we need to make a simple shader graph to get things to work.  Don’t worry… it’s super easy.  When you do a vertex paint, the data is stored in the mesh data, like so:

image

 

That “Col” data is about to become very useful.  Switch to Node Editor

image

 

Now what we want to do is add an Attribute input and wire it into the Color field of our Toon shader, like so:

image

 

Notice the name “Col”.  This is the link back to our vertex color data.  This causes the Toon shader to use the painted vertex colors as it’s color source.  If you do a render now, it should look something like…

image

 

Better, but still quite fugly…

 

Using Freestyle

Now to get a bit of a more hand-drawn effect, we want to enable freestyle in the Blender renderer:

image

 

Notice I increased the Line Thickness a fair bit from the default… this is a personal choice.  It’s possible you don’t like the default lines it chose to highlight, but don't worry, you can control that if you prefer.  Simply go to Edit Mode, select the edge you want Freestyle to render, select Ctrl+E then Mark Freestyle Edge:

image

 

Now in the Render Layers property panel, locate the Free Style Line Set, then enable Edge Mark.

image

 

Now when we render, it should look like:

image

 

Ok, that looks a bit better!  Now how about that Pixel art look?

 

Compositor Time

The compositor is a process that runs AFTER the image is rendered and can be used to create all kinds of special effects.  In this case we are going to pixelate the result.  In the Renderer dialog, make sure under Post Processing, that Compositing is enabled.

image

 

Now, back in Node Editor, switch to Compositor mode:

image

 

Now we want to edit our graph like so:

image

 

Essentially we take our input Render Layers, scale down the resulting image to 1/5th its size, apply the Pixelate filter, then scale it back to it’s regular size and finally send it to the Composite output.  Now let’s render and see what we’ve got:

image

 

TADA!  Pixel art in just 20 easy steps.  Granted, at that size it doesn’t look great, but at actual game scale:

image

 

It looks pretty solid… for a purple, yellow and emerald model that is!  You can download the Blend used in this example here.

 

The Video

Art


18. October 2016

 

Inkscape 0.92 beta was just released.  Inkscape is a popular open source vector based graphics application that was featured in my free game development tools guide.  From the WIP release notes, the new features include:

 

  • The new Object dialog allows to select, label, hide and lock any object in the drawing from a dialog that lists them all Spirolive
  • Selection sets make it possible to 'group' objects together regardless of document structure
  • Guides can now be locked to avoid accidental movement
  • Several new path effects have been added, among them Envelope/Perspective, Lattice Deformation, Mirror and Rotate Copies
  • There are several new extensions (e.g. a seamless pattern extension) and a new filter (colorblindness simulation) included in the release, many old extensions have been updated or got new features
  • Many SVG2 and CSS3 properties are now supported for rendering (e.g. paint-order, mix-blend-mode)
  • Spray tool and measure tool received a set of nifty new features
  • Interactive smoothing for lines created with the Pencil tool
  • BSplines (and more) are available for the Pen tool
  • Checkerboard background can be used to more easily see object transparencies
  • Open Type font functionality

 

 

 

This bullet list is nowhere near complete however, check the release notes for all of the new features, including animations of much of the new functionality in action.  Currently this release is only available in source form, to download the 0.92pre2 source package click here.

Art


13. October 2016

 

In the recent release of Blender 2.78 Blender received a new feature that’s quite cool, B-Bones or Bendy Bones.  This post is going to take a look at how you can use this new bone option.  So what exactly is a b-bone?  Simply put, it’s a new bone type in Blender that allows itself to be subdivided and bend as a smooth spline instead of as a single entity.  This enables you to use fewer bones to control curved meshes such as a tail or eyebrow.  Don’t worry, it will all make sense in a second.

 

Let’s first take a look at a regular bone and a b-bone side by side:

GIF

 

The bendy bone on the right still only uses two bones in the armature, but the b-bone has additional detail enabling a smoother bend and tighter controls.  Now let’s look at how you use Bendy bones in the first place.  At this point I am going to assume you already know how to use bones in Blender.  If you don’t be sure to check out either this tutorial on animation in Blender.

 

To use Bendy Bones, create an armature like normal.  Then head over to the armature tab:

image

 

Now under display make sure B-Bones is selected:

image

 

Now you can control each individual bone in the Bones section:

image

 

Segments determines how many sub-divisions occur within the bone:

GIF2

 

The remaining controls enable you fine tune control over the spline controlling the sub bones.

 

Using Curve, Roll, Scale and Easing, we’ve got fine tune control over the way the individual bendy bones perform.

Gif4

 

Bendy Bones are a (pun intended) flexible way of adding detail to bending bones without having to create several more bones.  There is a catch however!  Outside of Blender most game engines are going to have no idea what a Bendy bone is.  For example, you can see (by the pinching) that the Bendy Bone is ignored completely once imported into Unity.

gif3

 

It would be awesome if they added the ability to export B-Bones that automatically split into multiple bones.  The only alternative is to get B-Bones support added to the various game engines, a much less likely result.

 

If you want more information on the math behind Bendy Bones, be sure to check out this very technical post.

 

Video Version

 

Art


9. September 2016

 

Never in the history of game development have indie developers, or developers in general, had access to such a massive array of resources.  What is perhaps most impressive is that so many of these tools are available at no cost.  That is exactly what this guide is going to look at, and end to end look at freely available tools for all facets of game development. 

There is also a video version of this guide available here.

This guide is not meant to be comprehensive, I don’t want to flood the reader with too much choice.  I do however want to make sure I capture the “greatest hits”, so If I miss a package that you believe should have been included, please let me know!

 

The Definition of Free

First off, this point needs to be addressed right up front.  To use a popular open source expression, I am talking free as in beer, not free as in freedom.  This means that non-open source tools are going to be included, although when source is available I well mention.  The primary criteria is that the developer can get started and develop using the tool completely free.  There might however be a cost after a certain revenue threshold is met (I find this to be an exceedingly fair business model personally) or there might be multiple tiers available, so long as it includes a free tier that enables you to ship and sell your title, it will be eligible for this guide.  It will also include software and tools that have a premium version available, just know that I am referring to the free tier in this guide.

 


Art

In this section we will look at the essential tools for creating game development art, both 2D and 3D.

 

2D

There are a wide variety of 2D imaging applications available, some specialized for developing and animating 2D game sprites, while others are more general purpose image manipulation applications or painter focused.

 

Paint.Net – Windows

An excellent, easy to use general purpose Painting application with hundreds of plugins available, layer support and more.  Frankly this is my goto application for simple image manipulation tasks.  Featured Paint.NET in the GameDev Toolbox series if you want to learn more.  Sadly it is Windows only software.

 

GIMP – Various – Open Source

Pretty much the closest thing to an open source alternative to Photoshop.  It’s a powerful application with an unwieldy UI.  Thankfully they have been focusing heavily on making UI improvements.

 

Inkscape – Various – Open Source

Inkscape is different from other applications on this list as it’s Vector based (instead of bitmap/raster based).  It takes an approach similar to Adobe Illustrator or Flash and is very useful for creating resolution independent graphics.

 

Krita – Linux/Mac/Windows – Open Source

Krita is an open source application that is focused on digital painting, similar to commercial products like Corel Painter.  In recent releases however it has been extended to add animation and text support, making it more and more useful for game development.

 

ASESprite – Windows/Mac/Ubuntu

This is app is dedicated to creating and animating 8/16bit style sprites.  Supporting painting, layers, onion skinning, fixed color pallet, sprite sheet generation and more.

 

GratfX2 – Various – Open Source

Once upon a time there was a program called Deluxe Paint and it was responsible for art creation for 99% of games developed.  GrafX2 is an open source implementation of that application.

 

Piskel – Mac/Linux/Windows/Web – Open Source

Piskel is another pixel art oriented image editor, although this one is somewhat unique in being usable in the browser, with offline versions available for download.  Supports layers, palletes, animation frames and more.

 

JPixel – Various

Not technically free, it’s a name your own price application, however that price can be $0.  It’s a pixel art application with support for animations, tilesets, color palettes and more.

 

GraphicsGale – Windows

The free version of this application is mostly just limited in what file formats it supports for export.  Sadly it is Windows only.  Offers pretty much every feature you would expect from a pixel graphics oriented application.

 

ShoeBox – Adobe Air

ShoeBox is an image/sprite/texture manipulation tool.  Useful for creating textures from existing images, extracting an animation into a sequence of sprites, creating 9patch images and more.  This is a utility and not a graphics creation package like many in this list.  It requires the Adobe Air runtime to run.

 

TexturePacker – Mac/Windows

TexturePacker by Code and Web is a utility designed to create sprite sheets.  Like ShoeBox above it is not an image creation or modification application.  There is a free version but limits some advanced features.

 

DragonBones – Windows/Mac

Unique in this list, DragonBones is a 2D animation system that enables you to use bone based IK animation to control and animate 2D images.  It’s similar in function to Creature, Spriter and Spine but is completely free.  It comes with runtimes for playing your animations in various game engines.

 

OpenToonz – Windows/Mac

An open source implementation of Toonz, originally developed by Studio Ghibli and used to help make Princess Mononoke, is completely free to use.  Aimed primarily at film animations, Toonz has been used to create animation for games in the past.  Not an easy tool to master.

 

TileCraft – Windows/Mac/Linux – Open Source

TileCraft is a unique little tool for creating 2D sprites using a 3D workflow.  Essentially you add and subtract solid 3D shapes to create more complex 2D images.  It’s an interesting approach and is open source, but sadly hasn’t been updated in over a year.

 

3D

 

Blender – Most Platforms – Open Source

Blender is certainly the biggest 3D package available for free, it’s also open source and remarkably full featured.  Model, sculpt, animate, physics simulation, render and composite all using a single program.  There is a ton of power here, but also a huge learning curve.  Thankfully, I’ve got you covered with a pair of tutorial series.

 

Daz Studio – Windows/Mac

Daz Studio is a 3D package, focused heavily on characters.  It’s incredibly easy to use, is available for free, while they make money selling 3D models, outfits, etc.  It is similar in scope and functionality to another application called Poser, which is not available in a free form.  A warning however, they will spam the email address you register with.

 

Dilay – Windows/Linux – Open Source

Dilay is a free open source 3D sculpting tool in the same vein as Mudbox, Sculptris and ZBrush.  I featured Dilay in this video if you wish to learn more.

 

MagickaVoxel – Windows/Mac

MagickaVoxel is a free to use Voxel editor.  Voxels are an alternative to traditional polygon approach to models, essentially composing objects out of blocks in 3D space. Minecraft is the most famous Voxel based game, but there are plenty of other examples preceding Minecraft.

 

Mixamo/Mixamo Fuse – Windows

Mixamo is a gigantic animation data base, and set of tools for applying animations to 3D models.  Mixamo FUSE is a 3D character creator, using a video game like interface for making 3D character models.  It was purchased by Adobe and currently is available for completely free.  I reviewed Fuse before the Adobe acquisition if you want an idea of what you are getting.  This is perhaps the simplest way to create 3D character models and is certainly the easiest way to animate them.

 

PolyBrush – Windows

PolyBrush is a one of a kind 3D sketching app, enabling you to create complex organic 3D shapes using a sketching workflow.  There is a free version available with some limitations ( single layer, max 8 undo levels, cannot save brushes ) but it is perfectly functional.  I featured Polybrush in this video should you wish to learn more.

 

Sculptris – Windows/Mac

A free 3D sculpting tool from Pixologic, the makers of ZBrush.  It’s not actively developed anymore, but is a great introduction to sculpting and the results can be exported for use in other software such as Blender.  For more details you can watch our Scultpris feature in the GameDev Toolbox series.

 

Wings 3D – Most Platforms – Open Source

Wings is an excellent 3D modeling application built around the Winged Edge polygon.  It enables fast and fairly easy 3D model creation.  Development however appears to have stopped sadly.  In recent years the 3d modeling tools in Blender have also improved greatly, making Wings less and less valuable.

 


Audio

By far my weakest area of knowledge, the following are applications freely available and used to create and edit audio from sound effects to background music.

 

Audacity – Windows/Mac/Linux – Open Source

Audacity is the swiss army knife for recording, translating and modifying audio files.  Simply put you should stop everything and download this tool if you haven’t done so already.  Audacity was featured in the GameDev Toolbox series if you want more information.

 

SunVox – Various

SunVox is a class of program called a ModTracker and can be used to create music.  The interface is simply daunting, but the effects can be pretty amazing.  Runs on just about every platform created by man and possibly aliens.  Was featured in the GameDev Toolbox series as well.

 

ChipTone – Web

ChipTone is like a streamlined version of SunVox that runs in your browser.  Comes with several game focused samples and the ability to record your own.

 

Bfxr.net – Web

A web based sound fx generator.  Very easy to use, start with several default sounds ( explosion, laser, etc. ) then modify the generator to create exactly the effect you need, then download locally.  Dead simple.

 

FMod – Windows/Mac

FMod is perhaps the most used game middleware for AAA and A game titles.  While it’s commercial software, it’s free to use if make less than $100K USD a year. They also offer FMod.io that gives access to a gigantic library of sound effects for 99cents each.  There is a first look video of FMOD.io available here.

 

Podium Free – Windows

Podium is a surprisingly full featured free version of Podium.  Podium is a digital audio workstation (DAW) that enables you to create, record and edit audio and MIDI as well as hosting VST instruments and effect plugins.

 


 

Code

 

This is where the various programming languages and development tools are listed.  Just a few years ago many of these products cost many hundred or thousands of dollars.  These days most programming tools are made available for basically free.  This features only the languages and tools most commonly used in game development.  There are dozens of programming languages and literally hundreds of tools, so a line in the sand must be made.

 

Please note, you often don’t require a programming language at all, at least not a stand alone one.  It’s increasingly common for many game engines to include the entire tool-chain for you, basically hiding this layer from you.  Additionally, some may find using an IDE as way too heavy.  Don’t worry however, you can also work entirely from the command line or terminal and use a lighter weight code editor should you prefer.

 

Languages and IDEs

 

Visual Studio Community – Windows

Visual Studio Community is perhaps the most used IDE (Integrated Developer Environment) in the world of both Windows development and game development in general.  It includes several programming language, but C++, JavaScript and C# are the most commonly used for game development (VB.Net, F# and TypeScript are also supported).  It also contains editors, debuggers, source control and much more.  In fact it contains so much more it’s actually rather bloated at this point, resulting in an install size north of 10GB.  Visual Studio Community is a revenue/team size limited version of the full Visual Studio package.  It’s essentially the same product and for individuals there is no limitation, for organizations there is a team size limit of 5 developers and $1M USD in revenue.  For Enterprise organizations, usage is not permitted.  You can read the full license details here.

One recent change with Visual Studio is Microsoft recently acquired Xamarin, and made it’s suite of products available free as part of Visual Studio Community.  This now gives you the ability to target iOS and Android using Visual Studio and C#. 

 

XCode – MacOS

XCode is the Apple equivalent of Visual Studio and is a requirement to sign and package iOS applications.  It can be used to develop for the various Apple platforms ( OS X, iOS, AppleTV, etc. ) with the primarily languages being Objective C and now Swift.  C++ is also fully supported, but is treated like a bit of a red headed stepchild for some unfathomable reason.  Like Visual Studio it contains a full set of development tools including code editors, an integrated debugger, forms designers and more.  XCode used to require a developer subscription with Apple but this requirement and fee has now been removed.  On a personal note, I’d rather use my forehead as a hammer than use XCode, but that’s just me.

 

GNU Tool Chain – Various – Open Source

GCC, or the GNU compiler collection, is a set of open source developer tools including support for just about every single language you’ve ever dreamed of using.  If you are developing on Linux, chances are you already have much of the GNU toolchain installed.  One caveat of the GNU suite is the GPL or Gnu Public License.  This open source license greatly restricts what you can do with the software, basically requiring you to make all changes and modifications to the code open and available.  Don’t worry, this restriction only applies to changes to tools themselves, not code you compile using them.  As mentioned earlier, GCC is generally included with any Linux distribution.  There are also ports to various platforms such as MingW for Windows or MacPorts on Windows.  Keep in mind GCC is NOT an ide, it’s the underlying compiler/linker/debugger.  Generally some form of editor is required as well.

 

LLVM(Clang) – Various – Open Source

LLVM, which isn’t actually an acronym no matter what other people tell you, is a suite of tools very similar to GCC.  It is instead released under the much more liberal BSD license and is the underyling technology behind a lot of commercial tools as a result, including XCode mentioned earlier, as well as closed development kits, such as the PlayStation 4.  An LLVM implementation is available as part of the MingW port, while it can also be used directly inside Visual Studio.  Like GCC, this is a lower level suite of tools and generally still requires an editor for code creation.

 

Qt Creator – Windows/Mac/Linux

Qt Creator is a full cross platform IDE primarily for C++ programming.  It’s has several tools designed to work with the Qt cross platform UI toolkit, but can be used as a standalone C++ development environment.  It includes a code editor, debugger, project management tools, UI designers, etc just like VS and XCode.

 

JetBrain’s Suite Of Products – Most Platforms

Instead of listing each product individually, it’s probably easier to mention the entire suite.  Most of the IDEs made by JetBrain offer a free version that is generally enough for most developers needs.  Perhaps their most known product is IntelliJ IDEA a Java IDE that has plugin support for dozens of programming languages.  They also have C#, C++, HTML/JavaScript, Python, etc. IDEs available as well.  

 

Eclipse – Most Platforms

Primarily a Java IDE, plugins have extended it’s functionality to support several other languages.  Full suite of tools and used to be the preferred development path for Android development (it is no longer).  Eclipse has everything and the kitchen sink.  Personally I’d rather code using morse code then use Eclipse again, but I figured I’d mention it for completeness.

 

Netbeans – Most Platforms

Oracle’s Java IDE, but can add support for other languages via plugins.  Again full featured, but certainly enterprise focused.  I’d prefer it to Eclipse, but then, I’d prefer just about anything to Eclipse.

 

Other Languages of Note:

 

Special Note for Android Developers

Android is a bit of a special case for development.  While based on Java, it’s not technically using Java (it’s a long story and got Google sued).  So long and short of it, there are special tools for Android development, specifically the Android SDK(Java) and the Android NDK(C++).  Google also make an IDE called Android Studio available, a port of the IntelliJ IDE, specifically for IDE development.

 

Editors

The following are code oriented text editors.  Don’t want the heavy install of a full IDE, are using a game engine that doesn’t include it’s own editor (or it’s built in editor sucks?), then you will probably want one of these.  Each of the following generally offer most of the following: multiple language support, plugin extensibility, syntax highlighting, refactoring tools and more.  Choosing the right editor is a deeply personal experience... Im not going to start any wars here... just list the options available... you pick your favorite.

And just so I don’t fend the old timers...

Just be aware of the learning curve, you will need to memorize about a hundred character combinations to become proficient with either of these editors.  That said, once you’ve got them down they can be exceedingly efficient.  It’s worth noting however the VI and Emacs keyboard bindings are often available in other editors.  A quick note here, Visual Studio Code and Visual Studio Community have NOTHING in common.  Code is a light weight cross platform editor, not a Windows only IDE.

 


 

Tools and Misc

Didn’t fit somewhere else but is available for free?  It goes here.

 

Tiled – Windows/Linux/Mac – Open Source

The preeminent free 2D map editing software package.  The map files Tiled generates are supported by just about every game engine available.  We have a full Tiled tutorial series available if you wish to learn more.

 

FreeMind – Various – Open Source

Freemind is an open source mind mapping package.  If you’ve never used one before, this is a great way to get ideas from your head to your computer.  There are actually a massive number of mind mapping packages available, FreeMind just happens to be the one I’m most familiar with.

 

ShaderToy – Web

GPU Shaders are becoming more and more critical to the world of game development and ShaderToy is perhaps the primary place to share and download shaders on the web.  You can also modify the shader source and see the results in real time.  Almost 12,000 shaders currently exist in the collection and growing daily.

 

FreeSound.org – Web

A huge collection of free audio files.

 

OpenGameArt.org – Web

A massive collection of free game graphics.

 

VST4Free.org – Web

A resource for VST instruments and effects.  VST stands for Virtual Studio Technology an enables you to encode samples of actual instruments, special sound effects etc. and use them in VST compatible instruments and software such as Podium mentioned earlier.

 


Game Engines

This is a section that could fill a few hundred pages and only just get started.  The reality is, almost every single game engine is available in a free form with differing business models.  Some such as Unreal Engine take a percentage of your revenue after certain thresholds are exceeded.  Others like Unity offer a free tier which has limitations, such as a maximum annual revenue, and require a subscription if you exceed those amounts.  There are also game engines like Godot, Urho, Atomic and Panda that are completely free and open source.  Then there are all the various frameworks such as SFML, LibGDX, SDL, Love, etc. many of which are open source and freely available.

 

This topic is well beyond this guide’s ability to cover.  Thankfully I’ve slowly been reviewing many of these engines and frameworks as part of the Closer Look series.

 


The Video

 

Design Art General Programming


See More Tutorials on DevGa.me!

Month List