Horde3D

Next-Generation Graphics Engine
It is currently 29.03.2024, 13:26

All times are UTC + 1 hour




Post new topic Reply to topic  [ 7 posts ] 
Author Message
 Post subject: Engine Overview in UML
PostPosted: 12.08.2008, 16:34 
Offline

Joined: 12.08.2008, 16:17
Posts: 7
Hey all,

Just wondering if there's any documentation for Horde3D that includes an overview of the engine in UML (i.e: a brief diagram with some of the main classes and how they relate to each other). Part of the reason I need such documentation is because I am using Horde3D for an assignment in a games related unit for my degree. One of the first tasks is to decompose (or reverse engineer) the engine into UML and identify any design patterns used in order to better understand the engine's architecture.

I've looked through all the available documentation and haven't found anything suitable. For now, I've resorted to Doxygen and a free UML modelling package called "StarUML". StarUML reverse engineers the source code into a very messy, cluttered diagram that's proving hard for me to decipher. While Doxygen does a great job of documenting each class, I'm not sure that it's capable of generating the kind of overview I'm looking for.

If anyone has any information or advice, please do let me know. Although I'm not new to graphics programming (have worked with OpenGL for some time now), I haven't worked with a full fledged 3d engine before, so please bear with me if my questions sound a bit naive! :S

Cheers,

Jarryd


Top
 Profile  
Reply with quote  
PostPosted: 12.08.2008, 20:56 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
I don't know if this functionality is also in the Express Edition of Visual C++ but in the Profession Edition of Visual Studio 2008, there is a Class Diagramm Generator. If that fits your needs is another question. Using Doxygen with GraphViz may result in a better overview, while Visual Studio's diagram is interactive.


Top
 Profile  
Reply with quote  
PostPosted: 13.08.2008, 01:00 
Offline

Joined: 12.08.2008, 16:17
Posts: 7
Hi Volker,

Thanks for the reply. I'm using GraphViz with Doxygen atm and the individual class diagrams are great. What I was hoping for was a diagram that gives me an overview of the entire engine. I've read that the professional edition of Visual Studio 2008 features a class diagram generator, but I don't have access to that atm.

I'm trying to build the overview myself using Doxygen and what I could gather from the documentation. I'll post the diagram here in a day or so, just to see how right (or wrong...:S) it is.


Top
 Profile  
Reply with quote  
PostPosted: 13.08.2008, 23:30 
Offline

Joined: 26.03.2008, 02:58
Posts: 160
Cool i could use a new poster ;)


Top
 Profile  
Reply with quote  
PostPosted: 14.08.2008, 12:18 
Offline

Joined: 12.08.2008, 16:17
Posts: 7
Hey guys,

Here's the UML diagram I created for a presentation on Horde 3D. The aim was to provide a brief overview of some of the core classes that compose the engine. I'm not sure that it's entirely correct though, so I've posted it here for some feedback.

Image

Cheers,

Jarryd


Top
 Profile  
Reply with quote  
PostPosted: 14.08.2008, 15:27 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
That looks about right for the inheritance graph, but I am only working from memory ;)

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
PostPosted: 16.08.2008, 21:11 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
This looks good but it does not include all relations.

Scene nodes for example usually reference resources. And resources are essential for the renderer.

There are many more interesting relations considering the animation system or material system but I think these cannot be shown with a UML class diagram in a clean way.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 35 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group