Skip to main content
GameDev.net gamedev.net
🔒 Locked

Challenge #2: What tools can you not live without?

Started by Michael Tanczos Jun 4, 2013 at 11:27 AM 28 replies 14.8k views
Original Post
Michael Tanczos
Michael Tanczos

CHALLENGE #3 WILL BE POSTED ON THURSDAY.. Please continue to submit any resources you think are useful. For everyone browsing this, remember to upvote your favorites!

Welcome to the second community writing challenge! Here's how it's going to work for the month of June. Each day or so I'm going to post a new community challenge topic. All you need to do is provide a response to it according to the supplied rules. The winning response according to the MOST upvotes at the end of the month will receive a month of GDNet+.

We are looking to collectively as a community build a list to as many valuable resources on the posted challenge as possible.

Some rules for every challenge:

1. You do NOT need to supply a complete answer or topic reference, but it may help garner more upvotes

2. All descriptions must be written by you with your own justifications for inclusion of the resource

CHALLENGE #2: What tools can you not live without?

Description: We all have our collection of dev tools that we absolutely could not get by without. These are the tools we use for programming, graphics, audio, level design, etc. Let's start creating a list of all the best developer tools that are available for public download so others may benefit from your experience.

Rules:

  1. Post one or more links to great resources with the following: title, url, author, and a brief description of what the tool is
  2. Anything you post is fair game to be included in an article without attribution - we are just looking to create awesome resource pages here of the best stuff
  3. Any site online is fair game as long as you link to the final tool destination (ie. don't link to any other resource mega list pages)
  4. You may update your original responses as many times as you like!
Michael Tanczos
Michael Tanczos

I'm going to kick this off with at least one tool you may not have heard of.. which is absolutely awesome for programmers since it allows you to easily create animations from a single graphic that you cut into pieces.

Spine: 2D Skeletal Animation for Games

Spine replaces traditional raster animation in games, providing smoother animations that are easier to produce. Animations can be created without needing more art and are so tiny that games can make extensive use of them.

Stormynature
Stormynature

Skype

Whilst not directly a dev tool. I find that the need for communication is incredibly important to the development of projects when the various team members are geographically scattered. Written communication can at times have the unfortunate reality of being misinterpreted (or in some cases presented poorly) and the ability to conjoin verbal communication with that of written documentation between team members enables a more efficient and effective way of keeping everyone in synch with each other. Admittedly there are a number of voice communication systems out there but Skype does offer the ability to call telephone numbers which I find to most useful. On the downside teleconferencing with multiple parties can be a bandwidth hog at times. Alternative voice chat systems include Ventrilo, Mumble, TeamSpeak (I should note that I listed primarily gaming oriented voice coms here as they still serve the purpose and function and it has been my experience that many indie game developers have a familiarity with one or more of these (doubtless due to the many many hours of playing games "for research purposes!"))

The following link is an old thread in Gamedev which lists quite a few communication systems as utilised by different members on this site.

Team Communication Software

Servant of the Lord
Servant of the Lord

QtCreator is my IDE of choice. Though it is built on the Qt api, and comes packaged with extra support for it, your code projects don't have to use Qt.

I've recently become a user of Trello for organizing my projects. DropBox also, for file syncing.

And I use Mercurial for my source control, with Bitbucket as my free remote repository.

SiCrane
SiCrane
On Windows, I constantly use cygwin, which gives you the common *nix applications for Windows. This includes text tools like grep and tail as well as development tools like gcc, clang, make, git, svn, and so on.
ApochPiQ
ApochPiQ
Anything that cares about performance is going to need a good profiler eventually. Unfortunately, good profilers are actually not all that easy to find unless you know where to dig. I find myself continually coming back to Very Sleepy and (to a lesser extent) Luke Stackwalker for profiling on Windows. Both tools are free and easy to use.
joelmartinez
joelmartinez

Sublime Text ! A fantastic and light weight text editor that works on multiple platforms. Great for web development ;)

BitTorrent Sync, a p2p file sharing tool which makes for a really lightweight way of sharing non-textual game resources between team members without needing to resort to a 3rd party service like dropbox, or stuffing binary resources into an SCM like git.

