Best way to achieve multiple, polished 2D lighting

Hi,

I’m looking for a way to implement Normal mapping, Specular mapping, and Color mapping into an object in 2D space with GLSL shaders. I google’d some tutorials, and they were either hard to understand, the wrong version than the last one, or calculated in 3D. I was looking for a good way to implement this lighting into a game engine with multiple lights and different materials. Basically the best lighting possible.

Also, I’m trying to avoid openGL 3.0+, because I absolutely love the deprecated pipeline :), But if you can find a good tutorial on that, or even a book, I’m okay with learning modern openGL if absolutely necessary.

EDIT: Second time I put it in the wrong board, sorry!

Why do you love the depricated pipeline so much? The programmable pipeline is so much better, and you will be very restricted if you don’t take advantage of it.

Mainly because of how I’ve gotten used to it. I don’t mean immediate mode, I’ve moved past that. But I am learning the new pipeline pretty fast. Its just I’d rather learn something hard in a simplistic setting, rather than learning Matrix math, Vector math, Lighting, Additive Blending mechanics, and normal’s all at the same time.

I may be REALLY wrong, but I just need some direction on were to go next. I know the (basics of) interleaved VBOs, GLSL shaders (version 120), and matrix transformations.

Why don’t you get everything working for a simple 2D no-lighting scenario (that means getting everything working with the modern pipeline: VBOs, Shaders, Textures, Matrices, etc.) before you start introducing more complex stuff.

Thanks for the idea, but I still need some good tutorials that I don’t need too much knowledge on modern opengl before hand to learn.

“very restricted” ?
Decades of OpenGL game developing were working fine without it.

Compared to what we have access to today, he will be restricted. If we were having this discussion ten years ago, I would have told him to use the depricated pipeline because it would have been the best option back then.

I just need something to learn for a 2D game engine. It needs multiple materials, and lights. With some kind of graphical effects to make it look like it took a while to make.

The main things I don’t like about the newer pipline is the matrix is handled by the shaders, rather than the glMatrixMode(*), and how the VBOs are pointed to the card. I just think its a bit overkill for a 2D game.

For 2d game you can just use single camera matrix(view and projection) and handle all transformation at cpu. This way you can batch lot more agressively.

That’s not a valid argument. It’s still restrictive as hell. There’s a reason why they’ve been adding functionality.