Pete´s Messageboard... No ISO/BIOS requests!

Homepage Members Register Login Search Old board


Neuer Thread ...
More : [1] [2] [3] [4]


AuthorTopics » Book an abo for this threadClose Thread Move Thread Fix the thread Print view Delete this thread

Z 
Real addict
.........

...

Status:Offline
Date registered: 03.08.2005
Post:103
Send Message
...   Created on 06.12.2010 - 03:35Jump to top Quote this post Report this post Edit Delete


Yeah it's working now, dunno what the problem was.

Anyway, still haven't found a suitable shader.

I'm playing on a LCD projector now (image is about 3.30 meters wide) and I found playing 3D PSX games is great, since you can use high resolution and anti aliasing; you get a sharp image without any pixelation at all (1920x1080).

But 2D games, or a mix of 2D and 3D, is just unplayable!

It looks either
a) extremely pixelated when using no shader
or
b) extremely blurry (as if you'd need glasses).

It's unbearable, even on the LCD monitor (26") it's not a good image, and I surely don't wanna play in a small window on a small monitor.

I see only one solution to enjoy a PS game with 2D grafics (or a 2D/3D mix), there is still need of a real HQ4x/HQ5x shader.
(In this case, 4,5x would be perfect to scale 320x240 to FullHD 1080p.)

I know there are some HQXx Shaders from guest, but they just don't work with the same good results as for example the ZSNES counterparts do, or the examples on Maxim Stepin's page. http://www.hiend3d.com/hq4x.html

In ZSNES, you get a really sharp image even at lower resolutions.
But the HQXx OpenGL2-Shaders from the shader-Pack here for Pete's plugin make the image way too blurry, I'm afraid.



Maybe one would need severel passes to make such a shader with the same quality as in ZNES and others?




guest ...
Real addict
.........

...

Status:Offline
Date registered: 30.07.2004
Post:854
Send Message
...   Created on 27.01.2011 - 19:08Jump to top Quote this post Report this post Edit Delete


AA 2D+3D GLSL shader

gpuPeteOGL2.slf:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
 
/*
   AA 2D+3D GLSL shader
   Copyright (C) 2011 guest(r) - guest.r@gmail.com
*/

uniform sampler2D OGL2Texture;

void main()
{
    vec3 c11 = texture2D(OGL2Texture, gl_TexCoord[0].xy).xyz;
    vec3 s00 = texture2D(OGL2Texture, gl_TexCoord[1].xy).xyz; 
    vec3 s20 = texture2D(OGL2Texture, gl_TexCoord[2].xy).xyz; 
    vec3 s22 = texture2D(OGL2Texture, gl_TexCoord[3].xy).xyz; 
    vec3 s02 = texture2D(OGL2Texture, gl_TexCoord[4].xy).xyz; 
    vec3 c00 = texture2D(OGL2Texture, gl_TexCoord[5].xy).xyz; 
    vec3 c22 = texture2D(OGL2Texture, gl_TexCoord[6].xy).xyz; 
    vec3 c20 = texture2D(OGL2Texture, gl_TexCoord[5].zw).xyz;
    vec3 c02 = texture2D(OGL2Texture, gl_TexCoord[6].zw).xyz;
    vec3 c10 = texture2D(OGL2Texture, gl_TexCoord[1].zw).xyz; 
    vec3 c21 = texture2D(OGL2Texture, gl_TexCoord[2].zw).xyz; 
    vec3 c12 = texture2D(OGL2Texture, gl_TexCoord[3].zw).xyz; 
    vec3 c01 = texture2D(OGL2Texture, gl_TexCoord[4].zw).xyz;     
    vec3 dt = vec3(1.0,1.0,1.0);

    float m1=dot(abs(s00-s22),dt)+0.001;
    float m2=dot(abs(s02-s20),dt)+0.001;

    c11 =.5*(m2*(s00+s22)+m1*(s02+s20))/(m1+m2);

    float k1 = max(dot(abs(c00-c11),dt),dot(abs(c22-c11),dt))+0.01;k1=1.0/k1;
    float k2 = max(dot(abs(c20-c11),dt),dot(abs(c02-c11),dt))+0.01;k2=1.0/k2;
    float k3 = max(dot(abs(c01-c11),dt),dot(abs(c21-c11),dt))+0.01;k3=1.0/k3;
    float k4 = max(dot(abs(c10-c11),dt),dot(abs(c12-c11),dt))+0.01;k4=1.0/k4;

    c11 = 0.5*(k1*(c00+c22)+k2*(c20+c02)+k3*(c01+c21)+k4*(c10+c12))/(k1+k2+k3+k4);

    vec3 mn1 = min(min(c00,c01),c02);
    vec3 mn2 = min(min(c10,c11),c12);
    vec3 mn3 = min(min(c20,c21),c22);
    vec3 mx1 = max(max(c00,c01),c02);
    vec3 mx2 = max(max(c10,c11),c12);
    vec3 mx3 = max(max(c20,c21),c22);
    mn1 = min(min(mn1,mn2),mn3);
    mx1 = max(max(mx1,mx2),mx3);

    float filterparam = 1.7; 
    vec3 dif1 = abs(c11-mn1) + 0.001*dt;
    vec3 dif2 = abs(c11-mx1) + 0.001*dt;

    dif1=vec3(pow(dif1.x,filterparam),pow(dif1.y,filterparam),pow(dif1.z,filterparam));
    dif2=vec3(pow(dif2.x,filterparam),pow(dif2.y,filterparam),pow(dif2.z,filterparam));

    c11.r = (dif1.x*mx1.x + dif2.x*mn1.x)/(dif1.x + dif2.x);
    c11.g = (dif1.y*mx1.y + dif2.y*mn1.y)/(dif1.y + dif2.y);
    c11.b = (dif1.z*mx1.z + dif2.z*mn1.z)/(dif1.z + dif2.z);

    gl_FragColor.xyz=c11;
}


gpuPeteOGL2.slv:
Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
 
/*
   Copyright (C) 2005 guest(r) - guest.r@gmail.com
*/

uniform vec4 OGL2Size;

void main()
{
    float x = 0.75/2048.0;
    float y = 0.75/1024.0;
    vec2 dg1 = vec2( x,y);  vec2 dg2 = vec2(-x,y);
    vec2 sd1 = dg1*0.5/0.75;     vec2 sd2 = dg2*0.5/0.75;
    vec2 ddx = vec2(x,0.0); vec2 ddy = vec2(0.0,y);

    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
    gl_TexCoord[0] = gl_MultiTexCoord0;
    gl_TexCoord[1].xy = gl_TexCoord[0].xy - sd1;
    gl_TexCoord[2].xy = gl_TexCoord[0].xy - sd2;
    gl_TexCoord[3].xy = gl_TexCoord[0].xy + sd1;
    gl_TexCoord[4].xy = gl_TexCoord[0].xy + sd2;
    gl_TexCoord[5].xy = gl_TexCoord[0].xy - dg1;
    gl_TexCoord[6].xy = gl_TexCoord[0].xy + dg1;
    gl_TexCoord[5].zw = gl_TexCoord[0].xy - dg2;
    gl_TexCoord[6].zw = gl_TexCoord[0].xy + dg2;
    gl_TexCoord[1].zw = gl_TexCoord[0].xy - ddy;
    gl_TexCoord[2].zw = gl_TexCoord[0].xy + ddx;
    gl_TexCoord[3].zw = gl_TexCoord[0].xy + ddy;
    gl_TexCoord[4].zw = gl_TexCoord[0].xy - ddx;
}


Edit: code cleanup, bug fix

[Dieser Beitrag wurde am 22.09.2014 - 18:20 von guest aktualisiert]




KrossX 
Real addict
.........

...

Status:Offline
Date registered: 16.06.2008
Post:122
Send Message
...   Created on 27.01.2011 - 22:14Jump to top Quote this post Report this post Edit Delete


Yay for shader packs!





Signature


Newtype 



...

Status:Offline
Date registered: 02.05.2012
Post:1
Send Message
...   Created on 02.05.2012 - 07:43Jump to top Quote this post Report this post Edit Delete


Where can I find the most recent shader pack?




More : [1] [2] [3] [4]

Similarly threads:
Topics Created by Replies Boardname
Shader Aquamarin 0 schaddi
New shader pack guest -1 pete_bernert
Natural Vision Shader + AA Shader v2.o = Best Shader for 2d !! zaykho 16 pete_bernert
shader guest 2 pete_bernert
xbr shader pmc2 26 pete_bernert
Neuer Thread ...





Masthead

This forum is a free service of razyboard.com
Do you want a free forum in less than two minutes? Then click here!



Verwandte Suchbegriffe:
guest shader | aa 2d3d glsl shader | aa 2d3d gsls | aa 2d3d glsl | psx shader glsl | psxe best 2d shaders | guests shader | guests shader pack
blank