OpenGLicious.

23 04 2009

Good news – I’ve switched the rendering (well, rendering so far) over to OpenGL from SDL.  MUCH better.  I’m getting an easy 60fps, whereas SDL would slow down when I was trying to render the middle of the scene (too much transparency, I guess).  An added benefit – it looks MUCH better.

I guess the next thing that I’ll try to implement is the player character (on a very general level).  Gotta figure out how I’m going to move the camera along with the character movement so that it looks good – this could be quite difficult.  Seeing as I probably don’t want to have it move at a constant speed along with the character, I have a few options.  The first is to have the character’s movement be non-linear – the character could speed up then slow down.  This wouldn’t work terribly well, as the quantized movement of characters in roguetypes would give people terrible headaches.  One thought I had was to break down the map into smaller sections, and using a Zelda-like transition as the character moves between them.

Because this isn’t Zelda, and the game mechanics would make a solution like that terribly problematic, I’d need something else – something that combined the nice panning of the Zelda-style camera with the centering of the camera on the character provided by the first idea.  Thinking about this, I thought of a very interesting variant where the screen displays a 3×3 grid of equally-sized sections (this would be internal – the sections wouldn’t be displayed graphically in any way), and when the character moves out of the center section into a different one, the camera pans to put that section in the middle of the viewport.  There would also be some sort of key combination that would zoom out the viewport and show you the entire map, in the style of the roguetypes of old.  This would be a good compromise – it would keep the user from getting sick of the camera jerking around a lot, and it wouldn’t cause an issue if you move to the edge of the screen and start getting attacked by creatures offscreen without your knowledge.

Any thoughts?

Oh, and a picture of it with the pretty OpenGL rendering:

ASCII3D running with OpenGL rendering

ASCII3D running with OpenGL rendering

Advertisement

Actions

Information

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s




Follow

Get every new post delivered to your Inbox.