Abstrantion Layer?

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
Post Reply
franzrogar

Abstrantion Layer?

Post by franzrogar »

Hello:

This is my first post and seems to be quite large. Sorry.

My programmer skills are limited only to cmdline in C, C++ and Java (forget this last one). I was looking for a good (if not impossible) 3D game engine when founded this fantastic 3D Engine (without game ;) ) Irrlicht.

I'm a plot writter and designer that wants to realize his dream: make a 3D realtime videoaventure role playing game (VARPG).

I'm designing an abstraction layer (only API) to irrlicht for an implementation of the game like this:

(example):
my_window = new window ( size, full, related_stuff )
my_map = new map ( file)
my_map.addObject (object, position)
my_map.addLight (light_type, related_stuff)
my_map.addCharacter( character, position)
...
window.addMap (map, time_to_load,)

my_text = new text ( "text", position, font, related_stuff)
my_menu = new menu ( text, links_to, etc )
(end_example).

I want to ask if something like this is possible (refered to the abstraction layer).

If it's possible, i'll follow designing the API and finishing the Tech Game Plot (now it's about 22 pages) and it's like "choose me and i'll show you what happen" (don't know how translate "Sigue la aventura" a type of popular books some time ago.

And i'll post soon the link to the webpage.

Thank you very much,
Thanks in anyway,
FranzRogar
bitplane
Admin
Posts: 3204
Joined: Mon Mar 28, 2005 3:45 am
Location: England
Contact:

Post by bitplane »

your idea sounds perfectly reasonable, but keep in mind the more you use irrlicht the more problems you'll encounter, the you'll realise you've been going about doing things the wrong way and *will* have to redesign at some point. It is best to do several small things before starting your dream project - that way you'll actually finish something, and you won't have your creativity stomped on by having to rewrite 10,000 lines of code.
My advice is to pick a simple old 2d game and make it 3d, pick something that will be similar to your dream project so you can re-use as much code as possible and you learn the relevant pitfalls. Make all your mistakes on a small project, and once you've got the experience you can start the mega-project with the benefit of hindsight.
MrPotatoes

Post by MrPotatoes »

this i can agree with

coming from a gaming background (no, sorry i don't want to do this for a living like i initally thought) starting small then working your way up is best

make astriods, Pac Man, a Zalda game. one of those two. something small to start with. then once you understand game programming it gets easier. because the engine isn't the hardest thing. it's the logic that backs up the game itself. you can fake AI or physics and still seem beliveable and fun to play but a game that is missing some logic here or there where there should have been a collison here or something to that extent will not only piss yourself off it'll annoy the dickens out of the players. be it your friends or family or whoever wants to play

now this being said. rock out man. document every little minuet detail to an exhaustive extent and you should be ready. without the prep (seems like you are on the right track there) you are screwed. my last game had a 200 page design document and even then that was a small game. a racing game with minimal story and one or two levels. 1 was implemented

API is just to help you out. not to write it for ya, but you already know that don't cha ;)

good luck
Maize
Posts: 163
Joined: Sat Oct 29, 2005 12:12 am
Location: In a cave...
Contact:

Re: Abstrantion Layer?

Post by Maize »

franzrogar wrote:(don't know how translate "Sigue la aventura" a type of popular books some time ago.
You might be referring to the choose your own adventure books...or maybe not. Other then that....Rock On man!
Guest

Post by Guest »

ahhh "the horror of high ridge"... was an excellent "choose your own adventure" book ;)

btw - the title of this topic (the spelling mistake) always brings a wry smile to my face even though I have seen it a hundred times by now.
AndyCR
Posts: 110
Joined: Tue Nov 08, 2005 2:51 pm
Location: Colorado, USA
Contact:

Post by AndyCR »

im working on something extremely similar, if not identical, right now, ie.

cIrrlichtModel model = loader.loadModel("sydney.md2");

my reasons are different, but its definitly possible, and is coming quite well.
Guest

Re: Abstrantion Layer?

Post by Guest »

franzrogar wrote:Hello:

This is my first post and seems to be quite large. Sorry.

My programmer skills are limited only to cmdline in C, C++ and Java (forget this last one). I was looking for a good (if not impossible) 3D game engine when founded this fantastic 3D Engine (without game ;) ) Irrlicht.

I'm a plot writter and designer that wants to realize his dream: make a 3D realtime videoaventure role playing game (VARPG).

I'm designing an abstraction layer (only API) to irrlicht for an implementation of the game like this:

(example):
my_window = new window ( size, full, related_stuff )
my_map = new map ( file)
my_map.addObject (object, position)
my_map.addLight (light_type, related_stuff)
my_map.addCharacter( character, position)
...
window.addMap (map, time_to_load,)

my_text = new text ( "text", position, font, related_stuff)
my_menu = new menu ( text, links_to, etc )
(end_example).

I want to ask if something like this is possible (refered to the abstraction layer).

If it's possible, i'll follow designing the API and finishing the Tech Game Plot (now it's about 22 pages) and it's like "choose me and i'll show you what happen" (don't know how translate "Sigue la aventura" a type of popular books some time ago.

And i'll post soon the link to the webpage.

Thank you very much,
Thanks in anyway,
FranzRogar
I think it must be possible. E.g. in MyWorld Engine there are abstraction layers for: Graphics, Physics, GUI, Evnts etc.. and it uses Irrlicht too.

the adress is: http://lofing.de/myworld/

By the way it has very similar interface you described:

world = new World ( size, full, related_stuff )
world.add(new object, position...)
world.add(new light, position...)
world.add(new camera, position...)

etc..

- very simply. And it is still possible to use all the functions and classes of Irrlicht


Maybe you could get some idea by this engine?
buhatkj
Posts: 444
Joined: Fri Dec 12, 2003 4:53 am
Contact:

LUA??

Post by buhatkj »

I would think that perhaps a slightly simplified version of the LUA binding would work for you? That is a pretty popular way to do story-driven game development, is to allow the game designers to use a simplified script binding to write the game. It works pretty well in NWN anyways :wink:
My irrlicht-based projects have gone underground for now, but if you want, check out my webcomic instead! http://brokenboomerang.net
elander
Posts: 193
Joined: Tue Oct 05, 2004 11:37 am

Post by elander »

I don't know what could be more abstract and user friendly than the irrlicht api. Perhaps instead of changing everything you could tell exactly what are those parts of the api that less intuitive.
Post Reply