Page 1 of 1
3d programming?
Posted: Tue Mar 01, 2005 8:54 am
by dehumanizer
Greetings everyone!
I never tried anything 3d before (just some bryce I believe) and have a little question on directions about 3d programming.
I was taking a look at the wikki section in "the absolute newbies guide" and something intrigues me. It says I should be fairly familiar with C++.
I understand rendering requires compilation, however, where is the correlation about designing 3d models with 3d programming? I mean, will I have to be familiar to C++ to design, or I'll need this kind of knowledge for rendering purposes and extras installations (classes, add-ons, plugins, etc)?
My knowledge of programming is limited to PHP/MySQL. But I really got inspired by OGRE when visiting its page, from the name of the program and its logo to the greatest and complexes features of it. Amazing!
Posted: Tue Mar 01, 2005 9:35 am
by walaber
in general, making 3D models, and making an actual game, are 2 seperate elements. for models, you just use some 3D modelling tool, and then eventually export to the Ogre format, and you'll be able to load and use the models in your game.
as for programming, you will need to do some studying of C++, I personally recommend reading the following book, available for free over the net:
http://mindview.net/Books/TICPP/ThinkingInCPP2e.html
Posted: Tue Mar 01, 2005 9:50 am
by Whitebear
IMHO, you don't need to be an experienced C++ programmer to begin writing programs with 3d graphics. You may start with python port of OGRE. It is much simpler than C++.
Posted: Tue Mar 01, 2005 10:11 am
by dehumanizer
Guys, thank you for the quick reply.
Walaber, great tip about the book, thx.
Whitebear, if you allow me to continue your answer with another question please. Will I ever be limited if I choose Python? Confronting it with C++.
Posted: Tue Mar 01, 2005 10:39 am
by Kencho
In my honest opinion, you don't need to be a C++ guru to do 3D programming. In fact, the hardest part of it is accomplished by Ogre. Having worked with 3D applications help indeed, but you need at least a basic level of C++ to do something (you can't build a model if you don't know how to read the instuction booklet

). So learning some C++ is required.
You can begin with Python, and acquire some programming experience with it, then trying to move to a harder language: C++ That should definitively help
So good luck and welcome!
Posted: Tue Mar 01, 2005 12:53 pm
by Whitebear
Will I ever be limited if I choose Python?
The shortest answer will be 'Yes'. You'll need C++ to get full control over the engine. As for me, I use Python+PyOgre for quick prototyping and testing ideas.
Posted: Tue Mar 01, 2005 4:32 pm
by bana
Python enables you to learn many of the over-arching aspects of the OOP philosophy (Object Oriented Programming) without a lot of the mess of pointers, memory, etc.. And then you can take those aspects that you learn in python, add a bit of messy details and you have C++

Posted: Tue Mar 01, 2005 4:52 pm
by Clay
There's two main problems with the python bindings.
1) They are experimental (I'd consider them around the late alpha, early beta stage), so you will find bugs with the bindings while using them. I've got a whole slew of them I'm working on for the next release.
2) There is no documentation for them. You will have to read and use the C++ documentation to learn it.
I'll eventually work on getting documentation for the Python bindings. The C++ api reference will be the primary documentation for the library still, but I would like to have some basic usage tutorials plus a guide to converting C++ Ogre calls into their python equivilants. All of this will come when the list of things todo for the Python bindings is cleared. That'll take some time.
Posted: Tue Mar 01, 2005 5:51 pm
by Project5
I would recommend getting a c++ book and fiddling with some of the examples that Ogre comes with. Try making it do something a little different, and in about a month or two you'll find yourself proficient in it.
Just be sure to get a good compiler with autocomplete. That'll make it more fun than looking up functions manually because Ogre has a lot of code inside it. I use Visual Studio and Visual Assist, but there are all sorts out there.
Ogre gives you a more interesting environment to learn in than most c++ curriculums that I've been a part of... instead of a for loop counting to ten in some console output, you can drop boxes into a scene, move things about, and mess with particles.
You might learn differently, but it worked for me
--Ben
Posted: Tue Mar 01, 2005 8:43 pm
by dehumanizer
So many replies for a first time post, kindness of you all.
I must be honest with some thing, since I stated earlier I got confused where OGRE was a 3d modeller + a 3d engine rendering, now I know it is a graphics rendering engine. What exactly am I gonna be able to achieve through OGRE with close to zero knowledge of 3d modelling? Do I even have to bother with 3d modelling or the programming part is distinguished from modelling? I mean, programmers are programmers and modelers are modelers.
Merging all previous posts in this thread I can tell it is correct to say OGRE can definitively make the learning curve in game programming experience quite more enjoyable and also looks like Python can speed up things in the hard coded part.
Thank you again guys, have a nice day.
Posted: Tue Mar 01, 2005 9:42 pm
by Kencho
Yep, coding and modelling follow different paths. Helps to have a minimum knowledge of modelling, just to make your own models when you need to tes something, but think that you don't code with buttons that say "build box" or "scale this sphere". Anyways, you can always model with code, but that has more of maths than art
