let me just add, i've been coding since i can remember.... don't ask how long... i got into 3d programming couple year ago (just before i joined this forum) i started off with writing a small 2d engine, after alot of help from some of the great coders here i finished a 2d engine (not a game) and understood everything about it, it was very good, i could probably write some commercial games with it... anyways then i moved onto 3d coding, and i wanted my own 3d engine, which again after help from some people here i got to understand more about how the directx framework was working underneath the api calls.... so to finish it up... i have my own 3d engine now, i develope commercial simulations/games for companies, it may not be unreal level, but it is good enough for what i do.... for those people that say think small, do big etc, don't listen to them, they are gremlins.... think big, start small is how it should be done, and for ideas, "wouldn't it be good if".. dont scrap them, write them down in a notepad and save them on your computer, after you finish the basics, go back to that document and you will find alot of ideas you forgot about, then you can start improving what you have already made.

if you have already worked on small time projects releated to 2d/3d coding, then you have already taken the first step. do what i did, keep trying, trial and error, ask for help, and you will get where you are going.

IF you are determined - you will get your project moving. (dont worry about it being great, just keep moving ahead, other coders will get interested if it is open source)
IF you are not determined - give up now....

;MM;