… | |
… | |
18 | $VERSION = '0.1'; |
18 | $VERSION = '0.1'; |
19 | |
19 | |
20 | use XSLoader; |
20 | use XSLoader; |
21 | XSLoader::load "CFClient", $VERSION; |
21 | XSLoader::load "CFClient", $VERSION; |
22 | } |
22 | } |
|
|
23 | |
|
|
24 | use SDL::OpenGL; |
23 | |
25 | |
24 | our %GL_EXT; |
26 | our %GL_EXT; |
25 | our $GL_VERSION; |
27 | our $GL_VERSION; |
26 | |
28 | |
27 | our $GL_NPOT; |
29 | our $GL_NPOT; |
… | |
… | |
29 | sub gl_init { |
31 | sub gl_init { |
30 | $GL_VERSION = gl_version * 1; |
32 | $GL_VERSION = gl_version * 1; |
31 | %GL_EXT = map +($_ => 1), split /\s+/, gl_extensions; |
33 | %GL_EXT = map +($_ => 1), split /\s+/, gl_extensions; |
32 | |
34 | |
33 | $GL_NPOT = $GL_EXT{GL_ARB_texture_non_power_of_two} || $GL_VERSION >= 2; |
35 | $GL_NPOT = $GL_EXT{GL_ARB_texture_non_power_of_two} || $GL_VERSION >= 2; |
|
|
36 | |
|
|
37 | glClearColor 0.45, 0.45, 0.45, 1; |
|
|
38 | |
|
|
39 | glEnable GL_TEXTURE_2D; |
|
|
40 | glEnable GL_COLOR_MATERIAL; |
|
|
41 | glShadeModel GL_FLAT; |
|
|
42 | glDisable GL_DEPTH_TEST; |
|
|
43 | glBlendFunc GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA; |
|
|
44 | |
|
|
45 | glHint GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST; |
34 | |
46 | |
35 | CFClient::Texture::restore_state (); |
47 | CFClient::Texture::restore_state (); |
36 | } |
48 | } |
37 | |
49 | |
38 | sub find_rcfile($) { |
50 | sub find_rcfile($) { |
… | |
… | |
216 | |
228 | |
217 | $self->{name} ||= (glGenTextures 1)->[0]; |
229 | $self->{name} ||= (glGenTextures 1)->[0]; |
218 | |
230 | |
219 | glBindTexture GL_TEXTURE_2D, $self->{name}; |
231 | glBindTexture GL_TEXTURE_2D, $self->{name}; |
220 | |
232 | |
221 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR; |
233 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, $::FAST ? GL_NEAREST : GL_LINEAR; |
222 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR;#_MIPMAP_LINEAR; |
234 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, $::FAST ? GL_NEAREST : GL_LINEAR; |
223 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP; |
235 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP; |
224 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP; |
236 | glTexParameter GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP; |
225 | |
237 | |
226 | if (defined $data) { |
238 | if (defined $data) { |
227 | glTexImage2D GL_TEXTURE_2D, 0, |
239 | glTexImage2D GL_TEXTURE_2D, 0, |