Skip to main content
gamedev.net
🔒 Locked

Getting started help

Started by tomer_sh 3 replies 1k views
Original Post
tomer_sh
tomer_sh
hi! my name is Tomer. I'm coming from software renderering, and wants to move on to GPUs. I really like the ideas of shaders, and am planning to use OpenGL with GLSL. Now, what do I need to get started? 1) tools, that might be helpful for shaders 2) OpengGL files and Libs 3) Graphic card, that is considered to be good 4) any additional tools for compiling shaders of GLSL? or I might be wrong. 5) a short description of the process to get me started quickly. thanks for your bother, if u plan to guide me. cheers, tomer!
Kalidor
Kalidor
Since you come from a software rendering background, you probably understand what goes on "under-the-hood" of OpenGL (or Direct3D for that matter) pretty well so you would really only need to learn the API. For that I suggest the Red Book (Here's the online (outdated) version. It's still useful but if you have the money I would recommend buying a copy of the newest version. It's nice to have when you just want to look something up or can't get online). Also check out the many tutorials around the internet (NeHe's for example). Don't try to get into shaders right away, they are a pretty advanced aspect and although you already know a decent amount about how things would work, it's best to really understand and have a feel for the API already.

1) When you do get into shaders, RenderMonkey (found on ATI's site) is a good environment for testing shaders before using them in your own programs.

2) You should have everything you need already for using OpenGL, but some windowing library is probably a good idea unless you don't mind not having your programs be cross-platform. I suggest GLFW or SDL. GLFW is pretty lightweight but SDL has a lot of other useful libs (I still haven't gotten into SDL but from what I hear it's great).

3) For shaders, you will need a somewhat newer card (Radeon9500+ or GeforceFx+) to run in hardware, but geforce4's supposedly have pretty good software emulation (at least for vertex shaders).

4) I haven't used GLSL but I believe you just load it into your program and the compilation is taken care of by the card's drivers. So you don't need anything else for that, but again RenderMonkey is good for testing.

5) As I said ealier in this post, start out with the Red Book and online tutorials. They should keep you busy for a little while.

Have fun, and welcome to the world of hardware-accelerated graphics programming! [smile]
kburkhart84
kburkhart84
I don't know much about the shaders yet... I recommend you start with just the API in a simple form. I learned on NEHE's tutorials, but they apply to WIN32. They are translated to other OS's and compilers, but I don't know how good they are. I use windows anyway so I don't use SDL or anything like it, but I have been told good things about SDL. If you want to get hardcore and learn it well, I recommend you learn the API yourself without another layer, unless you use the layer just for the windowing part. Then after learning the API, I'd learn the optimizations, vertex arrays, display lists, etc.. Then go with the complex stuff, multitexturing, bump mapping, shaders etc... I haven't gone to the advanced stuff myself due to that I don't need it. I just want to make fun games and don't care too much if they are the next gen graphics. But then, I don't make a living with it either. HaHaHa
Edit: cardwise, I use a RADEON 9200. Any newer RADEON or NVIDIA card would probably be best as they support the newest extension and shaders etc..


darklordsatan
darklordsatan
As Kalidor said RenderMonkey is a good visual development studio

I Think the latest addition to the opengl series books is the Orange Book, that covers GLSL.
Also, the books ShaderX,ShaderX2 and ShaderX3 are good ones too.

Theres another tool calles shaderworks (I think) besides RenderMonkey, but not sure that it supports GLSL, likely HLSL-only

But talking to my mate who is like a programming master, he told me the best option in the end was likely to make shaders at hand, and not use any RAD apps

Say, whats tou favourite tool for shader development, like rendermonkey or something
Definitely, notepad
SlayerDave
SlayerDave
If you don't want to shell out your hard-earned cash for a book, you should take a look at NVIDIA's Cg language (available here). The Cg User's Manual is available in PDF format and is an excellent introduction to shader programming in OpenGL and DirectX. The printed book "The Cg Tutorial" is also nice for explaining how in implement effects in Cg, but lacks a discussion of how to use the OpenGL and DirectX runtime libraries. All things considered, Cg and GLSL are pretty similar. The APIs are different and GLSL is more tightly integrated with the OpenGL state machine, but the basic shader development concepts are the same.

My book recommendations are:
"OpenGL Programming Guide" by Woo et al. (latest edition)
"OpenGL Shading Language" by Randi Rost (Orange Book)
"The Cg Tutorial" by Fernando and Kilgard
"GPU Gems 1 and 2" by Fernando

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.