Should I not be using 3D?

Started by
25 comments, last by EbonySeraph 22 years, 9 months ago
I havent learned anything about 2D graphics(thought the concepts are probably too easy.) I did all the matrix crap for 2D graphs in algebra one but have never programmed anything 2D before. Should jump right in and start learning Direct3D like I am or should I learn only 2D first. And the NeXe tutorial starts you off learning 3D anyways...so I am thinking its ok that I am learning 3D first. And besides, I dont know any APIs that are focused on 2D anyways. And barely any games are made 2D anymore. The closest thing are RTS games but even those use an isometric veiw. "Ogun''s Laughter Is No Joke!!!" - Ogun Kills On The Right, A Nigerian Poem.
"Ogun's Laughter Is No Joke!!!" - Ogun Kills On The Right, A Nigerian Poem.
Advertisement
Learn what you are motivated to learn. It''s that simple.
_______________________________
"To understand the horse you'll find that you're going to be working on yourself. The horse will give you the answers and he will question you to see if you are sure or not."
- Ray Hunt, in Think Harmony With Horses
ALU - SHRDLU - WORDNET - CYC - SWALE - AM - CD - J.M. - K.S. | CAA - BCHA - AQHA - APHA - R.H. - T.D. | 395 - SPS - GORDIE - SCMA - R.M. - G.R. - V.C. - C.F.
Thanks, I just though there is an oder that you should learn things in. I know most people start out making 2D games before 3D and here I am learning graphics in 3D and not 2D...

"Ogun''s Laughter Is No Joke!!!" - Ogun Kills On The Right, A Nigerian Poem.
"Ogun's Laughter Is No Joke!!!" - Ogun Kills On The Right, A Nigerian Poem.
Ok, first NeXe start off with Direct 3D because the purpose of the articles is to teach Direct 3D. Second having and isometric view in a game doesn''t mean the game is 3D, ex. Starcraft, Diablo, Age of Empires were all 2D.

Ok now I think you should learn 2D first here''s why. 3D graphics is more advanced than 2D graphics, and 2D graphics may seem very simple to you, but the reason to make a 2D game is to learn game programming not graphics programming. Game programming involves game logic, structuring a game, organizing data, etc. Also, you may want to do a game which involves AI routines, multiplayer modes, etc. Doing these things within a 3D game can get very complicated and will take much longer to get the results you want, almost everything becomes more complicated in 3D.

Finally, Direct X 8 supports 2D b/c DX 8 has every previous version of DX in it, so the Direct Draw from Direct X 7 is still there. Also, you could use sprites in DX 8 and ignore the z-coordinate.

Digital Radiation
Well, what +AA said is all well and good, but who the hell wants to learn and program game logic and multiplayer modes when what you really want to do is learn 3d?

Learn what you are motivated to learn. You''ll very quickly see where your deficiencies are and correct them quickly. Learn 3d AND 2d simultaneously. How could it be any better than that?
_______________________________
"To understand the horse you'll find that you're going to be working on yourself. The horse will give you the answers and he will question you to see if you are sure or not."
- Ray Hunt, in Think Harmony With Horses
ALU - SHRDLU - WORDNET - CYC - SWALE - AM - CD - J.M. - K.S. | CAA - BCHA - AQHA - APHA - R.H. - T.D. | 395 - SPS - GORDIE - SCMA - R.M. - G.R. - V.C. - C.F.
I agree that if you''re into learning 3d go for it. Keep in mind that you might have serious troubles along the way but if you can handle that (there are a lot of people on these forums who can''t) go for it.
I''d recommend learning some of the 2d graphics stuff, because somewhere down the line, chances are you are going to use it. Maybe you are writing a game that will have some special effects that will use a lot of the concepts from 2d, or the most likely thing, is that even if you only make 3d games the rest of your life, you will probably make some sort of editor at some point, that will use 2d graphics.
so, the point is, even though you don''t think you''ll use it much, and that you may not make a game with it, atleast be able to write some simple progs and demos in 2d, so you can have that background going into 3d.
Just my oppinion mostly, but a good one I think.

