Hard Light Productions Forums
General FreeSpace => FreeSpace & FreeSpace Open Support => Topic started by: jr2 on May 17, 2011, 07:43:48 pm
-
How hard would it be to hack the atioglxx.dll and patch through the working parts that don't cause a problem into the newest .dll for vista / 7? It's either that or no glsl for me. :(
EDIT: wokka!
What's this? Can this be used to fix my problem? I think it will also solve the problem for intelgrated users and those with even older cards (if they have a nice enough CPU anyways):
http://titaniumgl.tk/ ****EDIT******Talked to the dev of Titanium GL... He thinks it's FSO's fault and that my drivers are fine, said Open Source software all sucks, linux sucks, this sucks, that sucks, 3rd party applications (eg GPUZ) suck..!! OK, I did get that his wrapper only emulates GL 1.4 but yeah. wow :ick:
TitaniumGL is a FREEWARE driver architecture for graphics cards and GPU's, those are not supporting OpenGL.
TitaniumGL's goal is to support OpenGL on graphics cards with broken or bad OpenGL drivers.
TitaniumGL is available for Windows and Linux. Under Windows, TitaniumGL emulates the OpenGL functionality with
full hardware 3d acceleration, based on directx. Under Linux, TitaniumGL emulates the graphics card with CPU cores.
TitaniumGL for Windows is also ideal, if you are not able to install graphics drivers from your graphics card manufacturer, and you must use the the built-in windows drivers on your computer, that has 3d but, has no OpenGL acceleration.
TitaniumGL for Windows is compatible with Windows 98, Windows 98 SE, Windows ME, Windows 2000, Windows 2003, Windows XP, Windows Vista and Windows 7.
To use TitaniumGL for Windows, you may need the latest DirectX and DirectX compatible drivers to your graphics card, wich is mostly included and installed in your Windows. If not, download them, and install DirectX from Microsoft's webpage.
Please note #1: DO NOT COPY TITANIUMGL TO YOUR WINDOWS DIRECTORY (unless, you know what are you doing!)
To use, you should copy the dll to the directory of your game's executable file, then simply start the game. No installation needed!
Please note #2: To install TitaniumGL for Linux, you must overwrite libGL.so.1 in your system with TitaniumGL's graphics driver. You may backup the original file. This file is mostly located in usr/lib/X11/, but on some systems, its on different location. If glxinfo calims ,,TitaniumGL / SOFTWARE RENDERING'', the installation was succesfull.
(http://i54.tinypic.com/eit7ns.png)
Game developers should use the same dll like the gamers, becouse there is no special game developer version any more.
If you want to add TitaniumGL to your game software, you must do the folowing:
-Contact with me on the given msn or skype addresses.
-You pay what you want. I will send the details of my bank account.
...and there it is: you can redistribute your game with my dll.
-For debugging and learning purposes, it is also possible to view TitaniumGL's source code for an additional payment. VNC or other far-desktop connection needed.[/quote]
He has tech details here: http://legend.uw.hu/TitaniumGL/optimize.html | Contact details here: http://legend.uw.hu/TitaniumGL/gamercont.html
Screenies from tested OGL games here: http://legend.uw.hu/TitaniumGL/gamergall.html
Download link here: http://legend.uw.hu/TitaniumGL/gamerdown.html
EDIT2: Doing some reading, this looks interesting: (to do with trying to wrap atioglxx.dll and how opengl32.dll sends calls to atioglxx it looks like)
http://www.rage3d.com/board/showthread.php?t=33703863
EDIT3: On a lark, renamed my atioglxx.dll and extracted the wrapper opengl32.dll to atioglxx.dll... (probably a dumb move, but hey, I'm not getting anywhere so who knows...) FSO opened, however it had to quit with errors after displaying the splash screen. Log:
==========================================================================
DEBUG SPEW: No debug_filter.cfg found, so only general, error, and warning
categories can be shown and no debug_filter.cfg info will be saved.
==========================================================================
FreeSpace version: 3.6.13
Passed cmdline options:
-spec_exp 8.2
-spec_static 3.5
-spec_point 8.6
-spec_tube 1.0
-ambient_factor 70
-env
-mipmap
-missile_lighting
-glow
-nomotiondebris
-spec
-normal
-3dshockwave
-dualscanlines
-orbradar
-rearm_timer
-targetinfo
-3dwarp
-ship_choice_3d
-weapon_choice_3d
-warp_flash
-snd_preload
-mod fsport-mediavps,fsport,mediavps_3612
Building file index...
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport-mediavps\mv_fsport.vp' with a checksum of 0xb5009f03
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport-missions.vp' with a checksum of 0xfa6606cf
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport3_2-fix.vp' with a checksum of 0xb8bacea2
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport3_2.vp' with a checksum of 0xfd80cf91
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\odeon_fs1.vp' with a checksum of 0x6b0eb146
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\sparky_hi_fs1.vp' with a checksum of 0x39438fdb
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\stu_fs1.vp' with a checksum of 0x060994cb
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\tango_fs1.vp' with a checksum of 0xac31d566
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\tango_hi_fs1.vp' with a checksum of 0x44e81e9f
Found root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\warble_fs1.vp' with a checksum of 0x0b608285
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Advanced.vp' with a checksum of 0x4b8b0f5a
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_AnimGlows.vp' with a checksum of 0x6a554026
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Assets.3612.vp' with a checksum of 0x59649c21
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Assets.vp' with a checksum of 0x529cc70f
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Effects.3612.vp' with a checksum of 0x9c510aa0
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Effects.vp' with a checksum of 0xb9a9a485
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Music.vp' with a checksum of 0xb3e21469
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_RadarIcons.vp' with a checksum of 0x31dd7781
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Root.3612.vp' with a checksum of 0x7c9d7e74
Found root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Root.vp' with a checksum of 0x6ffd5c78
Found root pack 'F:\Program Files\GOG.com\Freespace 2\multi-mission-pack.vp' with a checksum of 0x377695e0
Found root pack 'F:\Program Files\GOG.com\Freespace 2\multi-voice-pack.vp' with a checksum of 0xd50e7442
Found root pack 'F:\Program Files\GOG.com\Freespace 2\Root_fs2.vp' with a checksum of 0xce10d76c
Found root pack 'F:\Program Files\GOG.com\Freespace 2\smarty_fs2.vp' with a checksum of 0xddeb3b1e
Found root pack 'F:\Program Files\GOG.com\Freespace 2\sparky_fs2.vp' with a checksum of 0x164fe65a
Found root pack 'F:\Program Files\GOG.com\Freespace 2\sparky_hi_fs2.vp' with a checksum of 0xa11d56f1
Found root pack 'F:\Program Files\GOG.com\Freespace 2\stu_fs2.vp' with a checksum of 0xd77da83a
Found root pack 'F:\Program Files\GOG.com\Freespace 2\tango1_fs2.vp' with a checksum of 0x4c25221e
Found root pack 'F:\Program Files\GOG.com\Freespace 2\tango2_fs2.vp' with a checksum of 0x86920b82
Found root pack 'F:\Program Files\GOG.com\Freespace 2\tango3_fs2.vp' with a checksum of 0x705e8d71
Found root pack 'F:\Program Files\GOG.com\Freespace 2\warble_fs2.vp' with a checksum of 0xd85c305d
Searching root 'F:\Program Files\GOG.com\Freespace 2\fsport-mediavps\' ... 5 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport-mediavps\mv_fsport.vp' ... 291 files
Searching root 'F:\Program Files\GOG.com\Freespace 2\fsport\' ... 0 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport-missions.vp' ... 160 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport3_2-fix.vp' ... 7 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\fsport3_2.vp' ... 794 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\odeon_fs1.vp' ... 10 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\sparky_hi_fs1.vp' ... 1229 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\stu_fs1.vp' ... 1539 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\tango_fs1.vp' ... 85 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\tango_hi_fs1.vp' ... 33 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\fsport\warble_fs1.vp' ... 111 files
Searching root 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\' ... 0 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Advanced.vp' ... 1283 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_AnimGlows.vp' ... 1641 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Assets.3612.vp' ... 315 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Assets.vp' ... 1527 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Effects.3612.vp' ... 10 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Effects.vp' ... 1876 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Music.vp' ... 32 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_RadarIcons.vp' ... 24 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Root.3612.vp' ... 13 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\mediavps_3612\MV_Root.vp' ... 94 files
Searching root 'F:\Program Files\GOG.com\Freespace 2\' ... 35 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\multi-mission-pack.vp' ... 110 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\multi-voice-pack.vp' ... 307 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\Root_fs2.vp' ... 157 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\smarty_fs2.vp' ... 10 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\sparky_fs2.vp' ... 3027 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\sparky_hi_fs2.vp' ... 1337 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\stu_fs2.vp' ... 2355 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\tango1_fs2.vp' ... 32 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\tango2_fs2.vp' ... 15 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\tango3_fs2.vp' ... 10 files
Searching root pack 'F:\Program Files\GOG.com\Freespace 2\warble_fs2.vp' ... 52 files
Found 35 roots and 18526 files.
AutoLang: Language auto-detection successful...
Setting language to English
TBM => Starting parse of 'mv_core-lcl.tbm' ...
Initializing OpenAL...
OpenAL Vendor : Creative Labs Inc.
OpenAL Renderer : Software
OpenAL Version : 1.1
Found extension "ALC_EXT_EFX".
Sample rate: 44100 (44100)
EFX version: 1.0
Max auxiliary sends: 1
Playback device: Generic Software on Speakers (SRS Audio Sandbox (WDM))
Capture device: Recording Mixer (kX 10k1 Audio
... OpenAL successfully initialized!
Failed to init speech
Initializing OpenGL graphics device at 1440x900 with 32-bit color...
Initializing WGL...
Requested WGL Video values = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
Actual WGL Video values = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
OpenGL Vendor : LegendgrafiX
OpenGL Renderer : Radeon X1650 Series /TitaniumGL/GAC/D3D ACCELERATION/ENHANCED/1 THREADs | http://LegendgrafiX.tk
OpenGL Version : 1.4 v2009-2010/09/01 (c)Kovacs Gergo
Unable to find extension "GL_EXT_fog_coord".
Using extension "GL_ARB_multitexture".
Using extension "GL_EXT_texture_env_add".
Unable to find extension "GL_ARB_texture_compression".
Unable to find extension "GL_EXT_texture_compression_s3tc".
Unable to find extension "GL_EXT_texture_filter_anisotropic".
Using extension "GL_ARB_texture_env_combine".
Using extension "GL_EXT_compiled_vertex_array".
Using extension "GL_EXT_draw_range_elements".
Unable to find extension "GL_ARB_texture_mirrored_repeat".
Using extension "GL_ARB_texture_non_power_of_two".
Using extension "GL_ARB_vertex_buffer_object".
Unable to find extension "GL_EXT_pixel_buffer_object".
Using extension "GL_SGIS_generate_mipmap".
Unable to find extension "GL_EXT_framebuffer_object".
Unable to find extension "GL_NV_texture_rectangle".
Using extension "GL_EXT_bgra".
Using extension "GL_ARB_texture_cube_map".
Unable to find extension "GL_EXT_texture_lod_bias".
Unable to find extension "NV_point_sprite".
Unable to find extension "GL_ARB_shading_language_100".
Unable to find extension "GL_ARB_shader_objects".
Unable to find extension "GL_ARB_vertex_shader".
Unable to find extension "GL_ARB_fragment_shader".
Unable to find extension "GL_ATI_shader_texture_lod".
Found special extension function "wglSwapIntervalEXT".
Max texture units: 3 (2)
Max elements vertices: 2000000
Max elements indices: 200000
Max texture size: 10000x10000
Can use compressed textures: NO
Texture compression available: NO
Post-processing enabled: NO
Using trilinear texture filter.
... OpenGL init is complete!
Size of bitmap info = 760 KB
Size of bitmap extra info = 52 bytes
ANI cursorweb with size 24x24 (25.0% wasted)
GRAPHICS: Initializing default colors...
SCRIPTING: Beginning initialization sequence...
SCRIPTING: Beginning Lua initialization...
LUA: Opening LUA state...
LUA: Initializing base Lua libraries...
LUA: Beginning ADE initialization
ADE: Initializing enumeration constants...
ADE: Assigning Lua session...
SCRIPTING: Beginning main hook parse sequence....
Wokka! Error opening file (scripting.tbl)!
TABLES: Unable to parse 'scripting.tbl'! Error code = 5.
TBM => Starting parse of 'mv_flak-sct.tbm' ...
TBM => Starting parse of 'mv_dbrs-sct.tbm' ...
TBM => Starting parse of 'mv_exp-sct.tbm' ...
SCRIPTING: Inititialization complete.
SCRIPTING: Splash screen overrides checked
SCRIPTING: Splash hook has been run
SCRIPTING: Splash screen conditional hook has been run
Using high memory settings...
Wokka! Error opening file (interface.tbl)!
WMCGUI: Unable to parse 'interface.tbl'! Error code = 5.
TBM => Starting parse of 'mv_effects-sdf.tbm' ...
Windows reported 16 joysticks, we found 0
Current soundtrack set to -1 in event_music_reset_choices
TBM => Starting parse of 'mv_music-mus.tbm' ...
TBM => Starting parse of 'mv_effects-mfl.tbm' ...
TBM => Starting parse of 'fs1_effects-mfl.tbm' ...
Wokka! Error opening file (armor.tbl)!
TABLES: Unable to parse 'armor.tbl'! Error code = 5.
TBM => Starting parse of 'mv_effects-amr.tbm' ...
TBM => Starting parse of 'mv_effects-wxp.tbm' ...
TBM => Starting parse of 'fs1_effects-wxp.tbm' ...
BMPMAN: Found EFF (exp20.eff) with 75 frames at 20 fps.
DDS ERROR: Couldn't open 'exp20_0000' -- DDS is compressed but compression support is not enabled
WARNING: "EFF: No frame images were found. EFF, exp20.eff, is invalid." at bmpman.cpp:934
WARNING: "Weapon explosion 'exp20' does not have an LOD0 anim!" at weapons.cpp:180
BMPMAN: Found EFF (ExpMissileHit1.eff) with 92 frames at 20 fps.
DDS ERROR: Couldn't open 'ExpMissileHit1_0000' -- DDS is compressed but compression support is not enabled
WARNING: "EFF: No frame images were found. EFF, ExpMissileHit1.eff, is invalid." at bmpman.cpp:934
WARNING: "Weapon explosion 'ExpMissileHit1' does not have an LOD0 anim!" at weapons.cpp:180
Freeing all existing models...
EDIT: OK, after thinking about this, I think I bet I know what the problem is... the wrapper only supports OGL 1.1 DirectX acceleration, not OGL3...
Also, I think the problem with trying the OGL from the newer working ATI drivers is that it 'supports' functions that the old card does not, causing a crash.
SO, my next question: can the newer functions be stripped from the newest atioglxx.dll, making a workable atioglxx.dll for older ATI cards?
-
Unable to find extension "GL_ARB_texture_compression".
Unable to find extension "GL_EXT_texture_compression_s3tc".
This is supremely bad. These extensions are necessary for a majority of the textures used in FSO to work.
Unable to find extension "GL_EXT_pixel_buffer_object".
Unable to find extension "GL_EXT_framebuffer_object".
Without these, no post-processing for you.
Unable to find extension "GL_ARB_shading_language_100".
Unable to find extension "GL_ARB_shader_objects".
Unable to find extension "GL_ARB_vertex_shader".
Unable to find extension "GL_ARB_fragment_shader".
And no shader support, either.
SO, my next question: can the newer functions be stripped from the newest atioglxx.dll, making a workable atioglxx.dll for older ATI cards?
Given that we do not have the source code for the Catalyst drivers, no, we can't.
And no, this TitaniumGL business sounds like a supremely bad idea. I am very sorry, but a generic OGL-to-D3D wrapper doesn't sound like such a good idea, and if that debug log up there is any indication, it doesn't even support the full OpenGL 2 featureset.
Also, -Do not use stencil/alpha/lookop buffers.
What. I mean, we're not using any of those right now, but still. What.
-TitaniumGL does not rely in the DirectX stack. Unlikely with other OpenGL
to Direct3D wrapper, now DirectX is only used to render the geometry with
hardware acceleration, its not used to implement the whole OpenGL API.
Becouse of this, TitaniumGL will avoid the graphics cards hardware design
flaws and driver problems, but still stays fast becouse the 3D is accelerated.
This is, why the same features available on all graphic cards with TitaniumGL.
This, to me, indicates that he doesn'T actually get what 3D acceleration is all about. No, I want ALL parts of the pipeline to be accelerated, thanks muchly. Also, given that the OpenGL support for anything approaching modern standards is quite good actually, this seems to be a solution to an imagined problem.
-
Thanks!
This, to me, indicates that he doesn'T actually get what 3D acceleration is all about. No, I want ALL parts of the pipeline to be accelerated, thanks muchly. Also, given that the OpenGL support for anything approaching modern standards is quite good actually, this seems to be a solution to an imagined problem.
Well, I was kind of hoping those with ancient hardware and a halfway decent CPU could run the extra pretties with reduced settings this way (instead of having to use pretty much vanilla+ for FSO). Oh well. Thanks again for taking a look-see. :)
EDIT: Although I wish we could build an OGL-OGL wrapper or strip the new OGL from ATI... Too bad they don't release their code. Which is why the Linux people seem to hate them. :P
-
oooor... you know, buy a newer card. you'd be saving everyone involved tons of money and time.
-
Any cards available for ~$40 that can outperform the X1650 and are available in AGP interface?
-
Based on my (admittedly cursory) search, you should be able to get a Radeon 3k series card for that money.
-
Got a used Radeon HD AH3450 (http://reviews.cnet.com/graphics-cards/asus-ah3450-di-512md2/4507-8902_7-33660404.html) for $39.99 free shipping. Darn ATI's sucky drivers... :nono: