LWJGL Static Light Source

Hi, I am having trouble with lighting.
Before I go on I have one quick question.

IntBuffer lights = BufferUtils.createIntBuffer(16);
GL11.glGetInteger(GL11.GL_MAX_LIGHTS, lights);
writeLine("Maximum number of light sources: " + lights.get(0));

That code outputs the number 8. I am sure my understanding of OpenGL lights is incorrect but how is possible that I can only create 8 lights? As in, to my understanding, games can create a lot more than 8 lights.

Okay and here is my attempt at setting up lights.

(Perhaps I should have uploaded a larger image) parts of quads are lit up but not others, some corners have two quads lit but not the third.

The room is drawn with 6 quads and texture bound over them (I need to move on to floatBuffers).
Here is the light setup.

GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_LIGHT0);
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_DIFFUSE, floatBuffer(1.0f, 1.0f, 1.0f, 1.0f));
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_AMBIENT, floatBuffer(0.1f, 0.1f, 0.1f, 1.0f));
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_SPECULAR, floatBuffer(1.0f, 1.0f, 1.0f, 1.0f));
GL11.glLightModeli(GL11.GL_LIGHT_MODEL_TWO_SIDE, GL11.GL_TRUE);
GL11.glEnable(GL11.GL_COLOR_MATERIAL);
GL11.glColorMaterial(GL11.GL_FRONT_AND_BACK, GL11.GL_AMBIENT_AND_DIFFUSE);
// For the last line, what is the last float used for? Shouldn't it just be x,y,z?
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_POSITION, floatBuffer(-5f, -5f, -5f, 1f));
/* Rendering here. */


public FloatBuffer floatBuffer(float a, float b, float c, float d) {
	float[] data = new float[] { a, b, c, d };
	FloatBuffer fb = BufferUtils.createFloatBuffer(data.length);
	fb.put(data);
	fb.flip();
	return fb;
}

Perhaps I need to setup normals (I’m not too informed on normals) on my quads?

Thank you for your time and help.

The 8 lights is not the maximum number of light sources you can create. It is the maximum number of active light sources.
You can switch between unlimited amount of light during rendering.

You would have to tell us what you are trying to achieve.
Will it be possible to use the closest(8 or less) light sources to light up each quad/set of quads?

If you really need more that 8 light sources per vertex you should look at shaders.
Otherwise try to group vertex(quads) by light sources that are affecting them, and then setup lights, render, setup lights, render, setup lights, render…

For this project I do not actually need light sources, I am just trying to incorporate them so I can learn. As of now I just want to learn how to place one light at the center of the cube. So no, I do not need more than 8 light sources.

With the code I have I thought it would possibly place a light at -5, -5, -5. Then at that position I would see everything around it be more light up than the rest of the cube. (-5, -5, -5 is not the center of the cube).

EDIT: In the past whenever I tried to incorporate lights, the game would be very dim and would light up only when I turned my Camera to certain angles. I got that issue to go away but I don’t see a proper light source, I don’t see any “light bulb” of light coming from anywhere, and if I change many individual parts of my code, the outcome doesn’t change. Do I need to learn more about normals?

EDIT2: Perhaps it is a bit hard to decipher as my image has lots of fading colors, here is a before and after.
WITHOUT LIGHT

WITH LIGHT

If you are debugging lighting, don’t use textures that are mainly black. Preferably every surface (texture, vertex color) should be fully white, so you can see exactly what the lighting is doing.

For positioned lights (as opposed to directional lights): when using vertex lighting, don’t make your surfaces to big (relative to the light). Either sub-divide your geometry, or try to get per-pixel-lighting to work through shaders.