Showing posts with label Game Engine. Show all posts
Showing posts with label Game Engine. Show all posts

Friday, March 27, 2009

New platform for my games.

I somehow managed to caught a flu.. as a consequence of this I'm laying all day in bed (with headache and stuffy nose all the time..). On the bright side of this, now I have time to think about my next hobby project. Yeah, I'm still starving to make a nice rpg game (not necessarly direct Sigmore Mines continuation), but this time I want to target different platforms and decided to check my luck with PC and PocketPC and the same time. I already have a simple 2D engine for PocketPC (but running on OpenGL so 3D is also possible) and I want to make a simpe minigame to test it. However I havent decided yet, how simple is simple enough...

Monday, August 27, 2007

Denmark on the horizon

On 29 of August at 7:30 am, I will be on a plane to Copenhagen in Denmark. For five months I will be studding at Aalborg University Copenhagen at faculty of Medialogy. Here in Poland I would start my semester in October, but in Denmark they are starting earlier - in September, so they have stolen one month of my holydays.. I will not stop working on my game. In fact now I will be working on laptop, so I could program during lectures ;). By the way, I'm really happy of my game engine, it turned to be easy to use and quite powerful. I'm definitely going to use it for my next games. I like the way how I implemented scenegraph. My previous implementations were based on the idea that every type of object had it's own scene node, for example MeshSceneNode, LightSceneNode, etc.. this time I have only one generic scene node which contains SceneObject. SceneObject can implement interfaces such as IDrawable, ISelectable, IUpdateable and so on :). For now I think that this is the best scenegraph implementation I come so far.

Thursday, June 14, 2007

Input system

Handling inputs from keyboard and mouse are ready. At this point I could use my little engine for some 2d game. And I will use it ;), but right now I have exams at my university so I can't spend much time on programming.

Tuesday, June 12, 2007

Animation of sprites

Today I have implemented sprites animation. I can read an animation sequence from file and display it on screen. I also have implemented mouse input and tomorrow I will work on keyboard. When this is done I will have a basic 2d engine ready (it's based on opengl so adding 3d in the future will not be a problem) and I will be able to start working on my next game :) .

Monday, June 11, 2007

Sprites

I have implemented displaying sprites on screen, sprite can be any size. The sprite on the test image has nothing do to with the game I'm inventing, it's just for testing purposes. Next step will be animated sprite with frame sequences.

As you can see on this screen, my next game will be called "Plastus".

Sunday, June 10, 2007

Loading of textures

Not much to write today. Because of wedding in my family, I have only managed to add support for texture loading, my next step will be adding functionality of displaying sprites on screen.

Saturday, June 9, 2007

State Manager

Today I have added support for game states such as gameState, menuState etc. Actually there are two classes:
  • StateManager which is singleton and has such functions as pushState, popState, changeState
  • State which is abstract class with abstract functions : onEnter, onExit, onUpdate, onDraw, onInput
StateManager is holding stack of states and is calling states from bottom to top, this way I can have gameState to draw it's state and then pauseState or inGameMenuState to draw its content.

Friday, June 8, 2007

Initialization of game window

I've done part responsible for initialization of game window and game loop. I have to admit that this time I have borrowed some ideas from JMonkey engine.

I wanted to paste here UML diagram but blogger don't want to upload my images and I don't know why* :(

Anyway I have AbstractGame class, which has abstract functions such as start, render, update, initialize, and VariableTimestepGame which implements this functions.



Before the window is created, application shows dialog with options regarding screen res, depth buffer, screen frequency and fullscreen/windowed mode.


*it's working now so I will upload some images

Thursday, June 7, 2007

Parts of Engine

A Game engine is a bunch of code what works from behind the scene and responds to commands from the game code. For example game tells engine to create a game window, to draw an image on the screen, to play some sounds. The game engine is some kind of helper library for the game.

When creating such engine first problem is how to organize it's internals into logical subsystems. We need rendering subsystem, input subsystem, sound subsystem, sometimes physics subsystem and something responsible for the game loop. When I will create my engine I will probably start with subsystem responsible for creating game window and game loop, then I will concentrate on rendering and inputs. Last stage will be creating functionality to play sounds.

Wednesday, June 6, 2007

Game Engine

Ok before writing a game, first I need to make an engine (framework?) for it. I want something simple to begin with, so first I will create 2D engine with gui support. I also want it to be portable "out of the box", so I will write it using Java + LWJGL. This blog will be some kind of dev diary of my engine and later of game made with this engine. I will try to write posts at daily basis, but we will see how this ends up.