Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

3D rendering

Name: Anonymous-san 2010-08-03 17:10

hi /prog/. I want to get started programming games and what-not in 3D. Where do I start? Links to tutorials and downloads appreciated. I've never really dealt with 3D graphics.

Name: Anonymous 2010-08-03 17:15

http://nehe.gamedev.net/default.asp is my personal choice. Otherwise google is basically where to go.

Name: Anonymous 2010-08-03 17:15

Do you have experience with 2D game programming? Because otherwise you're putting the cart in front of the horse.

Name: Anonymous-san 2010-08-03 17:15

anyone? :'(

Name: Anonymous 2010-08-03 17:21

>>1,4
noko
Self-bump within five minutes
I can't wait for summer to be over.

Name: Anonymous-san 2010-08-03 17:25

>>5
fine, it's my very first post on /prog/ (or on any text board). I know nothing except for java. I have no idea where to begin learning something new, and I just wanted a little bit of help.

Name: Anonymous 2010-08-03 17:29

>>6
Don't try 3D game programming. You'll fail miserably.
Start by learning C. Then, if you still want to do game programming, learn a (2D) game programming library, like Allegro. Then, when you have a handle on game programming, move to 3D.

Name: Anonymous 2010-08-03 17:29

You only have three choices, and one isn't really a choice:
1) OpenGL
2) DirectX
3) Roll your own (software renderer)

OpenGL is "open" and cross-platform friendly.  Driver support for OpenGL generally isn't as good as for DirectX (especially ATI cards).

DirectX is backed by Mircorosft and very closely tied to the different versions of Windows (DX9 -> Windows XP, DX10 -> Vista, DX11 -> Win7).  If you don't require newer features like "geometry shaders" or "compute shaders," then you can write a DX9 application and it will run on everything from Win XP to the present.

You can forget about (3) unless your goal is purely academic and you don't mind wasting a year or two on something no one will ever use.

Name: Anonymous 2010-08-03 17:31

Oh, shit.  I was in the process of writing >>8 before I saw >>6.  Yeah, OP, forget about 3D game programming until you learn C.  Then do some 2D until you get the hang of it.

Name: Anonymous 2010-08-03 17:32

GRAPHICS EXPERT here. Nehe tutorials are absolute garbage. They're good for getting some ideas, but don't take them beyond face value. OpenGL has changed significantly since the Nehe tutorials initially debuted, all of the immediate mode stuff that the Nehe tutorials use has been deprecated and removed from OpenGL 4.x.

Graphics programming in all of it's forms is a huge subject domain and it will likely take you some time to master.

There's a lot of books and tutorials out there that teach numerous things, but there's no silver bullet one-stop shop. You'll need to learn from a variety of sources.

However, no graphics programmer should be without a copy of Computer Graphics: Principles and Practice. It covers the fundamentals. It's starting to show it's age, but it's still very applicable to this day.

Personally, I just read the reference documentation and standards specifications to keep up to date with the APIs. Most of the new stuff is in GPU programming and shaders/compute kernels, and for those there's nVidia's free GPU Gems books on their developer portal, or the ShaderX series of books.

Name: Anonymous-san 2010-08-03 17:33

>>9
>>7

I guess you guys are right. Maybe I'm rushing ahead of myself. I should try taking this one step at a time.

Alright, I'll learn C.

Name: Anonymous 2010-08-03 17:37

>>11
Do yourself a favour and learn it from K&R, by the way. Anything else will bite you in the end.

Name: Anonymous-san 2010-08-03 17:39

Which should I learn? C or c++?

Name: >>2 2010-08-03 17:39

>>10
Oh right. I only used it for OpenGL ES which is basically a subset of OpenGL 1.1.

Name: Anonymous 2010-08-03 17:40

Just so you know, most of the professional gaming industry has moved on from straight C. C++ is the main workhorse language of choice for writing engines and games, with some assembly language and the use of DSLs for code generation or specifying configuration data. Scripting languages like Lua, Python, or home-rolled ones are used by some studios for higher-level game logic and event scripting--however, most triple-A titles on consoles have their scripts translated into standard C++... 256MB of systems memory isn't a lot to work with for a VM when you're trying to max out what the hardware can do.

Name: Anonymous 2010-08-03 17:54

>>13
C, of course. Sepples in an abomination of a clusterfuck of a poor excuse for a language. >>15 is right in that Windows game programmers often use it, but that's for two reasons:

