New project!

Published February 19, 2006
Advertisement


So here's what I've been working on the last month and a half.

What happened to Sunrise? Quick answer: I didn't like how it was turning out. The shop interface was clunky, a lot of my code needed refactoring and I had a confused design. To make things worse, I could literally count thousands of new space RPGs that were sprouting all around GDNet. So I'll shelve the game concept for later.

So what's with this new game? It's called Glow; it's an action RPG that involves you killing a whole wad of zombies and rampaging through largely linear maps. It has piles of unlockables (new weapons, and even minigames) that some of you may know about by now if you're within instant messaging distance of me to receive my ill-received PNG images.

It uses GLSL to generate a red/black/white duotone image. I'm a huge fan of Paul Pope's Heavy Liquid, but I'm an even bigger fan of Miller's Sin City, and so there's kind of a mixture between the two here. You'll see quite a bit.

I've been working unbelievably hard on the engine and I think it's starting to pay off. Can't wait to see more about the game? Neither can I.

I'll be trying out a Windows port eventually to see if I can get glActiveTexture and the rest of GLSL working (I use render-to-texture) as it appears glActiveTexture is not part of the standard loadout for Windows OpenGL -- can anyone confirm/deny this?

I'm primarily worried about not being able to have glActiveTexture if the user doesn't have pixel shader capability, which effectively eliminates my ability to use RTT and will have to hack in an alternate code path. Edit: SHilbert informs me that most videocards past and including the gf2mx should have GL_ARB_multitexture so I'm probably fine just bailing if you don't have it.

But still, carpe diem and whatnot. I think this thing is going to be bad-ass.

Minor progress update: You can now load normal-sized md2 models and use them as unblockable world geometry. This should come in handy for fences, overturned cars, etc.
0 likes 4 comments

Comments

Mushu
#pragma once

namespace pawn {

	namespace equ {

		template < class T >
		class IEvalable {
		public:
			virtual T eval() = 0;
		};

		template < class T >
		class Value : public IEvalable< T > {
			T _val;

		public:
			Value( T val )
				: _val( val ) { }

			virtual T eval() {
				return _val; }

			void set( T val ) {
				_val = val; }
		};

		enum {
			OP_ADD = 1,
			OP_SUB,
			OP_MUL,
			OP_DIV,
			OP_POW,
			OP_NEG,
			OP_SIN,
			OP_COS,
			OP_TAN,
			OP_ASIN,
			OP_ACOS,
			OP_ATAN,
			OP_LOG
		};
		
		template < class T >
		class UnaryExpression : public IEvalable< T > {
		protected:
			T _val;

		public:
			UnaryExpression( T val )
				: _val( val ) 
			{}
		};

		template < class T >
		class BinaryExpression : public IEvalable< T > {
		protected:
			T _val1;
			T _val2;

		public:
			BinaryExpression( T val1, T val2 )
				: _val1( val1 ),
				  _val2( val2 )
			{}
		};

		template < class T, unsigned int OP >
		class Expression : public IEvalable< T > { };

		template < class T >
		class Expression< T, OP_ADD > : public BinaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_SUB > : public BinaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_MUL > : public BinaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_DIV > : public BinaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_POW > : public BinaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_NEG > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_SIN > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_COS > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_TAN > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_ASIN > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_ACOS > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_ATAN > : public UnaryExpression< T > {

		};

		template < class T >
		class Expression< T, OP_LOG > : public BinaryExpression< T > {

		};

	}
}
February 19, 2006 08:30 PM
Evil Steve
That looks pretty sexual. What's up with the oversized smiley in the second screenshot though?
February 20, 2006 01:04 PM
Ravuya
When you roll over something in your inventory box, it "inflates" like the Mac OS X dock to show you a better idea of what it is.
February 20, 2006 01:10 PM
Evil Steve
Ooh, sexy.
February 21, 2006 10:57 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement