I am not on an advanced level yet, but I figured you are the clever. I started learning Open GL, I can do the basics. I want to start coding a 3D engine. But I have no idea how an 3D Engine is structured?
I mean what does it consist off and what does it have to do?
Congratz and good luck!
I’m not nearly the foremost authority on 3D or OpenGL, as I just started working with it about a month ago. However, the learning curve is remarkable. So I have faith that you’ll get far with whatever you endeavour.
To give my insight into your question though, I suppose that the question you ask is rather vague. You have too look at it from the standpoint of “What is my engine going to be used for?”
Once you answer this, you can start defining what features you want and what you need to get the job done. This is the approach that I am taking with the project that I’m working on. I’m interested in high detail, high polygon count, but at the expence of speed. I’m working on an inductrial app.
If I were to create a gaming engine, I would be interested in speed over detail and polygon count, but to a certain extent. The questions that need to be asked are :
Whats my target hardware (speed)
Whats my required features (lighting, fog, etc)
What kind of interface do I need.
The list goes on and on, but once you begin building it, you can start to flesh out an idea of what you’ll need to work on.
I hope this helps.
I am currently working on one myself, it is not that hard to get one working, even though it really doesn’t look that good and isn’t that fast
the only tip I can give you is read books. Dozens of books.
A good start is Real-Time Rendering by Thomas Muller and Eric Hans. ISBN: 1568811012 Get it at Amazon.com.
It covers basically evertything you need to get you started. It also give links to web pages and other books that contains advanced algorithm and suck.
A must have for reference and for beginners.
Buy it, you really won’t regret it. It answered most of my question.