What Next In My Engine?

Started by
8 comments, last by CrazyCdn 17 years, 9 months ago
Well, I have not done a whole lot on my engine. But I have finished the window class and the graphics class. The window class simply creates the window, etc., and the graphics class handles devices. Including creation, lost devices, and things like that. Everything works very well. No problems whatsoever. But what do you all think should come next? Should I start resource classes, for things like textures, sound/music, 3D models, etc.? Or is there something else I should do first? I know it really just depends on what I want to do next. I am just asking for recommendations from others, maybe those who are more experienced at this sort of thing. I really want to get this project moving. This is the first project I have really looked in to. I have looked into so many techniques, effects, optimizations, etc., in order for the engine to run the best I can make it run. I have started a few small engines in the past. But everything was done wrong, and very inefficient. LoL. But this one is coming together nicely. I've cleaned up my coding style quite a bit, including straying away from hungarian notation for variable names and things like that. I would appreciate any help that you can offer. Thanks in advance, Matt U.
:==-_ Why don't the voices just leave me alone?! _-==:
Advertisement
Think about the game you want to make with your engine, and then figure out what's missing from your engine that you would need for your game. Take that list and figure out what you think would be the easiest to add into your engine. Do that.
Well, I just thought about it. I will be adding a logging class first. I need to create that first, so I can keep track of everything that is happening, in case I encounter an error. But I will take your suggestion into my mind. I've never thought of it that way. LoL. =P
:==-_ Why don't the voices just leave me alone?! _-==:
I would recommend Resources and Scripting (Mostly since its just fun, for me)

But I would like to know what is 'bad' about Hungarian notation, since MS uses it (or so I think)
Well, a lot of people think that it's just a bad way of naming variables. And that's Microsoft. What if I had a pointer to an unsigned integer, named WindowWidth, inside a class:

m_pUintWindowWidth, m_puWndWidth

It just makes variables' names longer. I don't see a point anymore. I still prefix my class variables with 'm_', but I've strayed from 'n', 'i', 'f', 's', 'c', and things like that.
:==-_ Why don't the voices just leave me alone?! _-==:
Hello Waldo!

I'm currently building my first engine too! Here's the feature I've added (in order), it could give you ideas. btw, I am doing a 2D engine on direct3D :

-Window creation
-D3D Device creation and recuperation from lost state
-Texture loading
-Sprite drawing
-Text drawing
-Line drawing
-GUI system

However, if you're doing a 3D engine (good luck!), you might want to consider doing an .X file loader. Personally, i've done a 3ds file loader.

As for audio/network, I'd wait until the graphics part is prety decent before attacking these topics!
Thanks for that info. Trillian. =) Yeah, it's a 3D engine. And when I do projects like this I do try to stick to one aspect at a time. Graphics, then textures, then sprites (billboarded quads in this case), then 3D Model loaders, then audio, and things like that.

I am creating a log class right now though. I think it'd really be useful a little later on. That way I don't necessarily HAVE to debug something. I can check the log. =)
:==-_ Why don't the voices just leave me alone?! _-==:
On Hungarian notation, I think it is quite redundant in a well-encapsulated object oriented program where functions are typically short and their scope is well defined (and restrited). Hungarian notation is there to remove confusion about what type a variable contains and what the programmer can do with it. It still has its place, though and that place is in a dirty great big C program with 5000 global functions and variables.
Good, fast, cheap. Pick any two.
Quote:Original post by TFS_Waldo
Well, I have not done a whole lot on my engine. But I have finished the window class and the graphics class. The window class simply creates the window, etc., and the graphics class handles devices. Including creation, lost devices, and things like that.

Everything works very well. No problems whatsoever. But what do you all think should come next? Should I start resource classes, for things like textures, sound/music, 3D models, etc.? Or is there something else I should do first?

I know it really just depends on what I want to do next. I am just asking for recommendations from others, maybe those who are more experienced at this sort of thing.

I really want to get this project moving. This is the first project I have really looked in to. I have looked into so many techniques, effects, optimizations, etc., in order for the engine to run the best I can make it run. I have started a few small engines in the past. But everything was done wrong, and very inefficient. LoL.

But this one is coming together nicely. I've cleaned up my coding style quite a bit, including straying away from hungarian notation for variable names and things like that.

I would appreciate any help that you can offer.

Thanks in advance,
Matt U.






You need to decide what design you want for the world representation.

Terrain....

Is it static 'rooms' (single or teleporting between multiple) or continuous (load on the fly chunks...)

Heightmap or mesh scenery (or both) ???

Render Culling methods ??? (portals, etc..)

Will there be a seperate 'server' ??? Splitting the functionality to support client/server now will save ALOT of redesign and recoding later.


Alot of other things will depend on the above flavors.
( you need the stage before you can properly display/test the actors....)








Quote:Original post by Zekeva
On Hungarian notation, I think it is quite redundant in a well-encapsulated object oriented program where functions are typically short and their scope is well defined (and restrited). Hungarian notation is there to remove confusion about what type a variable contains and what the programmer can do with it. It still has its place, though and that place is in a dirty great big C program with 5000 global functions and variables.


Not even then. What if you change that "int m_iVar;" to a long? Find and replace... waste of time. I have no problem with int m_Var or mVar (I use the last one, fewer characters) but tossing in what a variable should be, is normally just a pain.

"Those who would give up essential liberty to purchase a little temporary safety deserve neither liberty nor safety." --Benjamin Franklin

This topic is closed to new replies.

Advertisement