--Drakonite

[Insert Witty Signature Here]
Shoot Pixels Not People
What +AA_970+ is complete bullshit, and you guys have the wrong idea about 2d.
Here is why.
#1 AA_970 2d graphics aren''t made to learn. That statement right there is so wrong it''s not even funny. In fact, I think if you said that in person, you''d probably get an ass kicking. In this day and age 3d graphics are complicated, but not complicated enough that lot''s of magnificant art can be put into it. No matter how complicated and realistic looking the art is in a 2d texture it will take as many resources as a crappy texture. Also, many 3d games are far too complicated. Some people want simple games because most of them are just funner to play if done right. 2d graphics are a style, not a learning device.
#2 DirectDraw isn''t JUST in directx8 because it uses the OLDER stuff. Thats the most bullshit I''ve ever heard. DirectDraw might not be updated that much, but thats because 2d isn''t as complicated and doesn''t need much updating.

Also, 3d isn''t that much more complicated as you think it is. If you''re writing the 3d code yourself its a lot more complicated but if your using an API like OpenGL or Direct3d it''s not that much more, you just have to store an extra dimension.

So here is my advice to EbonySeraph. If you want to learn 3d first then go for it because you probably won''t realize it at first, but when you learn 3d graphics you''ll end up learning a lot about 2d also.

Akira

The only witty comment I can think of is don''t listen to peoples shitty advice, especially if they tell you that they keep stuff in computer stuff because it has old stuff in it, if 2d graphics were obsolete they would get rid of it to save space in the libraries etc.
Well, i started the same way you did. First book i ever bought was "The Black Art of 3d Game Programming", and let me tell ya.. i didnt have a clue. With all the programming experience i had, nothing in the book looked at all familiar. But i wanted 3d, not 2d, so i bought another book.. i bought "3d game programming with c++", read it all, loved the book, liked how it taught everything.. then when i finished it i realized i couldnt use any of the info as it was too out of date, and i still couldnt picture anything in 3d.. 2d mind i guess =(. So i gave up, i went to 2d, mastered it, and tried out 3d again.. the 2d knowledge didnt help AT ALL! Eventually i just sat down, re-read all my 3d books over and over again, going through them very slowly, read hundreds of opengl and direct3d articles, and books, untill i finally got down the base knowledge.. took almost a year to get the base knowledge down, but once i got that, i got everything else very very quickly.

So IMO, it doesnt matter if you start 3d, if thats what you want, the 2d knowledge didnt help me any, you should be able to do straight 3d fine. 2d did, however, help me in creating level editors for my 3d "games". Anyway, all knowledge is good knowledge =)
I''m pretty sure it IS just there to have backwords compatability...

I''m sure I read somewhere that Microsoft officially said they wont be updating DirectDraw anymore, and highly advise you to use D3D even for 2D projects.

OpenGL doesn''t support 2D graphics well, and I assume D3D doesn''t, eather (I use OpenGL), since you have to do some tricks to get it working right... it''s much easier to do 3D in OpenGl to begin with.

Once you know how, though, it''s quite easy to do 2D in OpenGL... just gota'' figure out how to get the camera angle right :-)

Drawing 3D graphics in OpenGL is easy.
Drawing 2D graphics requires you to know how to draw 3D graphics.

Problem lies in the usability... 3D graphics in OpenGL may be easy to draw, but doing something usefull with them is another story. Collision detection, effects, and an endles list of hurdles you gota figure out to make even a simple 3D engine are quite hard. Making a 2D engine, though, is one of the easiest things to make as far as games go :-)

3D = good if your just learning graphics
2D = good if you want to learn the other parts of game design too

Cuz, like someone said, just about everything is far more complicated when dealing with 3D crap, and the amount of stuff you need to learn to do even simple engines is a LOT...

Pluss, you will always need at least a little 2D knowledge... even 3D games have 2D GUIs :-)

This topic is closed to new replies.

Advertisement