Upcoming Events
Unite 2010
11/10 - 11/12 @ Montréal, Canada

GDC China
12/5 - 12/7 @ Shanghai, China

Asia Game Show 2010
12/24 - 12/27  

GDC 2011
2/28 - 3/4 @ San Francisco, CA

More events...
Quick Stats
39 people currently visiting GDNet.
2406 articles in the reference section.

Help us fight cancer!
Join SETI Team GDNet!
Link to us Events 4 Gamers
Intel sponsors gamedev.net search:

Here you will find tutorials that will help you learn a new programming language or to better understand aspects of a language you already know.

For more information about Languages, check out:

Resources Listed: 77
x86 AssemblyJava
GeneralJava Links
Win32 AssemblyC and C++ Online Books
C and C++ 
Subcategory: x86 Assembly
Topic Author Description
Assembly Tutorial
[Added: 7/16/1999]
Cracking Open The Pentium III
[Added: 3/2/2000]
Rob Wyatt  A good, comprehensive introduction to using SIMD. 
Doing It Fast
[Added: 10/14/1999]
Robert C. Pendleton   
Information on Intel Processors
[Added: 10/25/1999]
Intel 80386 Programmer's Reference Manual
[Added: 10/25/1999]
Intel Pentium(TM) Processor Technical Backgrounder
[Added: 10/25/1999]
Intel  A high level description of the Pentium processor. 
Load Bitmaps (16-bit ASM)
[Added: 6/25/1999]
Glen Quinn  Bitmap loading source code 
Optimizations for Intel's 32-bit Processors
[Added: 10/25/1999]
Optimize 386/486/Pentium Code
[Added: 10/25/1999]
Optimized Polygon Clipping For the Pentium III
[Added: 3/2/2000]
Ronen Zohar  Speeding up polygon clipping using Streaming SIMD. 
Optimizing Games for the Pentium III Processor
[Added: 2/29/2000]
Peter Baker and Kim Pallister  Discusses how to take advantage of the SIMD instructions. 
Pentium Discussion on Special Instructions
[Added: 7/16/1999]
Pentium Loop Optimizations
[Added: 7/16/1999]
Pentium Optimizations
[Added: 7/16/1999]
Pentium Pairing Rules
[Added: 7/16/1999]
Pentium Secrets
[Added: 10/14/1999]
Terje Mathisen   
SSE2 for Dummies (who know C/C++)
[Added: 8/31/2003]
Zach Dwiel  Provides an overview of Intel's SSE2 and examples of how to use it. 
The Art of Assembly Language Programming
[Added: 8/11/1999]
Randall Hyde  An online book covering assembly programming for the Intel architecture. Now includes an update for Windows. 
The P5 Basics, and the New Profiling Registers
[Added: 7/16/1999]
Subcategory: General
Topic Author Description
Choosing a Language
[Added: 9/14/1999]
Damon Brown  A decent introduction to several options game programmers have. For a more complete treatment, see John Hattan's article. 
Toward Programmer Interactivity: Writing Games In Modern Programming Languages
[Added: 3/24/2000]
James Hague  Examines ways in which high-level languages can accelerate game development. 
What Language Do I Use?
[Added: 1/6/2000]
John Hattan  Having trouble deciding which language to start with, or whether a particular language is worth learning? Then this article is for you. 
Subcategory: Win32 Assembly
Topic Author Description
Win32 Assembly Part 1
[Added: 10/14/1999]
Chris Hobbs  To kick off the series, Chris goes through everything you need to get started with ASM in Windows, including a skeleton app. 
Win32 Assembly Part 2
[Added: 9/23/1999]
Chris Hobbs  In part 2 of this series, the author shows you how to set up the basic Windows and DirectX functions. 
Win32 Assembly Part 3
[Added: 10/17/1999]
Chris Hobbs  Part 3 of the series covers DirectInput 
Win32 Assembly Part 4
[Added: 11/18/1999]
Chris Hobbs  In Part 4, Chris gets into the actual game, with animation, structures and more. Knowing a little about baseball will help with this one. 
Win32 Assembly Part 5
[Added: 1/23/2000]
Chris Hobbs  Chris returns with part 5, covering DirectSound, and screen transitions. 
Win32 Assembly Part 6
[Added: 5/31/2000]
Chris Hobbs  Chris returns, taking the game to the next level by including support for multiple font sizes, a scoring and level system, and displaying the next game piece. 
Subcategory: C and C++
Topic Author Description
A Tutorial on Pointers and Arrays in C
[Added: 2/17/2002]
Ted Jensen  A well-written and comprehensive introduction to pointers and arrays. 
An Exceptional Quest
[Added: 5/23/2001]
Sobeit Void  An in depth discussion of C++ exceptions, and how to write exception-safe code when using them. 
C Programming
[Added: 10/19/1999]
Steve Holmes  This is a relatively comprehensive though rather bland tutorial on the C language. Its only shortcoming is that it is written for users of the Unix platform, but anyone with even minimal Unix experience should be able to pick up any of the OS-specific talk it has. 
C++ Debugging
[Added: 3/12/2001]
null_pointer  Examines the strengths and weaknesses of assertions, exceptions, logging, return values, etc. as debugging tools. 
[Added: 6/14/2000]
Marshall Cline  Frequently updated answers to a wide range of common C++ questions. 
C++ Trees Part 1
[Added: 1/16/2005]
Justin Gottschlich  Focuses on explaining the limitations of using C++'s map<> and multimap<> as tree containers and presents an alternative. 
C++ Trees Part 2: Basic core::tree<>Functionality
[Added: 4/16/2005]
Justin Gottschlich  Explains the core::tree<> design and implementation. 
Getting Started with Templates
[Added: 1/12/2004]
Glenn Watson  Takes you through a brief introduction of templates including some of the gotchas. 
Improving Performance in C++ with Compile Time Polymorphism
[Added: 11/7/2003]
Ben Sunshine-Hill  This article describes a method for using compile-time polymorphism through templates to improve code performance while minimizing the loss of flexibility and readability. 
Leveraging Inheritance and Template Classes for Asset Tracking
[Added: 11/5/2007]
Christopher Harvey  Presents a method for tracking assets that should only be loaded once during the lifetime of an application using templates and abstraction in C++ 
Multithreaded C++: Part 1: Pthreads
[Added: 4/21/2008]
Jason Turner  This is the beginning of a series of articles on multithreaded programming in C++. In this first article we will look at pthreads, which are generally considered to be the "assembly language of threading." We will start at the bottom and work our way up to higher concepts. 
Multithreaded C++: Part 2: Boost Threads
[Added: 4/21/2008]
Jason Turner  If pthreads represent the assembly language of multithreading programming, then boost::threads represent the C of multithreaded programming. 
Multithreaded C++: Part 3: RAII And Threads
[Added: 4/21/2008]
Jason Turner  If boost::threads represent the C of multithreaded programming, then RAII and automatically managed threads represent the C++ of multithreaded programming. 
Multithreaded C++: Part 4: Futures and Other Thread Handlers
[Added: 4/21/2008]
Jason Turner  We've covered the "Assembly Language", "C" and "C++" of the C++ threading world, and now we are going to try and move beyond that. 
OPPs, Move Aside, OOPs
[Added: 3/3/2004]
Sobeit Void  Explores some of the advantages offered by generic programming. 
Performance Programming Applied to C++
[Added: 7/29/2000]
Joris Timmermans  Fast code is a goal we all share. This article covers techniques you need to know to improve the performance of your programs, including some C++ specific suggestions. 
Pointers: Beginning to Intermediate
[Added: 4/24/2003]
James Poag  The purpose of this article is explain to a beginning or intermediate programmer what pointers are and to provide a few examples of how they are used. 
Satan's Syntax
[Added: 11/17/2000]
Steve Goodwin  A lot of us picked up bad habits from our earlier days of coding that are still with us today. This article discusses how we can use some quirks of C's syntax to overcome these habits and write more efficient code. 
Sealing Classes in C++
[Added: 11/19/2007]
Francis Xavier  A method to create sealed classes (like in C# and Java) in C++ 
Simple File I/O Using C++
[Added: 7/17/2000]
John Peregrine  Covers the basics of stream-based I/O in C++. 
Standard Template Library Programmer's Guide
[Added: 12/21/1999]
  A comprehensive and well-written guide to the C++ STL, from HP and SGI. 
The C++ Standard Library Part 1
[Added: 5/18/2006]
Howard "SiCrane" Jeng  The first installment in this series covers language features related to the standard library that may be unfamiliar to new programmers. 
The C++ Standard Library Part 2
[Added: 9/13/2006]
Howard "SiCrane" Jeng  Introduces the basics of the std::vector class. 
The Top 20 C++ Tips of All Time
[Added: 10/3/2001]
Danny Kalev  Tips to improve your C++ coding. 
Understanding C++ Exception Handling
[Added: 3/5/2000]
Steve Crocker  Examines a number of ways in which exceptions can be used effectively. Assumes a basic understanding of exceptions. 
Understanding Pointers: A Game Developer's Approach
[Added: 11/20/2002]
Warren Moore  This article exists as a reference and tutorial for those who are learning C++ and need a little extra help in the area of pointers. 
Using Modern C++ to Eliminate Memory Problems
[Added: 10/26/2003]
Dave Mikesell  Some tips for avoiding common errors in C++ programs. 
Windows' SEH and C++ Exception Handling
[Added: 1/15/2001]
null_pointer  This is a rebuttal to the recent Structured Exception Handling Basics, contrasting SEH with standard C++ exception handling. 
Working With the STL
[Added: 6/7/2000]
Bill Wagner  Covers deques and lists, iterators, and algorithms. 
Subcategory: Java
Topic Author Description
3D graphics programming in Java Part 1: Java 3D
[Added: 2/24/2000]
Bill Day  The series opener focuses mainly on Java3D. 
3D graphics programming in Java Part 2: Advanced Java 3D
[Added: 2/24/2000]
Bill Day  Dives deeper into the Java3D API. 
3D graphics programming in Java Part 3: OpenGL
[Added: 2/24/2000]
Bill Day  The series concludes looking at Java OpenGL bindings, and comparing it with Java3D. 
Evaluating Java for Game Development
[Added: 6/26/2000]
Jacob Marner  Dispels many of the common myths about Java's suitability to games. 
Java Game Programming Part I: The Basics
[Added: 12/21/2000]
Adam King  The first installment in this series covers basic Java setup and capabilities. 
Java Game Programming Part II: Making a Simple Game
[Added: 5/10/2001]
Adam King  Part 2 of this series expands on the fundamentals with the creation of a simple game. 
Java Game Programming Part III: The Power of Arrays
[Added: 6/6/2001]
Adam King  This installment covers Java arrays, including specific examples of how they can be used in games. 
Java Games: Active Rendering
[Added: 9/27/2007]
Tim Wright  Covers a rendering technique that allows you to focus on developing a game and spend less time worrying about which paint method to override 
Java Games: Keyboard and Mouse
[Added: 11/30/2007]
Tim Wright  Covers building a polling interface for detecting input states 
Optimizing Java
[Added: 10/30/2000]
Ted Bradley  Looks at some ways to speed up your Java code to make it more suitable for use in games. 
Optimizing Pure Java
[Added: 3/15/2000]
Bernd Kreimeier  One of Java's perceived weaknesses is its performance. This article discusses ways to improving performance using dirty Java. 
Using the Java Native Interface Within Games
[Added: 3/15/2000]
Bernd Kreimeier  Covers using Java as a scripting language and for run-time downloadable code. 
Subcategory: Java Links
Name Rating Description
Java Games Programming Techniques
[Added: 5/17/2004 Clicks: 12945]
Extracts from a forthcoming book on Java games programming, covering 2D, 3D, and networked programming techniques. 
Thinking in Java, 2nd Edition
[Added: 3/27/2000 Clicks: 12039]
Bruce Eckel's excellent Java tutorial is now available online for free! Available in several formats, including PDF and Word. 
Subcategory: C and C++ Online Books
Name Rating Description
Optimizing C++
[Added: 5/18/2000 Clicks: 17943]
Steve Heller's book for advanced C and C++ programmers. It goes over several optimizations and discusses when, where, and how it is appropriate to optimize your code. 
Thinking in C++ Vol 1 & 2
[Added: 5/18/2000 Clicks: 30711]
Here's a terrific C++ tutorial available online. It's the full text of Bruce Eckel's book. It's available in several formats, including HTML, PDF, and even PalmPilot. 
Who's Afraid of C++
[Added: 11/12/2001 Clicks: 16180]
First four chapter's of Steve Heller's book for C and C++ beginners. 
 Key: = HTML article hosted here  , = HTML article hosted elsewhere  = link to another web site  = Adobe Acrobat document  = Zip files  = Word or text document