PDA

View Full Version : What it takes to write your own 3d software?


LunaticuMaster
12-01-2006, 12:43 PM
What it takes to write your own 3d software?

TheLostVertex
12-02-2006, 06:19 AM
First you need to start with a design. Something like this:

http://img96.imageshack.us/img96/8472/engineer1yqjq8.gif

And after that, start coding and you'll be done, max, 3 hours.

Maybe if you are asking how hard it is to code your own 3d software, you should learn basic programming and that will eventually anwser the question fro you. (No, I do not mean learn BASIC, Im not that cruel hearted)

-Steven

Per-Anders
12-02-2006, 06:31 AM
At the bare minimum you will need to implement XDUGEF in order to maintain a competative edge in todays 3D application market. However doing so requires a deep universal understanding that in itself may take years to develop and mature before you can really entertain the possibility of creating your own 3D application.

LunaticuMaster
12-02-2006, 10:27 AM
I was looking for precise answers... For example ...

I need to know some math(geometry stuff or whatever),c+ skills,science...

Anyway thanks guys

UrbanFuturistic
12-02-2006, 11:26 AM
Try searches on Google using terms like "bresenheim algorithm", "perspective matrix", and "matrix multiplication".

Free, with permission of the author, programming books (http://mindview.net/)

1996 Cornell MEng project on Phong and Gouraud shading (http://www.nbb.cornell.edu/neurobio/land/OldStudentProjects/cs490-95to96/guo/report.html).

Computer Graphics Principles and Practice (http://www.amazon.co.uk/exec/obidos/ASIN/0201848406/203-7789034-2910304). Not your common coffee table book.

OpenGL SuperBible (http://www.amazon.co.uk/exec/obidos/ASIN/0672326019/203-7789034-2910304). Not perfect, some mistakes and errors of assumption (like which way up Targas are supposed to be read), but does have a lot of useful stuff.

This may take a while.

LunaticuMaster
12-02-2006, 12:50 PM
Now that is the right answer. :)

Thanks.Will check em out.

Ian Jones
12-03-2006, 09:42 AM
Thx for those links odubtaig. The Thinking in c++ book I dloaded and am reading now. I have never read a technical book that is so well structured and explained, thx so much for the link its invaluable to me (learning c++ and OOP).

playmesumch00ns
12-03-2006, 11:39 AM
saying '3d software' is a bit vague. Do you want to make a modeller? and animation tool? a lighting tool? a renderer?

The all require a solid grasp of 3d maths and efficient data manipulation. The trouble with dcc software tho is you'll spend most of your time writing and debugging UI code.

You might want to try writing some plugins for some of the bigger 3d apps first, to get your head around how they do it.

pmsc.

Tetsuyama
12-06-2006, 03:56 PM
Something you might want to take a look at if you don't need crazy high performance and are writing for Windows is this XNA thing Microsoft just came out with (microsoft.com/xna). I don't know that it'd be the bee's knees for writing a modeler, as it seems squarely aimed at someone writing sprite-based or "casual" 3d games. It's designed for use with C#, but you could probably use any .NET language with it (IronPython, VB.NET, or Managed C++ as other examples).

That siad, just because the barrier to entry is marginally lower doesn't free you from needing a good foundation in both computer programming and the rendering pipeline. If you're new to programming, I cut my C/C++ teeth on Deitel's "C How to Program" - they have a new "C# How to Program" book that's probably reasonably good though expensive. Odubtaig's suggestions for learning about the computer graphics side of things are very likely as good a place to start as any.

If you're stuck on using C++ and OpenGL/DirectX, once you wrap your head around C++ and OOP, I'd recommend Josuttis' "The C++ Standard Library" to learn about the hows and whys of STL; you should be able to write everything that STL provides, but you'll probably be better off using STL and taking the time that you would normally use to write those data structures to profile your code using different containers, iterators, and algorithms.

Best of luck!

RorrKonn
12-19-2006, 08:55 AM
Hello Lunaticu Master

I've been asking the same question.how to code 3D.
I ask once before years ago but Since there where no $7000 compilers there is no how to code 3D manuals.witch made getting started really hard.

even the university cant tech me to code 3D for $30,000.but thay can teach me all the basics
thats in books ya could buy all the book for around $500.not that thay cover 3D exactly.

Anyways I'm determined this time to learn to code 3D.

that say most 3D apps our coded in C++

Blender is a open source 3D app thats coded in C
except the render engine is in C++

There is alot of books on making games

I don't know but I think if I wrote a game in C++
that it would be a good start in leaning C++
and games our made form 3D Apps so ya might learn a little about making 3D apps
lighting and animation maybe.

Links to some helpful places.as I get more I'll post them.
http://www.atomic-3d.com/RK_Link/RK_Link_6A_Code.htm (http://www.atomic-3d.com/RK_Link/RK_Link_6A_Code.htm)

oh ya don't no which 3d app u use but thay all have plugs.
C4D has a plug helper that might be eruptional in learning to code 3D.
I assume all the 3d apps have them


I no how aggravating it is to get started but don't quit.
If ya can learn to 3D you can learn to code.

I've been surfing all the forms looking for a good place to hang out at where there is lot of helpful coders.
and for when some of the mean ones our not that helpful.

I did find this usefully link on a coders site
Unskilled and Unaware of It: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments
http://www.apa.org/journals/features/psp7761121.pdf (http://www.apa.org/journals/features/psp7761121.pdf)



RorrKonn
http://www.atomic-3d.com (http://www.atomic-3d.com)

CGTalk Moderation
12-19-2006, 08:55 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.