Jump to content
  • Advertisement
Sign in to follow this  
CodeTitan

3D World

This topic is 5208 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Greetings to everyone. I want to move to 3D game programming now. The first program that I want to create is a maze that one can move around in. To optimize the learning process, should I try this by writing my own software renderer? Or should I do this in something more simple, like OpenGL?

Share this post


Link to post
Share on other sites
Advertisement
Just wondering, since this post is in the "Beginners" secion, how much programming have you done? I would suggest making a few good 2D games before moving onto anything 3D.

Share this post


Link to post
Share on other sites
What kind of experience do you already have?

A software renderer would require you to learn a lot of things about the graphics pipeline, vector and matrix maths, trigonometry, data structures etc and is not a simple task.

It depends really what you're focus is.

If you just want to make a game then use an API.
If you're doing this to learn then perhaps writing a software renderer is for you.

Andy

Share this post


Link to post
Share on other sites
If it is your first try on 3d graphics, then I would suggest you not to write your own software renderer.

Share this post


Link to post
Share on other sites
The mathematics is not the problem. I was told that writing a software renderer is a good learning experience. However, once I am done with it, I throw it away.

Share this post


Link to post
Share on other sites
Well if the mathematics isnt a problem, you already said you can use SDL & C++ proficiently and you're interested in it as a learning experience, then yeah a basic software renderer should only take you a couple of months (from scratch).

That couple of months is for everything from the various maths lib's you could write, file handlers etc, if you've already got or are using open-source libs for that kinda thing and are really just writing the renderer itself then it will take even less time than that!

I say go for it, just decide exactly what you want it to do first and spend a couple of days architecting it... i say only a couple of days because you'll most likely want to revisit and re-architect the layout a little once you've discovered a little more about what you'll need.

Andy

[edit] corrected some typo's minor rewording [/edit]

Share this post


Link to post
Share on other sites
Quote:
Original post by CodeTitan
The mathematics is not the problem. I was told that writing a software renderer is a good learning experience. However, once I am done with it, I throw it away.
Yes, it's a good learning experience. At writing polygon fillers and stuff like that.

Edit: Also, if you're only planning to throw it away, then think about other stuff you could have done in that time, and that you wouldn't throw away. And that you would also learn things from.

Share this post


Link to post
Share on other sites
Sure, but it would probably be much slower and a bit uglier than if you used something like OpenGL, which is, IMO, pretty easy to learn. I learned OGL via NeHe first and then spent about a day writing a very simple software renderer just to learn the math behind it (no textures, etc.). It was worth it but I wouldn't want to bother extending it.

If, however, you're interested in writing 3d games for mobile platforms, you'll probably need to write your own renderer.

- Pete

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!