mupen64plus / mupen64plus-video-rice

Video plugin for the Mupen64Plus v2.0 project, using OpenGL. This plugin is based on the RiceVideoLinux plugin from earlier versions of Mupen64Plus.
31 stars 40 forks source link

OpenGL 2.1 / GLSL 1.2 requirement... #62

Open MyTDT-Mysoft opened 8 years ago

MyTDT-Mysoft commented 8 years ago

I know it doesnt exactly qualify as an issue, but i dunno other place to post about that.... so basically i have this 2004 laptop with an ATI card... that have OpenGL 2.0.5, and GLSL 1.1 ... as the scripts being used doesnt require GLSL 1.2 i converted them to GLSL 1.1, and now i don't get any more script compiling errros.... but what else that was changed that require OGL 2.1? because i'm only getting a white screen when running it now...

Narann commented 8 years ago

that have OpenGL 2.0.5

There is no OpenGL 2.0.5 version but I'm curious. Could you run glxinfo | grep 'version'.

as the scripts being used doesnt require GLSL 1.2 i converted them to GLSL 1.1

What did you changed?

what else that was changed that require OGL 2.1?

Basically everything: Switched from fixed pipeline to shader base pipeline. Now OpenGL 2.1 and OpenGL ES 2.0 use the same code.

Could you also define de OglError macro? This way it should print possible errors. Copy line 23 to 25 and run the app.

Your best option for now is to compile from the latest commit before the merge.

PS: I realize there is some trouble with config. I need to investigate to be able to repo.

MyTDT-Mysoft commented 8 years ago

2.0.5 is the internal version/revision by the card the offical is just "OpenGL 2.0" the .5 is revision specific for the card... so nevermind that :)

about the scripts.... i changed stuff like

vec3 AColor = texture2D(uTex1,vertexTexCoord1).rgb;

to...

vec3 AColor, ..., ...; //begin of the function like on older C AColor = texture2D(uTex1,vertexTexCoord1).rgb;

so as GLSL 1.2 added initializers... yeah, ok i can't compile mupen myself on windows... (because i dont want to bloat my PC with cygwin or msvc 2013)... i only accept plain mingw hehe

but i will do that during this week... i will check the error on each GL call since i have a proxy to the calls for a different purpose... anyway... so i can find what else is failing without need to compile... (and i have a fairly recent build that Richard compiled to me a week ago... so i could try this new RICE :P)

2016-03-27 15:08 GMT-03:00 Dorian Fevrier notifications@github.com:

that have OpenGL 2.0.5

There is no OpenGL 2.0.5 version but I'm curious. Could you run glxinfo | grep 'version'.

as the scripts being used doesnt require GLSL 1.2 i converted them to GLSL 1.1

What did you changed?

what else that was changed that require OGL 2.1?

Basically everything: Switched from fixed pipeline to shader base pipeline. Now OpenGL 2.1 and OpenGL ES 2.0 use the same code.

Could you also define de OglError macro https://github.com/mupen64plus/mupen64plus-video-rice/blob/7b357cfa8ee4869bd42481689d541a14762662a4/src/OGLDebug.h#L23? This way it should print possible errors. Copy line 23 to 25 and run the app.

Your best option for now is to compile from the latest commit before the merge.

PS: I realize there is some trouble with config. I need to investigate to be able to repo.

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/mupen64plus/mupen64plus-video-rice/issues/62#issuecomment-202116224

Narann commented 7 years ago

@MyTDT-Mysoft, can I close this issue?

MyTDT-Mysoft commented 7 years ago

probabily @Narann, but could some effort be done to make it support glsl 1.1 instead of glsl 1.2? i'm not confident with my shader ability, so didnt made a patch, as all i did was research into that direction to know the changes are minimal.

Narann commented 7 years ago

could some effort be done to make it support glsl 1.1 instead of glsl 1.2?

As you guess, we have limited resources. :(

i'm not confident with my shader ability, so didnt made a patch

Pull Request can be a good way to point what have to be changed and start discussions. It can be ugly as it point what would work with you so I can see what is problematic.

The point to change minimal requierement is to have a shared OpenGL 2.1/OpenGL ES 2.0 code.

The biggest part was to switch from fixed function pipeline to programmable shaders.

From a code perspective it's done, I now have to check on various hardware (Specially Raspberry Pi).

In your situation, all I can recommend is to get the code, fix it, even in a trashy way, clean what you can and do a pull request so we can talk about potential changes.

If we could support OpenGL 2.0 hardware without too much pain I would be happy. :)

Maybe it can be an easy fix, maybe not. For now I just can't do anything.

MyTDT-Mysoft commented 7 years ago

ok, i will try altough it will be hell to get it to compile on windows without cygwin and msvc, but let's see...