About this blog
This journal has something terminal...
Entries in this blog
I have ordered this book on Amazon: Programming Game AI By Example by Matt Buckland.
I am really looking forward to it but it says it will be dispatched in a stupid eight to ten days [sad] I got even more excited when I ran the precompiled exectuables downloadable here and read through some of the source which is downloadable here from the publishers site.
I have done lots of programs in the past to get to grips with DirectX, CAD tools, general graphics rendering, terrain rendering, particle systems, space partitioning, AI, animation etc and have recently been studying rigid body dynamics and physics. I have also been studying how to organise my code and on writing a game engine.
In a nutshell, I am working on a single player RPG situated in a physically realistic environment. I now feel I am at a stage where I should be able to complete a project and so I am going to write a full design document for this one. Here in lies the problem! Coming up with a story is a million times harder than any of the programming [rolleyes]
I am going to take my inspiration from such great titles as "Battle Of Olympus", "Secret Of Mana", "Illusion Of Time" and any of the Zelda games though. I particularly like the idea of setting the game on an island like in "Zelda: Links Awakening".
Doing the artwork yourself along with the programming is also migraine inducing and takes just as long. Good job I'm not setting myself a timescale...
I also need to update my website currently located at http://www.bytefoundry.co.uk which I haven't done in two years.
I am going for a job interview in three hours with an IT consultancy firm... My mind is aglow with transient nodes of thought, cascading like a waterfall.
At the risk of overusing the journal in one day I thought I would put up a few screens of the last project I was working on. It was an updated 3D clone of the game "Smash TV" [smile] This is before I got bored with it (proper initial planning people!) - it is also when I discovered how much time it takes doing the artwork.
[Level Fly Through]
[Before Enemies Enter]
[When Enemies Enter]
Been away for a while. Currently on annual leave from work. I had to book thirteen days holiday off work before the cut-off point which is the first of October when it all starts again. If I didn't I would lose these days. Taking weekends in to consideration I am off most of September [grin].
Finished Doom 3 and nearly finished Deus Ex 2. I continued on my my 3D math library today. I haven't coded anything in roughly two weeks...
Bit melancholy at the moment but can't put my finger on why.
I have started to write a 3D math library for my game engine. In the spirit of an ancient greek nomenclature I have decided to name it Hades. I have done this because I was getting tired of attributing my development time entirley to designing and want to code something useful and this will be fundamental.
I am using some of what I have learned in the book 3D Game Engine Programming in conjunction with the best 3D math reference I have used, 3D Math Primer for Graphics and Game Development, to code the library.
I have decided to code my own math library for two reasons. It means I am not relying on an API specific math library like D3DX (which I am used to) and by writing my own I will hopefully be getting an even greater understanding of some of the math concepts and how they work rather than just accepting that they work.
I got the job. I must work four weeks notice in my current post which I return to on Monday after having been on annual leave. I feel weird and haven't coded anything for a while. My net connection has been down because of a faulty wireless access point...
I was last looking at a bump mapping shader. Tangent space is dumb.
Sunshine On Leith
By The Proclaimers
My heart was broken, my heart was broken
Sorrow sorrow sorrow sorrow
My heart was broken, my heart was broken
You saw it, you claimed it
You touched it, you saved it
My tears are drying, my tears are drying
Thank you, thank you, thank you, thank you
My tears are drying, my tears are drying
Your beauty and kindness
Made tears clear my blindness
While I'm worth my room on this earth
I will be with you
While the chief, puts sunshine on leith
I'll thank him for his work
And your birth and my birth.
Found a young dog cowering under the local park bench at around 23:00 last night. I went home and brought it some dog snacks from the house and it started following me around the park. It was obviously someones pet because it was well groomed and well trained. It sat on command, rolled over etc. A beautiful little black and white collie.
It had no name tag or collar on it so I took it home with me while I tried the phone. I couldn't get through to the cat and dog home, local police station or council services because they were all shut for the night...
I decided to keep it in overnight and take it to the local police station in the morning to see if anyone had reported it missing. Unfortunately my own dog started chasing it and barking with it. I couldn't keep it in the house as I have neighbours above an below me and this would have went on all night. I took it back to the park and let it follow a scent if appeared to recognise. When one of my previous dogs ran away it came home itself so I figured this one would too although I felt bad letting it go.
This morning, to my surprise, the dog was still under the park bench! I was on my way to work so I let it jump in my car and took it to the police this morning. They will check to see if it has been reported missing and, if not, send it to the cat and dog home. It is sure to find it's original or otherwise good owners there.
If you own a dog please make sure it has a collar and some sort of identification details - also get it chipped with your details. I would have phoned the owners myself and drove it round for them...
Today I added off-screen render target functionality to my engine. It is done in such a way that the render targets can be added to my engine's "skins" (a combo of one material and eight textures) as a texture. This should be good for special effects. I think I am going to use it to do planar reflections next and see if I can make some decent looking water [smile]
I finally ordered the book DirectX 9 User Interfaces: Design and Implementation. I have been procrastinating on it for ages but I really want to make a DX GUI now too. The catalyst for me was I got it GBP10 cheaper through Amazon Marketplace. It is dispatched from the US though, so I can expect it in around 14 days time. Harrumph.
Finally finished getting all my data off my laptop and on to my new system. I am about ready to get back in to the swing of my design document and Hades engine. I am currently distracted by Doom 3 and Deus Ex 2: Invisible War though. I am catching up with the games I always wanted to play on my laptop but couldn't. Surprisingly, there is only these two... Also looking forward to playing Half Life 2 in a high-res mode though!!!
I am also trying to get in to programmable shaders. I have downloaded RenderMonkey 1.5 and want to get the book "Shaders for Game Programmers and Artists". I am skint this month though so will have to wait until my salary goes in again before I can get it...
With my new system (which I hope to collect today at lunchtime) I will have access to vertex and pixel shaders for the first time. This is more exciting to me than the copy of Doom 3 I have sitting on my table for some reason...
Transitioning from using the fixed function graphics pipeline to programmable shaders seems like a dark art though. I can not find one book that seems like a difinitive guide or that is really well rated. I also want an up-to-date book using the HLSL and I notice that most of the ones in the Gamedev books section are in or around two years olds. An age in computer terms...
I was considering GPU Gems but I am getting an ATI card an want to be able to run the samples and I hate books made up as a collection of articles. I wish people would stop publishing them.
I woke up this morning with aching joints all over. I feel like I had been drinking all night or doing serious, strenuous exercise but I haven't done any of those things in the past week. Knees, elbows, knuckles and shoulders... It is probably something viral. My colleagues have all started back at work from their summer holidays and brought god-knows-what with the from foerign countries. Now I can not be arsed with anybody or anything.
Doom 3. High quality. Smooth as silk. Awsome. Nuff said.
Just bought a new system. It is built to order and takes two days before I can collect it. I can't wait for this - it will be the first system I have with a graphics card capable of programmable shaders! The last system I bought was my laptop a couple of years ago which has a GeForce 2 Go chip in it. [smile]
The new spec is:
Processor: AMD Athalon 3000XP
Motherboard: Gigabyte GA7N400 Pro 2
Memory: 512 DDR 400
Video Card: Radeon 9800 Pro 128MB
DVD Drive: 8x DVD Writer
Sound: 5.1 Surround
Price is 575 GBP which equates to 1,034 USD
Just finished the second day of my new job as a Support Analyst for a commercial firm (as opposed to working in the education sector as I did previously). I feel a bit like a fish out of water as its an entirley different role. Even answering the phone... I don't really know our customers, our contracts with them, how I am expected to respond (site visits, through a VPN connection that we may or may not have set up with them etc)...
I crave the familiarality of my old job which I had grown to hate. I hope I settle here quickly.
I thought I would list the books I have bought related to game programming in some way. In no particular order:
Programming Role Playing Games With DirectX 8 by Jim Adams
Advanced Animation With DirectX by Jim Adams
Data Structures For Game Programmers by Ron Penton
Physics For Game Developers by David Bourg
3D Game Engine Programming by Stefan Zerbst
Swords And Circuitry by Neil Hallford
3D Math Primer For Graphics And Game Development by Dunn & Parry
Multiplayer Game Programming by Todd Baron
Special Effects Game Programming by Mason McCuskey
Game Scripting Mastery by Alex Varanese
2D Artwork and 3D Modeling For Game Artists by David Franson
The Indie Game Development Survival Guide by David Michael
3D Game Art F/X & Design by Luke Ahearn
Collision Detection In Interactive 3D Environments by Van Den Bergen
Real-Time 3D Terrain Engines Using C++ and DirectX 9 by Gregg Snook
Focus On 3D Terrain Programming by Trent Polack
AI Game Development by Alex Champandard
AI Techniques For Game Programming by Mat Buckland
Programming Visual C++ 6 by Ivor Horton
Programming Windows 5th Edition by Charles Petzold
I bet nobody who reads this can beat that list [grin]
My only regret is that I didn't have access to the discount afforded by GDNet+ when I bought them... bugger.
I am currently at work and have just spent three and a half hours in one of our offices trying desperatley to repair the payroll system. I had to restore from dubious backups and patch up a not-so-standard system with people standing over my shoulder and looking for a scapegoat. If I don't fix it nobody get's paid. That simple.
I eventually managed to get it sorted though! It is not really a position I want to be in again. I'm going to take a late lunch now (all the good stuff will be gone from the local bakery).
So I have decided I am going to use a chunk based file format called .HEF and that it will be quite similar to .3DS. It's going to contain everything from mesh to music data to ... whatever I need for my engine, eventual CAD tools and maybe even a game!
I have spent all of today writing a .X to .HEF converter so I can start working with meshes. I have already got it to the stage today where it can contain static meshes. Over the next couple of days I intend to add bone and animation chunks to the file format.
Here is a picture of an ionic column with normals displayed. Although boring there is a lot going on there. It is displayed using my engine renderer DLL which is coming along nicley. The column mesh was loaded from my HEF file format. The texture was loaded from my own DDS loader and there is not a single function or variable from the D3DX library used to do this [smile]
I haven't programmed anything game related in weeks. The general malaise has set in. I just don't want my journal to be on the bottom.
C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C# C#...
I'm learning C# from the book "Professional C# 3rd Edition" in a vain attempt to move my IT career away from technical support and in to software development. You can do shit like that when you work for a small business. I am sick of pandering to people who lose their word documents or need help installing a wireless PCMCIA card.
I don't imagine this will take me too long as I am very well acquainted with another language, C++, which, as I understand it, is much more difficult to learn than C#. I am not exactly starting from scratch either.
Ladies and gentlemen - I give you an ionic column rendered with my Hades engine with per-pixel directional lighting, ambient lighting and normal mapping:
Compare this with the other picture below! I am now going to try and sleep with that elated feeling that only programmers get from time to time [grin]
After having signed up I checked the PayPal account and, besides the successful GDNet+ transactions, there was a subscription creation and subscription cancellation entry both with the status "Cancelled". What the hell does that mean?
Ever had one of those days where nothing goes right? I get them so often that "one of those days" for me is when things go correctly, grr!
Of course, not to be a drama queen though...
I tried using the character entity code for certain characters within the
My "Programming Game AI By Example" book arrived today. I have been really looking forward to this! I am going to get stuck right in at the weekend when I am not knackered from work. I got home at 18:40 today having started at 09:00. Not really used to this seeing as I used to finish at 16:30 on the dot.
Took my first phone call today and dispensed trouble-shooting instructions... think it went OK and that I am starting to get to grips with my new job. I think the slightest mishap would really knock my confidence though.