My game engine based on Ogre3d

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
unix4ever
Gnoblar
Posts: 2
Joined: Thu Aug 28, 2014 7:51 pm

My game engine based on Ogre3d

Post by unix4ever »

Hi folks!

I've decided to share with public my own project which I was developing for fun for 2 years.
https://github.com/gsage/engine
It's using ogre for rendering.
It has a small demo set up which is a stub for isometric rpg game.

I have regular job, so it's hard to both develop my engine and work efficiently for my employee, so development of that project is not very fast.
Of that 2 years I've had 2 active phases of development for 2-3 months each.
Also looking at all these commercial engines becoming much more affordable hits motivation a lot :wink:

However, I've managed to do some cool progress on it.
This engine supports luajit and can be easily programmed by lua.
You can do AI with that, you can code UI, startup logic, animation.
Also it loads all level and character data from json files, which format is a bit similar to .scene file structure.
What's cool is that it is possible to take a snapshot of scene state at any moment and the engine will generate a new json, which will contain all positions, rotations of the scene nodes, camera position and everything else.

Besides this, I've managed to use component based architecture in this engine, so each object on scene can be build from several components: movement, render, script and stats.
It is also possible to easily extend engine by adding new systems and components. Or even replace Ogre render system with something completely different.
It's not possible at the moment, but I also want it to be able to add systems dynamically, so it will be possible to configure this engine using plugins. Then write in config what plugin to install and what system to use.

Current target is to create a convenient editor, based on QT5. I have some initial implementation of it, which allows you to create project, but still I have a lot of work to do.
Now when I decided to opensource this project I think I should create documentation first.

I think this may become an alternative to Ogitor at some point. When I get editor working.
But instead of Ogitor, this engine can be used as a full pledged game engine :wink:

Currently the easiest way to build it is to use Ubuntu system. I develop it there so I have easy instructions how to make it working.
It is also possible to do it on windows, but you'll have to build all it's dependencies manually for that.
It does not compile on Mac, because I had not had Mac for some time and wasn't able to test it there, but maybe soon I'll also make it buildable there.

This engine still has huge optimization and feature roadmap.
When I started that project this list was smaller, but it keeps growing :D

So I thought that someone can find this project as a good starting point for a small game.
Also maybe it is a good contribution to ogre community.

Here some small demo of how it works:
[youtube]91S7zbajHuQ[/youtube]
loath
Platinum Sponsor
Platinum Sponsor
Posts: 290
Joined: Tue Jan 17, 2012 5:18 am
x 67

Re: My game engine based on Ogre3d

Post by loath »

very impressive and inspiring!

how do you handle pathing and such? (are you integrated with recast/detour or custom solution etc?)

thanks for sharing!
unix4ever
Gnoblar
Posts: 2
Joined: Thu Aug 28, 2014 7:51 pm

Re: My game engine based on Ogre3d

Post by unix4ever »

Thank you!

Yep, I'm using recast.
Actually, I've customised OgreCrowd project a bit to fit my needs.
OgreCrowd itself uses recast and detour for the pathfinding.
After it loads the level, recast system calculates navigation mesh.

I also had plans to make an editor for the navigation mesh and also pre-generate nav mesh cache in the editor.
Post Reply