Hi all it's been a long time...
I'm now working on a 3D FPS game and i got a big problem. This has never happend before : the glColor4f is not working with alpha value.
I know we need glEnable(GL_BLEND) and a glBlendFunc, i already done that, but it's not working. The only thing i arrive to get is a complete black screen or the hud object to be not rendered.
So my code :
The 3D/2D switcher :
--SOLVED--
Now the main render loop (in my main game class)
--SOLVED--
Now the draw rect void
--SOLVED--
The color binder system
--SOLVED--
The game init code
--SOLVED--
WorldClient, Player and Camera classes are not needed, it's only related to the HUD rendering.
After that, i would like to ask you a question : is there any way to make a start3D2D and end3D2D functions like in GarrysMod ? So i can render my texts (that are 2D verticies) in the 3D world (that have only 3D verticies).
Anyway, in first i need the HUD part to be working before thinking of any start3D2D thing...
Thanks by advance,
Yuri6037
This might be the problem
renderEngine.bindColor(new EngineColor(0, 0, 0, 200));
The alpha value should be between 0 and 1. Looks like you are setting the colour to 100% black (it will clamp 200 to 1, ie 100% alpha). If you do 1/200 you might get what you are after (although it will still be fairly dark)
Oh sorry i forgot, i have a color computing system (it's EngineColor), here is the source :
--SOLVED--
Quotepublic void drawRect(float x, float y, float width, float height){
glPushMatrix();
glTranslatef(x, y, 0);
glTranslatef(0, 0, 0);
glBegin(GL_QUADS);
glVertex2f(0, 0);
glVertex2f(width, 0);
glVertex2f(width, height);
glVertex2f(0, height);
glEnd();
}
First of all you push the matrix, but later do not pop the matrix, at least I can't see that part where you pop the matrix. And second thing is that you translate your rectangle to x, y coordinates, and then back to 0, 0 why?
Quote from: Daslee on September 04, 2014, 19:59:41
Quote
--SOLVED--
First of all you push the matrix, but later do not pop the matrix, at least I can't see that part where you pop the matrix. And second thing is that you translate your rectangle to x, y coordinates, and then back to 0, 0 why?
Seriously am I stupid I forget the glPopMatrix. For the translations, I already had problems using translation in matrix.
I found that you need to call your final translations (translatef, rotatef, ...) before the actual translation (to move it on 0, 0, 0).
Anyway thanks, you've seen a possible bug with forget to pop the matrix, because I'm not currently at my computer, I will apply that later...
I solved my problem.