![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj5cEwPK-FS1SIFk0ve7G0Ue6XGEoIpEeoLh4sEoXbRbItrDUMXpB9jHBDX5ZwDnB8eAnYcOSmbxvVEKQNtA6Z0uOJr56n6Swz64R9Su70unSFqy99Wo8cBaPnZW6-Ph3n5PyDsZUfKVk/s400/priv3.png)
Thursday, September 30, 2010
Tuesday, September 28, 2010
Small Mercies...
The words create, select, insert, update, delete are all six characters long.
If you work with databases and programming languages, you will understand why this is a small mercy for us poor developers. :-) Or perhaps I am just losing my mind to GDB induced psychosis...
If you work with databases and programming languages, you will understand why this is a small mercy for us poor developers. :-) Or perhaps I am just losing my mind to GDB induced psychosis...
Monday, September 27, 2010
I'm Knee Deep in GDB...
Learning things I never wanted to know...
Update:
I'm working with a Stackless framework which uses the asynchronous features of Psycopg2. On top of this, I've been using SQLAlchemy... unfortunately I have recently noticed that after a few hundred or so requests, the application simply hangs. After analyzing a core dump, it seems that something is attempting to acquire a lock... and deadlocks. It is very deterministic, as it always happens at the same point in my unit tests.
I've narrowed down the issue to something inside SQLAlchemy... I attempted to fix it but SQLAlchemy is so full of dark magic that I'm really quite lost. I guess I was expecting a bit too much to think that regular SQLAlchemy would would correctly with an asynchronous driven psycopg2...
Update:
I'm working with a Stackless framework which uses the asynchronous features of Psycopg2. On top of this, I've been using SQLAlchemy... unfortunately I have recently noticed that after a few hundred or so requests, the application simply hangs. After analyzing a core dump, it seems that something is attempting to acquire a lock... and deadlocks. It is very deterministic, as it always happens at the same point in my unit tests.
I've narrowed down the issue to something inside SQLAlchemy... I attempted to fix it but SQLAlchemy is so full of dark magic that I'm really quite lost. I guess I was expecting a bit too much to think that regular SQLAlchemy would would correctly with an asynchronous driven psycopg2...
Thursday, September 23, 2010
Postgresql Introspection.
Postgresql introspection is easy once you know where to look.
Despite working with Postgresql for the better part of a decade, I only recently discovered the Information Schema. It has all your database metadata laid out in nice, human readable views. No more wrestling with pg_catalog and other obscure system tables!
Despite working with Postgresql for the better part of a decade, I only recently discovered the Information Schema. It has all your database metadata laid out in nice, human readable views. No more wrestling with pg_catalog and other obscure system tables!
Sunday, September 19, 2010
Is the ERD useful for Game Dev?
I think ER diagrams are very handy tools for designing data requirements for a game. I don't see them given away or even talked about (in this context) on the web, and I'm not sure why.
Does anyone else use them? I think if they are stripped of attributes, and simply specify entities and relationships, they can be useful for general design, and perhaps are even re-usable? I have a theory that they form an excellent domain specific language useful for specifying game mechanics. Attributes can be added to a generic ERD, which add behaviour to the model, unique to the game being designed... hmmm.
This is a quick little design I put together to hold the required data for a Master of Orion (4x) style game.
Does anyone else use them? I think if they are stripped of attributes, and simply specify entities and relationships, they can be useful for general design, and perhaps are even re-usable? I have a theory that they form an excellent domain specific language useful for specifying game mechanics. Attributes can be added to a generic ERD, which add behaviour to the model, unique to the game being designed... hmmm.
This is a quick little design I put together to hold the required data for a Master of Orion (4x) style game.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-n0YfTK3e2WryW4NYlUSayIPN_Wu5NmOQz4hFn8WQ-H_3fCmilKf82OZ25v4KYhjh_2OV8jIP799f8FDlzOwQaKKbZjOgxv1gWADqf1kGABeCn5LYJhW2GrAWZMwVw0Gpht4t3SgsoRg/s400/moo4.png)
Saturday, September 11, 2010
Interesting Postgresql Feature...
I found something new today, Postgres supports asynchronous notifications between different database sessions! What does this mean?
try this in a psql window;
then in another window;
Now go back to the first psql session... It's like a mini pub sub system built into your favourite database!
http://www.postgresql.org/docs/8.4/static/sql-notify.html
try this in a psql window;
listen SomethingHappens;
then in another window;
notify SomethingHappens;
Now go back to the first psql session... It's like a mini pub sub system built into your favourite database!
http://www.postgresql.org/docs/8.4/static/sql-notify.html
Flashback - 1993
Flashback. A hard game, with awesome rotoscoped animation.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5dnAdsSq2L1bKzt7GyWs1B6KnmYfxDLdUO8en0HMNifn4g3biRzxf1x77465Y1l6-AUtly9IxYHB3NE_SR4Qa_o0BM3bWx4aV1fB9nqrmaKutUYt6m3Dx2HwESvYmmDStfswye31a-Zs/s400/Flashback+(DOS)_1.png)
I played this on DOS. It is essentially a puzzle platformer, with relatively complex movement. Jumps, rolls, ducking, running and shooting could be all combined in a very fluid way, with flawless, seamless animation. Solutions to various puzzles sometimes required a running combination of several moves.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeoBhFnxI7IzGuXqFJ0vFCwOb1ZGc2l5tqRKPcXH_yCF0AKHgk9ZZB6nfmS2gEpn383xHQX5K8PSdNKX5wXlhDuLnBPE2szBN2wQEMGc7_IebspNtlaFI53-6ac65EfRbNMRO_HQZSlCI/s400/Flashback+(DOS)_5.png)
The graphics were outstanding. The cinematic cut scenes were very well done, and would draw a crowd if you played this in a class room. :-)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYcs85RRCQ4oGm8q2H0J7eL-TLa_SvAMn4REP7q-KysB7DyuPD-xTjD1txyzCmMWTWOoS3X5XU6UMrhcOCOISRCtCMss1y7FHxmv6mVZLEQGDXSos6hS7YCBJuEDjn6kRUIbj4jmAF2Q0/s400/Flashback+(DOS)_6.png)
This is a great game, with a great story. It is easily equal or better than any platformer produced today. If you want to play it, it should be available on abandonware sites (it was developed by Delphine Software) and there are also version released for NES and Sega Master System... I think. :-)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5dnAdsSq2L1bKzt7GyWs1B6KnmYfxDLdUO8en0HMNifn4g3biRzxf1x77465Y1l6-AUtly9IxYHB3NE_SR4Qa_o0BM3bWx4aV1fB9nqrmaKutUYt6m3Dx2HwESvYmmDStfswye31a-Zs/s400/Flashback+(DOS)_1.png)
I played this on DOS. It is essentially a puzzle platformer, with relatively complex movement. Jumps, rolls, ducking, running and shooting could be all combined in a very fluid way, with flawless, seamless animation. Solutions to various puzzles sometimes required a running combination of several moves.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeoBhFnxI7IzGuXqFJ0vFCwOb1ZGc2l5tqRKPcXH_yCF0AKHgk9ZZB6nfmS2gEpn383xHQX5K8PSdNKX5wXlhDuLnBPE2szBN2wQEMGc7_IebspNtlaFI53-6ac65EfRbNMRO_HQZSlCI/s400/Flashback+(DOS)_5.png)
The graphics were outstanding. The cinematic cut scenes were very well done, and would draw a crowd if you played this in a class room. :-)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYcs85RRCQ4oGm8q2H0J7eL-TLa_SvAMn4REP7q-KysB7DyuPD-xTjD1txyzCmMWTWOoS3X5XU6UMrhcOCOISRCtCMss1y7FHxmv6mVZLEQGDXSos6hS7YCBJuEDjn6kRUIbj4jmAF2Q0/s400/Flashback+(DOS)_6.png)
This is a great game, with a great story. It is easily equal or better than any platformer produced today. If you want to play it, it should be available on abandonware sites (it was developed by Delphine Software) and there are also version released for NES and Sega Master System... I think. :-)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglQW2Z_DyrMPaDBT7rCdOP80PSRClisD5Ji8Q12iFFAaySoG-rTNOP0Y2hrlXgxT6RZW0TZsDfj5oPeEcF01mgJzhdfKfvK6QEPSfeN90jAEbiSGt_I913mopAAyHfuCEnPuEjBVvp5Ls/s400/Flashback+(DOS)_7.png)
Indie Game Makes Huge.
Check out these two links then connect the dots...
First, check out Minecraft.
Then read about some development problem's they are having.
Two things can be noted here.
1. Minecraft is bringing in a truckload of euros, every week. Good games can make money on their own merit, with or without the Indie tag.
2. PayPal cannot be trusted with your money. Don't use them.
First, check out Minecraft.
Then read about some development problem's they are having.
Two things can be noted here.
1. Minecraft is bringing in a truckload of euros, every week. Good games can make money on their own merit, with or without the Indie tag.
2. PayPal cannot be trusted with your money. Don't use them.
Thursday, September 02, 2010
Aircraft Simulation - Unity3D
Controlling an aircraft using physical forces is... hard. I've managed to implement something realistic using various Fin objects which apply forces on the aircraft. This video shows the autopilot system using these fins to keep the aircraft stable.
Subscribe to:
Posts (Atom)
Popular Posts
-
These are the robots I've been working on for the last 12 months. They each weigh about 11 tonnes and have a 17 meter reach. The control...
-
I get many confused emails from people trying to get UniWeb to work in the Unity WebPlayer. It works, but you have to set things up correctl...
-
So, you've created a car prefab using WheelCollider components, and now you can apply a motorTorque to make the whole thing move along. ...
-
Often, when building a game, you need to test if objects are colliding. The objects could be spaceships, rocks, mouse pointers, laser beams....
-
I went to the pulse expo this evening, where one of the speakers mentioned that Ubisoft are in town (Perth, Western Australia), looking to...
-
I'm about to release a Tech Tree editor tool for Unity. To test usability and work out how improve the interface, I used it to buil...
-
I've been working on something new. I get a lot of projects where I have to add multiuser functionality. Finally I've made the jump ...
-
I decided to double check my assumptions about Stackless and the GIL on a multicore machine, using the same example provided by David Beazl...
-
In my spare time this week, instead of building spaceships, playing games or even drinking beer... I will make a game for the Apple App Stor...
-
In the 7 years I've been actively involved in web development, I have never seen any of my peers bother implementing proper controls to ...