Joel Martinez
http://codecube.net
[twitter]joelmartinez[/twitter]
MrMorley
MrMorley

Resharper for C# and IntelliJ for Java. And of course a good TDD-friendly unit testing library.

I needs me refactoring tools, since refactoring is one of the most important steps in writing code. It makes it much easier to evolve your design cleanly when your tools let you refactor efficiently, and that's very important for any programmer who wants to say they take pride in their craft. It's so difficult to go back after being able to just break a function out into an injected dependency by just right clicking on the function and clicking "Extract Class" biggrin.png

Hurry up JetBrains and bring your refactoring voodoo magic to C++ please.

popsoftheyear
popsoftheyear

It's been hard finding a good video capture program, so I definitely want to throw ffsplit out there. It's a little (just a little) tricky to set up, but once you have it really does blow the competition away, free and paid alike.

[edit] It is actually designed for live streaming primarily, but it just so happens to be the best for recording to disk as well, as far as I have found.

And Reaper for music - if nothing else because most of us programmers do not have much money for the more expensive tools!

marcClintDion
marcClintDion

Dev-Cpp: it's lightweight and cross-platform, now there's finally a new version. Or try Code::Blocks. http://orwelldevcpp.blogspot.ca/ http://www.codeblocks.org/downloads/binaries http://www.eclipse.org/downloads/ -> For Android development(The NDK allows you to program with C/C++ instead of Java but setting it up is not for the faint of heart. There is also a simulator that can be configured to emulate many different devices. //================================================================================================================= xCode: It's free and has simulators for iPhone/iPod_Touch and iPad. Tying c/c++ code into the Objective C framework is seamless. https://developer.apple.com/xcode/ //================================================================================================================= GLSL: I'm from the "It has to look awesome" crowd, and GLSL has many levels of ease of use. For beginners that need tons of source code from many different perspectives to get a handle on things, it's awesome and it's super easy to tie the old fixed function line into the newer programmable shader line. Most of the tons of open source can be mish-mashed together and still run on pretty much any desktop or laptop. For people who insist on building clean, current, cross-platform code, there is plenty of open source available for the openGL ES 2.0 spec. http://www.codesampler.com/oglsrc.htm <- (mostly older fixed function tied into newer vertex and fragment shaders) http://www.codesampler.com/usersrc.htm <- Check pages 4 and 5 http://www.dhpoware.com/demos/index.html <- Easy Anti-Aliasing setup, plus an excellent .OBJ model loader. http://nehe.gamedev.net/ <- Check 'Legacy' tutorials for mostly fixed function. http://www.songho.ca/opengl/ <- Optimizations https://developer.nvidia.com/cg-toolkit <- The CG language, developed in conjunction with HLSL https://developer.nvidia.com/content/cg-tutorial-chapter-1-introduction <- a must read regardless of your chosen shader language http://www.codesampler.com/oglsrc/oglsrc_11.htm#ogl_cg_fixed_function <-shows how to tie openGL fixed function into CG shaders. http://www.cse.chalmers.se/edu/year/2012/course/TDA361/redbook.pdf <- super easy to follow openGL fixed function with easy window setup http://wiki.labomedia.org/images/1/10/Orange_Book_-_OpenGL_Shading_Language_2nd_Edition.pdf <- GLSL For openGL ES 2.0 which is the most cross-platform of all the GPU API's http://www.imgtec.com/powervr/insider/sdkdownloads/index.asp http://www.raywenderlich.com/tutorials <- more specific to iOS. https://developer.apple.com/library/ios/navigation/#section=Resource Types&topic=Sample Code <- use 'openGL' in the documents search field to filter out iOS specific sample code Also don't forget to grab yourself a copy of AMD's Shader Analyser and nVidia's nvEmulate, they will be a great help in finding errors in your shader code. //================================================================================================================= Blender3D: it's an absolutely awesome, fully featured game and animation building package, it's free and cross-platform. The user community is huge and many, many great training videos have been published by users around the world. This substantially lowers the learning curve for new users. Also, its pen-tablet support is flawless. http://www.blender.org/download http://www.blender.org/education-help/tutorials/ http://cgcookie.com/blender/ <-partially commercial but with lots of free videos http://www.cgmasters.net/free-blender-3d-tutorials/ http://www.blenderguru.com/ http://www.blendtuts.com/blender_tutorials Don't forget YouTube, There are more video tutorials for Blender than most people could stand to go through. Be sure to look for tutorials that are newer than 4.9. There is a substantial difference between the new and old. //================================================================================================================= Sculptris: It's a free 3D modeling tool, cross-platform and is great for detailing models started in Blender. Sculptris has no learning curve at all, it's as intuitive to use as is a blob of clay, elementary school children can get started right away. It also has excellent pen tablet support, at least on MacOS. Pressure sensitivity is buggy under Windows(sorry for the negativity, but it's true, at least for Intuos 5 users) http://pixologic.com/sculptris/ <- A dozen videos on the site will show you everything you need to get started(use .OBJ to transfer to and from Blender //================================================================================================================= xNormal: Also free and has many small easy to use utilities built in for baking various sorts of texture maps. It also has two different back end renderers which gives variety in the maps. If the ambient occlusion map doesn't come out right in Blender there are two more methods available in xNormal. The earlier default renderer and the author has now updated it to include OpenRL. http://www.xnormal.net/Downloads.aspx http://www.xnormal.net/Tutorials.aspx //================================================================================================================= G.i.m.p. It's a free texture editor and cross-platform. There are many 3rd party plugins and installer packs available. http://www.gimp.org/downloads/ <- The page scans for your OS and should direct you to the right package. http://www.gimp.org/tutorials/ http://gimp-tutorials.net/ http://sixrevisions.com/graphics-design/gimp_video_tutorials/ http://registry.gimp.org/ <- Lots of scripts/plugins(with GIMP extras/ make sure to match the extras you want with the proper version of GIMP https://code.google.com/p/gimp-extensions/ //================================================================================================================= openAL: It's a free sound API, it's cross-platform and super easy to setup and use. http://connect.creativelabs.com/openal/Downloads/Forms/AllItems.aspx http://connect.creativelabs.com/openal/OpenAL Wiki/Resources.aspx <- links to many other sites https://developer.apple.com/library/ios/#samplecode/MusicCube/Introduction/Intro.html#//apple_ref/doc/uid/DTS40008978 //================================================================================================================= fMOd: Another cross-platform, sound API. It's free for non-commmencial use and is only $500.00 for indy game developers who want to charge for games they only sell online. Why use fMod if openAL is free? Check out the FFT functions. You can tie graphics into the sound like the kind of thing you see in WinAmp visualizers. It's only a few lines of code to get it tied in and running. Doing something impressive might take a few more lines. Just beware! The fMod source code for Windows includes both C and C++ versions of the code. The C++ code will not compile using a mingW complier like Dev-Cpp and I assume Code::Blocks. You have to use the C code. Otherwise you will get errors that resemble linker errors but this is a bug, and not a failure to link the library files properly. http://www.fmod.org/fmod-downloads.html //=================================================================================================================

