Archived

This topic is now archived and is closed to further replies.

gonen

engine core

Recommended Posts

i want to start writing my engine (as many of you guys do ) and im currently researching what should i put in the core. im reading quake2 source , unreal source (so complex i dont understand alot , if anyone can help explain , please do) , and some other engines. i like to see what you think should be in the core ? so far what i think should be : 1) basic data structures (list,vector (i dont wanna use stl because its design is complex and hard to debug , writing my own should be easy)) 2) a file system (supporting zip files , encryption , search path , error checking (crc) ,maybe ability to add other file io like file-mapping) 3) a fast math library (vector,matrix,quanternions,fast math routines(sqrt,sin,..)) 4) basic console/command system (quake style) 5) a memory system (chunk allocator,pools,managers) 6) debug system ( error reporting(could be console) , log file ) 7) basic network (main will be in the engine , just basic stuff here like handle connections) 8) script system ( never used one , maybe the script belong in engine and not core , should it be high level or low? what are the uses of script ? i really dont know anything in this subject) anything missing ? comments ? suggestions ? know any good engine core with amazing design i should look at ? ill start designing the basic data structures and file system soon

Share this post


Link to post
Share on other sites
Looks like a nice structure, but also a lot of work... I would personally use stl instead of defining my own data structures. Stl might be very complex, but when getting a hang on it, it''s great

Btw, where did you get the unreal source from?

Share this post


Link to post
Share on other sites
look for ut432pubsrc.zip , its not the full source , just public headers , but so much code is inlined , theres alot in there.
check out unreals vector , seems much nicer then stl

Share this post


Link to post
Share on other sites
Ah, found it!..

Btw, what vector class are you referring to? Just found FVector in UnMath.h, but i''m not sure you can compare that one with the ones defined in stl?

Share this post


Link to post
Share on other sites
quote:
Original post by gonen
in UnTemplate.h Tarray


Okey, found it! And yes, that one was very nice, but i''m still not sure it''s nicer then stl''s collection classes. The advantages of using your own one is that you can suit it after your own system (error checking, memory management, etc..), but the advantages of using stl''s is that you''ll have a lot of diffent types of well written collection classes to choose from, choosing the one that will fit your current situation best!

Though, offcourse, it''s up to you whether you''d like to write your own or not!

Share this post


Link to post
Share on other sites
You''ve probably been a bit blind: There''s this great article going on called Enginuity - which has just what you need I guess.

http://www.gamedev.net/reference/programming/features/enginuity1/

Share this post


Link to post
Share on other sites
im not that blind and i cant wait for the next segment,
i forgot to mention that im reading it as well , very nice but its not a full engine , just the very basic minimal stuff, he''s not trying to write a full engine , just help us understand the design.

Share this post


Link to post
Share on other sites