1. Windows doesn't have a canonical C compiler. MSVC is a Sepples toy.
2. People who take up programming to become game programmers are usually dim.

If you intend to make a career out of writing games (and don't intend to do it by yourself like MDickie), you'll probably want to pick up Sepples at some point, but it's a terrible, terrible choice for a beginner.
Also keep in mind that most established game programming libraries (including Allegro and SDL) are written in C.

Name: Anonymous 2010-08-03 18:03

>>16
Even for other platforms, even on current generation handhelds, C++ is the language of choice among professionals. GCC 4.5 is currently used for the PS3, PSP, Wii, and Nintendo 3DS pro SDKs.

Professionals don't use Allegro and SDL, unless they're doing a quick Linux port, in which case they'll use SDL to setup an OpenGL context.

Allegro is an abomination that should die, it's an early project of Shawn Hargreaves who has since gone on to work in the actual gaming industry and now works at Microsoft as the chief architect on XNA. He's matured as a developer over the last 12+ years. Compare Allegro now against the design of XNA and you'll see a huge difference.

Name: Anonymous 2010-08-03 18:08

>>17
You don't actually have a clue what you're talking about, and even if you did, what ``professionals'' are doing isn't particularly relevant to what's a good entry point for a beginning programmer, which is what we're talking about.
Nice try bullshitting your way through a conversation, though. I take it /pr/ is still down?

Name: Anonymous 2010-08-03 18:12

>>13
Definitely C. You will eventually have to move to C++ but C++ is a world of weird, usually shitty, tradeoffs. Without understanding C, you won't realize how bad C++ can get, and what to avoid at all costs. Most good C practices carry over to C++ with little change. C++ does have some marginal benefits to add to C, for sure. But C++ also adds a fuckload of headaches for no obvious reason and it would suck to see someone get discouraged just because Bjarne is a dickhead.

Name: Anonymous-san 2010-08-03 18:14

>>18
I'm not a beginner programmer. I'm fairly fluent with java.

Name: Anonymous 2010-08-03 18:16

>>20
Trust me, you're a beginner.

Name: Anonymous 2010-08-03 18:17

>>18
I do know what I'm talking about and it is relevant because you shouldn't give a beginner a false sense of what the real industry is like. There's no need to treat the novice as a baby. The software frameworks and engines that modern game developers build are far removed from the libraries that are popular among hobbyists, amateurs and open source developers in terms of feature sets and scope.

I agree that starting with C++ before C is a bad idea though.

Also, nice ad hominem attack.

Name: Anonymous 2010-08-03 18:44

In less than 5 posts, OP has already displayed 4 tropes of a typical no-nothing wannabe programmer.


1. Being a bad /prog/ user. (noko and premature bumping)
2. Desiring to program 3D games without 2D game development experience.
3. Claiming to be an EXPERT Java programmer.
4. Not knowing C.

Conclusion: >>1-san is a less than subtle, yet successful troll.

Name: Anonymous 2010-08-03 18:46

>>23
premature bumping
didn't sage

dohoho

Name: Anonymous-san 2010-08-03 18:48

>>23
I never claimed to be an Expert Java programmer..

I'm going to go ahead and learn c++ now.

Name: Anonymous 2010-08-03 18:48

>>24
Hey fuck you king of town

Name: Anonymous 2010-08-03 18:53

>>25
And nothing of value was lost, or gained.

Name: Anonymous 2010-08-03 18:55

>>22
That's not what an ad hominem is.

hobbyists, amateurs and open source developers
0/10

Name: Anonymous 2010-08-03 19:37

>>20
You should go back to lurking /prog/, I probably have more experience with Python than you have in Java and I still lurk. Because in reality, I don't know shit about programming.

Name: Anonymous 2010-08-03 20:57

>>29
PROGRAMMING IS ALL ABOUT ``ABSTRACT BULLSHITE'' THAT YOU WILL NEVER COMPREHEND

Name: Anonymous 2010-08-04 0:18

Waiter, there's a faggot quote in my soup.

Name: Anonymous 2010-08-04 6:50

>>31
```````````````````````````````````````Don't shout, everyone will want one!'''''''''''''''''''''''''''''''''''''''

Name: Anonymous 2010-08-05 16:09

>>32
Phew, quotes properly balanced, I almost got worked up there.

Name: ​​​​​​​​​​ 2010-10-23 2:59

Don't change these.
Name: Email:
Entire Thread Thread List