Consider it pure joy, my brothers and sisters, whenever you face trials of many kinds, 3 because you know that the testing of your faith produces perseverance. 4 Let perseverance finish its work so that you may be mature and complete, not lacking anything.
wiegje85
wiegje85

OpenMDL - new, fast and light weight model format designed with games in mind. Never before has it been easier to setup a simple 3D asset pipeline, do away with OBJ, FBX, COLLADA and other slow and limiting formats:

  • Fast loading times;
  • Small memory footprint;
  • Scene graph in a file, 1-on-1 copy from the 3D content creation software;
  • Extensive materials, support for ray and path tracers;
  • Meshes are split up into a face group per material;
  • Designed with games in mind, no overhead or unnecessary features;
  • Support for metadata (custom attributes) on each scene node;
  • Support for per-vertex colors;
  • Baked animations only, resulting in fast and simple animation code;
  • Support for bone animation and morph targets*.

TinyImageLoader - created by an ex-classmate of mine. His project is for textures what OpenMDL is for 3D models. Simple, fast and light weight.

Berserkguard
Berserkguard

Tiled Map Editor (http://www.mapeditor.org/, written by Thorbjørn Lindeijer)

It's a free and incredibly powerful tool for building 2D maps, both orthogonal and isometric. It has support for multiple layers, including object layers which are useful for defining things like collision boundaries.

I used it for a 3D tower defense game I made with some friends and I am currently using it for a 2D platformer. When making the tower defense game, we used images with different pixel colors representing different game objects, and it was a nightmare to work with. Once we learned about Tiled we switched to that and it was very easy to integrate into our project. Tiled also has the ability to export data encoded in base64 (among other formats), which is really convenient.

Aside from Tiled, the aforementioned Blender3D is an amazing tool for 3D modeling. And it's free as well!

~Berserkguard
Cygon
Cygon

Blender. It was infamous for forcing people to memorize a ton of keyboard shortcuts before they could get any use out of it, but since the 2.50 redesign it has become very intuitive and its workflow allows me to work at insane speeds. Despite only being a 40 MiB download, it is a very complete tool: apart from modeling and skeletal animation, it can also do texture painting and sculpting (very similar to ZBrush).

PixPlant. There's an estimated ton of seamless texture generators out there. They all employ the same lazy technique: use a transparency gradient at the texture borders to blend over to the texture's other side. Voila, seamless. The makers of PixPlant actually tackled the problem: PixPlant allows you to select polygonal regions from a image to use as basis for a texture, applies perspective correction, tone correction and brightness correction and then puzzles these regions together so their features match up as good as possible.

Grindstone 2. Tracking time is a useful habit for a developer and having a place to write down tasks is a boon. Grindstone was a time tracker that aimed for simplicity. A task list, a play and a stop button. Things you used less often, like reporting, client/project overviews, invoices, etc. were tucked away and out of view. I'm talking in the past tense because, after a particularly silly PC World review that wanted more funny colors, they made a version 3 with a cluttered UI and pointless gimmicks like achievements (yes, really). Thus I recommend version 2, but not version 3.

Jasc Paint Shop Pro 9. It's a very fast and slim bitmap editor with tons of effects and color adjustments. It also supports layers and alpha channel editing. They were acquired by Corel which promptly added tons of bloat and DRM to it, so if GIMP and Paint.net aren't your cup of tea, I recommend the old Jasc Paint Shop Pro. It causes Windows 7 to temporarily disable the Aero shell, but works really well on Windows 8 again.

UML Sculptor. The original project hasn't received an update since 2002, but I've fixed some bugs and added .svg export to it. UML Sculptor is a UML class diagram editor that consists of a single executable. It's like drawing on a piece of paper - add a class, double-click under "attributes" or "methods," type you method name. No combo boxes, no method entry dialogs, no round-trip engineering. Ideal for brainstorming, communicating ideas and documentation.

Professional C++ and .NET developer trying to break into indie game development.
Follow my progress: http://blog.nuclex-games.com/ or Twitter - Topics: Ogre3D, Blender, game architecture tips & code snippets.
Osu Bengosu
Osu Bengosu
Visual Assist is an add-in to Visual Studio that allows you to read, write, navigate and refactor code
QNAN
QNAN

http://www.incredibuild.com/

IncrediBuild is an amazing tool, that can speed up your compiling times immensely, if you are in a network of computers, like is the case in a workplace full of programmers. IncrediBuild will distribute the compiling out to a number of neighbouring machines and they will in parallel work together on the compilation.

Even if you are on a single machine, it should boost performance, as it takes full advantage of multicores, which your environment may not do.

I used it privately once upon a time when it was free, which it is not anymore - actually it is quite expensive (400-700$). I would highly recommend it for any company, that can afford it, as it cuts down compilation times significantly.

QNAN
QNAN

http://www.autodesk.dk/products/autodesk-3ds-max/overview

Even when it is also a priced product, it has to be mentioned when talking about development tools, as it is - IMO - the best editor for 3D modelling. If you are working in a game developing team, I believe any artist would expect to be allowed to work in 3DSMax.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.