Jump to content
  • Advertisement
Sign in to follow this  
Funkymunky

OpenGL programming for ATI 9250

This topic is 3748 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a Diamond Stealth Radeon 9250 (this thing). I want to program some vertex/pixel shaders for it with pure OpenGL (no extension wrapper like GLEW). I got an error when I queried it for the "GL_ARB_shading_language_100." In fact, when I try to do "glCreateProgramObjectARB = (PFNGLCREATEPROGRAMOBJECTARBPROC)wglGetProcAddress("glCreateProgramObjectARB");" it returns NULL! Here are the extensions queried from the card:
GL_ARB_multitexture
GL_EXT_texture_env_add
GL_EXT_compiled_vertex_array
GL_S3_s3tc
GL_ARB_occlusion_query
GL_ARB_point_parameters
GL_ARB_texture_border_clamp
GL_ARB_texture_compression
GL_ARB_texture_cube_map
GL_ARB_texture_env_add
GL_ARB_texture_env_combine
GL_ARB_texture_env_crossbar
GL_ARB_texture_env_dot3
GL_ARB_texture_mirrored_repeat
GL_ARB_transpose_matrix
GL_ARB_vertex_blend
GL_ARB_vertex_buffer_object
GL_ARB_vertex_program
GL_ARB_window_pos
GL_ATI_element_array
GL_ATI_envmap_bumpmap
GL_ATI_fragment_shader
GL_ATI_map_object_buffer
GL_ATI_texture_env_combine3
GL_ATI_texture_mirror_once
GL_ATI_vertex_array_object
GL_ATI_vertex_attrib_array_object
GL_ATI_vertex_streams
GL_ATIX_texture_env_combine3
GL_ATIX_texture_env_route
GL_ATIX_vertex_shader_output_point_size
GL_EXT_abgr
GL_EXT_bgra
GL_EXT_blend_color
GL_EXT_blend_func_separate
GL_EXT_blend_minmax
GL_EXT_blend_subtract
GL_EXT_clip_volume_hint
GL_EXT_draw_range_elements
GL_EXT_fog_coord
GL_EXT_multi_draw_arrays
GL_EXT_packed_pixels
GL_EXT_point_parameters
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_specular_color
GL_EXT_stencil_wrap
GL_EXT_texgen_reflection
GL_EXT_texture3D
GL_EXT_texture_compression_s3tc
GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod_bias
GL_EXT_texture_mirror_clamp
GL_EXT_texture_object
GL_EXT_texture_rectangle
GL_EXT_vertex_array
GL_EXT_vertex_shader
GL_HP_occlusion_test
GL_NV_blend_square
GL_NV_occlusion_query
GL_NV_texgen_reflection
GL_SGI_color_matrix
GL_SGIS_generate_mipmap
GL_SGIS_multitexture
GL_SGIS_texture_border_clamp
GL_SGIS_texture_edge_clamp
GL_SGIS_texture_lod
GL_SUN_multi_draw_arrays
GL_WIN_swap_hint
WGL_EXT_extensions_string
WGL_EXT_swap_control


It has that SMARTSHADER "technology," does that mean that I can't do conventional pixel/vertex shaders through OpenGL?

Share this post


Link to post
Share on other sites
Advertisement
Quote:
Original post by Funkymunky
It has that SMARTSHADER "technology," does that mean that I can't do conventional pixel/vertex shaders through OpenGL?
No. SMARTSHADER is just marketing bullshit. You can use old school OGL assembly vertex/fragment programs on that card, and that's it.

Share this post


Link to post
Share on other sites
cool card. I have fond memories of programming this thing. You might find the vertex and pixel shader tutorials here on the website helpful that I wrote in 2001 / 2002. At the time I did it with the DirectX asm shader support but I guess the instructions for the OpenGL asm shaders are not that much different.
To get you started you might check out ATI's website for a simple starting ground :-)

Share this post


Link to post
Share on other sites
hmmm, so why isnt "GL_ARB_shading_language_100" in the list of extensions? Maybe just my drivers are way out of date...?

Share this post


Link to post
Share on other sites
alright, i'm baffled. I got the dot net 2.0 redistributables and the latest catalyst drivers. I'm still having the same problem. In fact, I switched to GLEW to see if it would be less of a headache, and now it simply crashes on glCreateShader(GL_VERTEX_SHADER). I did call glewInit and check that it was GLEW_OK. The glewinfo.exe program says that GL_VERSION_1_1 is OK, GL_VERSION_1_2 is OK, GL_VERSION_1_3 is OK, GL_VERSION_1_4 is MISSING, GL_VERSION_1_5 is MISSING... and GL_VERSION_2_0 is OK! (with glCreateShader as OK).

so what gives?

Share this post


Link to post
Share on other sites
hmm, I didnt think that card could do SM2. Are these extensions supported:
GL_ARB_shader_objects
GL_ARB_vertex_program
GL_ARB_fragment_program

Share this post


Link to post
Share on other sites
Yeah 9250 was an R200-based part, so no shader model 2.0 capabilities. Which means no high-level shader programming, just assembly.

Share this post


Link to post
Share on other sites
in DirectX tongue it was a ps_1_4 shader card. The interesting part was that you had two phases. So you could fetch up to 28 arithmetic instructions and I believe 6 or eight texture instructions (I think I forgot that ... would need to check my own articles :-))

Share this post


Link to post
Share on other sites
It's probably time for you to get a new video card anyway, that thing is seriously old and very underpowered. [smile]

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!