warning: Creating default object from empty value in /home/hplus/ on line 33.
Not very complex stuff.
jwatte's picture

The Etwork Networking Library

Etwork is a network abstraction library that lets you use UDP or TCP to send packetized messages between machines using a portable C++ interface.

jwatte's picture

3D Geometry Transform Pipeline Overview

Geometry rasterization is about transforming vertices, which in the end make up the corners of triangles, which get rendered on the screen (very simply put).

jwatte's picture

A simple buffer class for network receive

When you develop socket receive code, you will soon run into the problem that TCP will send data in arbitrary blocks. Even if you send a given string in a single call to send(), that string may arrive as two separate recv() calls -- or may arrive glued together with some previous or following data. Or both.
jwatte's picture

Make a 3D Game!

This is not an in-depth tutorial. It's just a pointer to some other resources I've put together to help in creating 3D graphics for computer games. For an exhaustive set of articles and tutorials, go to .

jwatte's picture

How To Get Rid of Threads

It appears that school, tutorials, or whatever is teaching
about threads a whole lot these days, and most designs I see
from people learning the ropes involves a number of threads.
However, threads cause bugs, and cause extra synchronization
cost that's not easily visible, and not easily redeemable.

jwatte's picture

The Difference Between UDP and TCP

I've written an answer to the question "what's the difference between UDP and TCP" a few times now, so I figured I'd put it here.

jwatte's picture

Win32 Programming Basics: A Simple Application

Todays assignment is to get a red block on the screen of a Win32 program.

jwatte's picture

How to profile your program using Intel's VTune profiler

Quick VTune Tutorial

VTune kicks butt. It's a sampling profiler made by Intel, so it can't give you a call trace, but it's so low-impact that you can profile anything, and it'll tell you where you're spending all of your time on a microscopic level.

jwatte's picture

Introduction to NAT

Q: What kind of firewalling/NAT/proxies are typical with ADSL providers? ADSL is not offered in our corner of Europe and thus it caught us entirely by surprise.

Many ADSL set-ups use NAT. Problems with NAT come when you need to send packets "in" to the user, who are not "replies" to packets going "out" from the user.

jwatte's picture

VST Parameter Response

When you try to map between a linear multiplier (0.0 to 1.0) and a "curve" value, which is exponential, you may be tempted to use exp(x), because it goes between linear and exponential. However, that's not good enough.

Syndicate content