Wednesday, December 23, 2009

Speeding up a PC

A lot of people ask me for help with their PCs. A common complaint is that the PC is a few years old and runs very slowly. Below I list the main things I look for, with the most important at the top. They’re all free things apart from the first, which is fairly cheap.

Add More Memory

If your computer is a few years old and is running really slowly, then it likely doesn’t have enough memory. Buying more memory for an old machine is pretty cheap (roughly $30 to $100 depending on how much), and it can make a massive difference to the speed at which the computer runs.

To find out how much memory your computer has, go to ‘Start -> Control Panel -> System’ and then then on the ‘General’ tab, read how much memory you have. It should be something like ‘512MB of RAM’ or ‘2 GB or RAM’. There are 1024 MB (megabytes) in one GB (gigabyte). New computers currently come with around 2 to 4 GB of memory. If you’re on Windows XP or earlier, I’d aim for 1 GB. If you have less than 512MB, then adding more memory should speed things up greatly.

Buying and fitting memory usually requires a geek who’s done it before. They can use a tool like this one to make the selection process easier:

Change your Anti Virus

Many people have an old/expired version of McAfee or Norton installed. If you’ve not paid for it in the last year, and know you’re running the latest version, I recommend uninstalling it and installing either Microsoft Security Essentials, Avast or AVG. They’re all free and more up to date than what you are using. Also they may offer better performance.

In-between removing the old anti-virus and installing the new one, play with your computer for a few minutes to see if it’s any faster.

Change your Internet Browser

Most people use a web browser most of the time, and generally use Internet Explorer. Firefox and Chrome are two other good browsers. Chrome claims to be very ‘light’ and fast. Using this on a slow machine might give a noticeable difference while surfing the web. It doesn’t take much getting used to either. Again, these browsers are free.

Another browser related thing to do is uninstall the toolbars you don’t use. They likely don’t slow things down a lot, but they take up a lot of screen space.

Speeding Up Startup

When Windows starts up, lots of installed programs try and start at once. This causes something similar to a traffic jam in the computer, and right at the time that you want to start doing things too. Using a free program like Startup Delayer allows you to see what programs start at startup (which might give you more ideas about what to uninstall) and allows you to delay their startup. I spread things out so that some programs wait up to 15 minutes before starting. I’ve not measured this, but it’s my feeling that this can give a small but noticeable improvement in the time it takes Windows to become responsive after starting.

Uninstalling Programs

Generally I’m a fan of uninstalling unused stuff. My main target is things which start when Windows starts and then keep on running. It’s hard to know what to uninstall and what you need. If you have a geeky friend, I recommend the following:

Go to ‘Start -> Control Panel -> Add or Remove Programs’. The computer will take a short time to list all the programs installed. Read down the list and write down the names of all the things you think you don’t need. Check this list with your geeky friend, and then go back to the list and uninstall the approved items.


Most people know that defragging a hard drive can help improve performance. The debugger is available from ‘Start -> Programs -> Accessories -> System Tools -> Disk Defragmenter’. Then you select your ‘C’ drive and click ‘Defragment’ (or similar).

I like to keep my drive defragged and do recommend that it’s done once a year or so, but sadly I’ve never really seen much of an improvement in performance result.



Registry Cleaners

I avoid programs which promise to magically speed up your machine by cleaning your registry or removing unused files. Some of these programs might work, but I think that many are really just useless or installing malware (like viruses and spying programs) on your machine.

Upgrade an old machine to Vista or Windows 7

Computers keep getting more powerful, and the Windows operating system keeps getting ‘heavier to run’ at a similar pace. Installing a new (heavier) version of Windows on an older machine is going to result in slow performance. An old machine is best at running operating systems which came out around the time that the hardware with. So if your machine is running Windows 2000, then you might consider XP, but Vista would likely kill your machine. This is my opinion, and just a broad rule of thumb.

Tuesday, June 09, 2009

Robot Snake

I think robots are cool and all, but I wasn't super excited by the recent talk of robots being the next big thing.

Well that all just changed for me. I just saw at Engadget that Israeli military made a robot snake. It's awesome!

Wednesday, June 03, 2009

PS3 and Xbox 360 Motion Controller Videos

Here are a couple of videos from E3.

Here's Sony's presentation of their new motion controller.

And here's a polished Ad-style video of Microsoft's Project Natal.

I think they're both very exciting and will be must-buy peripherals respectively. I thought Natal looked good, but then saw the PS3 demo. The PS3's high precision and buttons might make more serious gamer friendly, but I guess we'll just have to see what happens when they come out...

Tuesday, June 02, 2009

Free models for XNA

A common problem for programmers is getting some decent artwork to use. I've previously posted about Sketchup but recently came across something new.

Rob's blog gives instructions about how to export Sketchup models to the XNA '.X' format. This means you can download free models from the Sketchup 3D Warehouse, export them to .X format, and use them in your 3D XNA program.

If you need to modify the model, you can do so in Sketchup or TrueSpace (also free).

Potential Problems
  • Not all Sketchup models are textured, and the ones with textures may need a bit of love to make them work in your game. Specifically the textures may be non power-of-two in size. To fix this you just need to scale the image in a paint program (I like so that instead of being some funky size like 13x111, they're power of two sized, like 16x128. The model should still look fine.
  • Models may be textured using many textures (the one I looked at used about 20). This isn't a problem if you're not concerned about performance, but the frequent render-state changes will cause performance problems if you're rendering a lot.
  • Models may be positioned away from the origin in the Sketchup scene, and need moving back.
  • Models will likely not be the scale you want, so you'll need to adjust this.
  • Models may be pointing down the wrong axis and need rotating.

The exporter is a Ruby Script file. Reading the file, one should be able to become familiar with the Ruby scripting language, and the Sketchup API. It should therefore be possible to use Sketchup as a level editor (as mentioned previously) and write a custom exporter in Ruby. Nice!

(Note - I'm not sure whether models from the 3DWarehouse can be used in commercial products, but they'll be fine for home/demo use.)

Monday, May 18, 2009

Haunted Game Cafe

My friend Gary Sproul, who used to be a designer at Heavy Iron, has decided to make a big change. He's left the game industry to open his own store selling modern board games. I know there's a whole bunch of people at Heavy Iron who like to play them - I'm going to join in one of these days.

He's created a website, and is in the process of setting up a physical store too.

Best of luck Gary! Few people have the courage to live the life they want to.

Everyone else - like board games? need present ideas? like getting parcels in the mail? You know where to go...

Tuesday, February 17, 2009

Walking on uneven surfaces

TomF just posted this on his (cool) blog. Rune Skovbo Johansen has done some research on 'Dynamic Walking with Semi-Procedural Animation'. Here's a video of his results which he posted on his blog.

Sunday, January 18, 2009

Faster Sprite Creation

Creating sprites for 2D games can be a very time consuming process.

After becoming so smitten with Inkscape for vector graphics it occurred to me that one could use vector graphic animation to generate sprites. I've not used it, but Synfig is a free / open source 2D vector animation package.

After creating a vector graphic character, you can build an animation quickly from a few key frames, rather than animating every frame at, say, 30 frames per second. You can then quickly export the animation to bitmaps, and plug it in (likely using some other tools for image manipulation). Finally, you can quickly modify the animation and re-export it without the need to manually touch thousands of pixels.