I’m working on Android, and I’m new to graphics.
I have some particles that I don’t want to be affected by lighting. Right now, I am disabling lighting right before I draw the particles (gl.glDisable(GL10.GL_LIGHTING)), and then enabling them again once they’re drawn, and continue drawing the rest of the scene.
Would it be more efficient to leave lighting on, and just set all the particles to be fully emissive? (by calling glMaterialfv( GL_FRONT_AND_BACK, GL_EMISSION, white) right before drawing the particles)
There’s no easy answer here, I’m afraid. As the anon commenter says, you’re best off measuring it yourself.
Bear in mind that the results will likely be very hardware-dependent. Disabling lighting is less work for the hardware, but the state change may disrupt the processing pipeline such that the saving is negated.