Jump to content

  • Log In with Google      Sign In   
  • Create Account


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

  • You cannot reply to this topic
29 replies to this topic

#1 Michael Tanczos   Senior Staff   -  Reputation: 5191

Like
0Likes
Like

Posted 04 June 2013 - 05:27 AM

Note:  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!

Edited by Michael Tanczos, 05 June 2013 - 04:54 AM.


Sponsor:

#2 Michael Tanczos   Senior Staff   -  Reputation: 5191

Like
5Likes
Like

Posted 04 June 2013 - 05:42 AM

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.

 



#3 Ashaman73   Crossbones+   -  Reputation: 7235

Like
10Likes
Like

Posted 04 June 2013 - 05:43 AM

Notepad++ - In really every project, small or large, java/lua/c++ whatever, you need a competent text editor, all the time, so notepad++ is a really powerful, open source editor.


Edited by Ashaman73, 04 June 2013 - 05:44 AM.


#4 Stormynature   Crossbones+   -  Reputation: 3267

Like
4Likes
Like

Posted 04 June 2013 - 07:36 AM

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


Edited by Stormynature, 04 June 2013 - 07:41 AM.


#5 Servant of the Lord   Crossbones+   -  Reputation: 18735

Like
1Likes
Like

Posted 04 June 2013 - 09:43 AM

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.


Edited by Servant of the Lord, 04 June 2013 - 02:10 PM.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]


#6 AllEightUp   Moderators   -  Reputation: 4195

Like
2Likes
Like

Posted 04 June 2013 - 09:56 AM

When first looking at new code, I tend to open it using http://www.scitools.com/ Understand C++.  The tool could be classified as DOxygen on steroids in realtime, as it builds dependency graphs, used-by, etc sorts of information.  It provides a UI which allows you to click through the different classes, who and how they are used, run queries on the information etc.  Additional items it supplies are various metrics such as coupling, standard compliance and other useful items.  There are other products which do the same things but I've been using this one since 1998 and it just keeps getting better.  It is the only tool I know of which was able to deal with the 2.7 million lines of code on my last project, all the others failed to either complete the processing or died horribly at some point.



#7 SiCrane   Moderators   -  Reputation: 9574

Like
2Likes
Like

Posted 04 June 2013 - 10:18 AM

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.

#8 ApochPiQ   Moderators   -  Reputation: 15164

Like
3Likes
Like

Posted 04 June 2013 - 10:50 AM

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.

#9 Joel Martinez   Members   -  Reputation: 337

Like
0Likes
Like

Posted 04 June 2013 - 01:25 PM

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.



#10 MrMorley   Members   -  Reputation: 137

Like
1Likes
Like

Posted 04 June 2013 - 01:57 PM

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.


Edited by MrMorley, 04 June 2013 - 02:01 PM.


#11 achild   Crossbones+   -  Reputation: 1719

Like
0Likes
Like

Posted 04 June 2013 - 02:07 PM

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!


Edited by achild, 04 June 2013 - 02:11 PM.


#12 marcClintDion   Members   -  Reputation: 431

Like
3Likes
Like

Posted 04 June 2013 - 02:23 PM

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, because you know that the testing of your faith produces perseverance. Let perseverance finish its work so that you may be mature and complete, not lacking anything.


#13 Rhetorician   Members   -  Reputation: 119

Like
0Likes
Like

Posted 04 June 2013 - 02:56 PM

Code::Blocks

 

Anyone?

VerySleepy and git are cool too.

 

Edit: Added links. Sorry I forgot ;)


Edited by Reflexus, 05 June 2013 - 07:29 PM.


#14 Michael Tanczos   Senior Staff   -  Reputation: 5191

Like
0Likes
Like

Posted 04 June 2013 - 03:26 PM

Adding in this reminder:

 

Note:  Please remember to post links with your replies


Edited by Michael Tanczos, 04 June 2013 - 03:26 PM.


#15 wiegje85   Members   -  Reputation: 151

Like
0Likes
Like

Posted 04 June 2013 - 04:13 PM

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.



#16 Berserkguard   GDNet+   -  Reputation: 169

Like
2Likes
Like

Posted 04 June 2013 - 04:14 PM

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

#17 Cygon   Crossbones+   -  Reputation: 1088

Like
1Likes
Like

Posted 05 June 2013 - 04:31 AM

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.

#18 OsuBengosu   Members   -  Reputation: 307

Like
1Likes
Like

Posted 05 June 2013 - 05:31 AM

Visual Assist is an add-in to Visual Studio that allows you to read, write, navigate and refactor code

#19 QNAN   Members   -  Reputation: 223

Like
1Likes
Like

Posted 05 June 2013 - 05:36 AM

http://subversion.tigris.org/

The best version control system out there, and it is free.

 

I will mention a cool GUI program for it as well, because it makes it extremely easy to use from Windows Explorer:

http://tortoisesvn.tigris.org/


Edited by QNAN, 05 June 2013 - 07:24 AM.


#20 QNAN   Members   -  Reputation: 223

Like
0Likes
Like

Posted 05 June 2013 - 07:32 AM

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.







PARTNERS