Direct3D vs OpenGL

Discussions about UT99
RocketJedi
Inhuman
Posts: 850
Joined: Wed Mar 12, 2008 7:14 pm
Personal rank: I.T Master
Location: New York
Contact:

Re: Direct3D vs OpenGL

Post by RocketJedi »

CaesarMagnus wrote:I tend to prefer openGL, but maybe that is just me.

agreed nvidia cards with open g/l= best performance. If you add the proper settings.
https://www.vulpinemission.com
Image ROCKET-X8 Server
Image MONSTERHUNT w/ NALI WEAPONS 3 + RX8
Image BUNNYTRACK NY
Image SNIPER DEATHMATCH
Image InstaGib + ComboGib + Jailbreak
Image ROSEBUM ROCKET-X RB
User avatar
-Feint-
Skilled
Posts: 175
Joined: Sat Mar 08, 2008 1:39 pm
Personal rank: Amateur Mapper
Location: UK - Leeds

Re: Direct3D vs OpenGL

Post by -Feint- »

Testaccount wrote:Don't forget your monitor :D Your monitor can affect which mode you use.
My monitor really dislikes D3D - The usual too dark business, and while it can be easily fixed with a patch I've become accustomed to OpenGl. :tu:
DanomanUK@i4games-Forum wrote:Nah, people bitch one way or another.
You cant win as a mapper ;)
User avatar
Raynor
Adept
Posts: 426
Joined: Sun Jan 27, 2008 5:09 pm

Re: Direct3D vs OpenGL

Post by Raynor »

I find latest Direct3D9 1.0 and OpenGL 3.4 equal. They both scale and have load of options to play with plus there's many other factors like your video card and monitor that may affect visual quality. You really have to try both of them and then decide what is more suitable for you.
RocketJedi
Inhuman
Posts: 850
Joined: Wed Mar 12, 2008 7:14 pm
Personal rank: I.T Master
Location: New York
Contact:

Re: Direct3D vs OpenGL

Post by RocketJedi »

yeah because your monitors refresh rate plays a role on actual frame rates
https://www.vulpinemission.com
Image ROCKET-X8 Server
Image MONSTERHUNT w/ NALI WEAPONS 3 + RX8
Image BUNNYTRACK NY
Image SNIPER DEATHMATCH
Image InstaGib + ComboGib + Jailbreak
Image ROSEBUM ROCKET-X RB
User avatar
Rosco[CoF]
Average
Posts: 64
Joined: Sun Mar 16, 2008 3:25 pm
Personal rank: Badges?
Location: Northern Michigan

Re: Direct3D vs OpenGL

Post by Rosco[CoF] »

I've always used OpenGL since I stopped using Glide back in the day. Glide was based on OpenGL, which is why OpenGL, to me at least, better represents what UT99 should look like.

http://en.wikipedia.org/wiki/Glide_API

But as many have already said, it's more a personal preference, and what type of GPU you use. ATI give a much better D3D, whereas nVidia excels in OpenGL. The only problem I have run into using OpenGL is the moving statues in online play, where the actors have no movement and do not fall once killed. Which can be fixed using the S3TC texture fix.

http://forums.beyondunreal.com/showthread.php?t=169643
Consoles are schwag.
Image
User avatar
UnLtd
Forum Support
Posts: 41
Joined: Mon Feb 25, 2008 5:54 pm
Personal rank: The {WINGS} Elite
Location: There
Contact:

Re: Direct3D vs OpenGL

Post by UnLtd »

Qwerty wrote:
CaesarMagnus wrote:I tend to prefer openGL, but maybe that is just me.

agreed nvidia cards with open g/l= best performance. If you add the proper settings.
I got a nvidia 7300gs, should i use OpenGL now, and wich proper settings ?
RocketJedi
Inhuman
Posts: 850
Joined: Wed Mar 12, 2008 7:14 pm
Personal rank: I.T Master
Location: New York
Contact:

Re: Direct3D vs OpenGL

Post by RocketJedi »

UnLtd wrote:
Qwerty wrote:
CaesarMagnus wrote:I tend to prefer openGL, but maybe that is just me.

agreed nvidia cards with open g/l= best performance. If you add the proper settings.
I got a nvidia 7300gs, should i use OpenGL now, and wich proper settings ?
makes ure your utgl looks like this in the ut ini


[OpenGLDrv.OpenGLRenderDevice]
SinglePassFog=True
ZRangeHack=False
DetailMax=2
BufferTileQuads=True
UseAGPTextures=False
RefreshRate=75 //set this to your monitors refreshrate, mine is 100
DetailTextures=True
UseTrilinear=True
UseS3TC=False
UseTNT=False
LODBias=0 //set this to sharpen or decrease sharpness of textures -6 to 6
UseMultiTexture=True
UsePalette=True
UseAlphaPalette=True
Translucency=1
VolumetricLighting=True
ShinySurfaces=False
Coronas=True
HighDetailActors=True
MaxAnisotropy=1
AlwaysMipmap=False
UsePrecache=True
SupportsLazyTextures=0
UseBGRATextures=True
UseAA=False
UseSSE=True
UseTexIdPool=True
DynamicTexIdRecycleLevel=100
UseTexPool=True
TexDXT1ToDXT3=False
SinglePassDetail=True
UseDetailAlpha=True
ColorizeDetailTextures=False
UseCVA=False
UseVertexProgram=False
SwapInterval=0
TruFormMinVertices=0
TruFormTessellation=3
UseTruForm=False
AAFilterHint=2
NumAASamples=0
RequestHighResolutionZ=False
MaskedTextureHack=False
FrameRateLimit=75
UseMultiDrawArrays=True
CacheStaticMaps=False
BufferClippedActorTris=True
DetailClipping=True
MaxTMUnits=0
NoFiltering=False
Use16BitTextures=False
AutoGenerateMipmaps=False
ShareLists=False
UseZTrick=False
MaxLogTextureSize=8
MinLogTextureSize=0
MaxLogVOverU=8
MaxLogUOverV=8
OneXBlending=True
GammaCorrectScreenshots=True
GammaOffsetBlue=0.000000
GammaOffsetGreen=0.000000
GammaOffsetRed=0.000000
GammaOffset=0.000000
DescFlags=0
Description=
NoMaskedS3TC=False
TexDXT1ToDXT3=False


use this as a guide to adjust settings.

UseTrilinear - [True/False]
Controls the use of trilinear texture filtering.

AlwaysMipmap - [True/False]
Can make the renderer always generates mipmaps for textures that are not supplied with them. But, it's always set to 0 by the initialization code (has been this was for a long time), so changing the value of this setting should make no difference.

AutoGenerateMipmaps - [True/False]
Enables the use of the GL_SGIS_generate_mipmap extension for automatic mipmap generation. It is recommended that this setting be disabled as there are far too many video drivers that have unstable, slow, and/or broken support for this extension.

NoFiltering - [True/False]
Can disable filtering on all textures. Useful as a debug option.

MaxAnisotropy - [Integer]
Controls the use and level of anisotropic texture filtering. Disabled if set to 0. Should make no difference if set to 1 (isotropic texture filtering). If set to greater than 1, specifies the maximum degree of anisotropy to use for texture filtering.

UseS3TC - [True/False]
Enables the use of high resolution S3TC compressed textures if they are installed.

NoMaskedS3TC - [True/False]
This is a debug option designed to emulate the behavior of older renderers. If set to True, it will prevent masking from working on masked S3TC textures.

Use16BitTextures - [True/False]
Selects lower quality and more compact formats for a number of textures, which will often speed things up. In many cases, there is only minor quality loss. In other cases, like with various skyboxes and coronas, there is often major quality loss.

UseBGRATextures - [True/False]
Allows textures to be uploaded in BGRA format rather than RGBA format if the GL_EXT_bgra extension is supported. This can improve texture upload performance. This option should always be enabled unless it causes problems.

LODBias - [Floating point]
Allows mipmap selection bias to be adjusted. Use negative values to pseudo sharpen textures. Use positive values to blur textures and potentially improve performance at the expense of blurry textures.

UseTNT - [True/False]
A workaround for buggy TNT/TNT2 drivers. Alters texture scaling and mipmap generation behavior. If you really want to know all the details, check the source code.

TexDXT1ToDXT3 - [True/False]
A workaround for poor image quality on NVIDIA GeForce1 - GeForce4 series hardware when using DXT1 format S3TC compressed textures. If enabled, converts all DXT1 textures to DXT3 textures on upload. This improves image quality on the previously mentioned NVIDIA hardware at the expense of twice as much texture memory usage for these textures. The NVIDIA DXT1 image quality problems or most noticeable on certain skybox textures. Keep this in mind when deciding whether or not to trade image quality for speed here. This option should not be enabled on any hardware that draws DXT1 textures with the same quality as DXT3 textures of course.

UseMultiTexture - [True/False]
Controls the use of multitexturing. Should always be enabled as the renderer has a few glitches when it is not. I might try to track these down some day. Due to the way some parts of the renderer are still written, it is likely to fail on any system without support for the GL_ARB_multitexture extension anyway.

UsePrecache - [True/False]
Controls texture precaching. Texture precaching may improve performance by initializing internal data structures for a number of world textures and most likely getting them loaded into video memory at level load time. It will also slow level loading down some.

MaxTMUnits - [Integer]
Used to limit the number of texture units used by the renderer. Useful as a debug option. Disabled if set to 0.

UsePalette - [True/False]
Controls the use of paletted textures. If there is hardware support for paletted textures, using them can significantly improve performance.

UseAlphaPalette - [True/False]
A workaround for very old buggy GeForce drivers. If set to False, will not upload masked textures as paletted. If there is hardware support for paletted textures, this option should be set to True unless it causes any problems.

MaskedTextureHack - [True/False]
Enabling this option can prevent rendering problems with masked textures when the same texture is applied to different polygons that do not have the masked attribute set consistently across all of them. Likely examples of masked texture problems are rendering errors with solid colored boxes around railings and trees that can often times be fixed with the flush command. There is some risk to using this option, which is why it's called a hack option. It's likely to be very safe, but not completely safe. Implementing it the completely safe way is a lot of extra work, so it uses the simple solution. If it does happen to fail, there will be some completely incorrect textures on some objects.

GammaOffset - [Floating point]
Offset for gamma correction. Can be used to adjust gamma correction even more if you hit the end of the Brightness slider in Video options. The default value of 0.0 causes no change. Use negative values for darker or positive values for brighter. If adjusting this setting for the first time, I'd recommend starting with small values such as -0.3 or 0.3.

GammaCorrectScreenshots - [True/False]
If enabled, will apply gamma correction to screen shots.

GammaOffsetRed - [Floating point]
GammaOffsetGreen - [Floating point]
GammaOffsetBlue - [Floating point]
Fine tuning parameters for gamma correction. These allow different offsets to be specified for each color channel. These offsets are never applied when gamma correcting screen shots, even if GammaCorrectScreenshots is enabled.

OneXBlending - [True/False]
If enabled, matches what the D3D renderer does for blending in multitexture mode when applying lightmaps to world geometry. I can't say for sure which way is correct. In single texture mode, the D3D renderer does appear to do blending like the OpenGL renderer in single texture mode or multitexture mode without OneXBlending enabled.

RequestHighResolutionZ - [True/False]
Allows a high resolution Z buffer to be requested when running in a 16-bit color mode. It's a good idea to enable this option if running in 16-bit color because rendering problems can occur if a 16-bit Z buffer is used. Note that not all video cards support Z and color buffers of dissimilar bit depths.

RefreshRate - [Integer]
Can be used to request a specific refresh rate when running full screen. If set to 0, a default refresh rate is used. If this value is set to an invalid or unsupported refresh rate based on video card or monitor capabilities, the renderer will fail to initialize.

SwapInterval - [Integer]
Controls V Sync. If set to the default value of -1, the default buffer swapping method is used. Set to 0 to disable V Sync. Set to 1 to enable V Sync. Set to higher values for one frame every N screen refreshes. Not all video drivers support values higher than 1.

FrameRateLimit - [Integer]
CPU controlled frame rate limiter in frames per second. Set to 0 to disable.

UseAA - [True/False]
Enables multisample antialiasing. Requires the GL_ARB_multisample extension.

NumAASamples - [Integer]
Specifies the number of samples to use per fragment for antialiasing. 2 and 4 are common values that should work on many video cards.

AAFilterHint - [Integer]
Can be used to enable Quincunx AA on NVIDIA video cards that support it. Set to 2 to enable this mode.

UseZTrick - [True/False]
Can avoid some z-buffer clears at the expense of cutting z-buffer precision in half. This may improve performance on some video cards. On video cards with z-buffer optimization hardware, enabling this setting may significantly reduce performance as it interferes with some hardware z-buffer optimization implementations.

ZRangeHack - [True/False]
An experimental option that can make the z-buffer work better for far away objects. Might cause unexpected problems, but doesn't seem to break anything major so far. Will fix problems with decals flickering in the distance with 24-bit z-buffers, which is the most you can get on many video cards. Will also fix the issue with the Redeemer covering up part of the HUD. Partially breaks weapon rendering on the first person view one if using wireframe debug mode (will clip near parts of it). Doesn't help enough to make 16-bit z-buffers work correctly.

MaxLogUOverV - [Integer]
Set to 8.

MaxLogVOverU - [Integer]
Set to 8.

MinLogTextureSize - [Integer]
Set to 0.

MaxLogTextureSize - [Integer]
Set to 8, or 0.

UseCVA - [True/False]
Enables the use of the compiled vertex array (CVA) extension. It may be useful on video cards without HW T&L. It is likely to slow things down a little bit on video cards with HW T&L.

UseMultidrawArrays - [True/False]
Enables the use of the GL_EXT_multi_draw_arrays extension.

BufferClippedActorTris - [True/False]
Alters how certain actor polygons are handled, some of which happen to be clipped by higher level code. It's a tradeoff and it is unlikely to make much of a difference either way.

BufferTileQuads - [True/False]
Enables buffering in the DrawTile path. May improve text rendering performance.

UseSSE - [True/False]
Controls the use of SSE instructions. Set to True to auto detect CPU and OS support for SSE instructions and use them if supported. Set to False to disable the use of SSE instructions.

UseVertexProgram - [True/False]
Enables vertex program mode. Consider this an experimental option. It can improve performance in some cases. It can also slow things down a lot if certain other settings are not configured correctly. It is likely to slow things down a lot if detail textures are enabled, but single pass detail texture mode is not enabled. It may not work correctly or may cause crashes with some video drivers.

UseTexIdPool - [True/False]
Should be set to True.

UseTexPool - [True/False]
Should be set to True.

DynamicTexIdRecycleLevel - [Integer]
Should be set to the default value of 100.

DetailTextures - [True/False]
Enables detail textures.

UseDetailAlpha - [True/False]
Must be enabled for proper detail texture support.

DetailClipping - [True/False]
Enables the use of a somewhat experimental detail texture mode. It costs more CPU time, but may improve performance in fill rate limited situations.

DetailMax - [Integer]
Set to 2 to enable a second detail texture layer. Set to 0 or 1 for standard one layer detail texturing if detail textures are enabled. The second detail texture layer will not show up unless SinglePassDetail is disabled.

SinglePassDetail - [True/False]
Enables single pass detail texture mode. This should generally be the highest performance detail texture mode. It requires 4 texture units. It also requires the UseDetailAlpha option to be enabled.

SinglePassFog - [True/False]
Enables single pass fog mode. This should generally be the highest performance fog mode. It requires 3 texture units. It also requires support for either the GL_ATI_texture_env_combine3 extension or the GL_NV_texture_env_combine4 extension.

ColorizeDetailTextures - [True/False]
Debug option for detail textures. If enabled, adds a green tint to detail textures.
https://www.vulpinemission.com
Image ROCKET-X8 Server
Image MONSTERHUNT w/ NALI WEAPONS 3 + RX8
Image BUNNYTRACK NY
Image SNIPER DEATHMATCH
Image InstaGib + ComboGib + Jailbreak
Image ROSEBUM ROCKET-X RB
User avatar
CaesarMagnus
Novice
Posts: 7
Joined: Fri Mar 14, 2008 4:25 pm

Re: Direct3D vs OpenGL

Post by CaesarMagnus »

Not sure if this is linked to elsewhere, but here is one of the best OpenGL renderers specifically for UT99

http://cwdohnal.home.mindspring.com/utglr/
Made a signature
so that people will read the
last line of my post.

(BTW, that was a haiku)
User avatar
Rosco[CoF]
Average
Posts: 64
Joined: Sun Mar 16, 2008 3:25 pm
Personal rank: Badges?
Location: Northern Michigan

Re: Direct3D vs OpenGL

Post by Rosco[CoF] »

CaesarMagnus wrote:Not sure if this is linked to elsewhere, but here is one of the best OpenGL renderers specifically for UT99

http://cwdohnal.home.mindspring.com/utglr/
The best, and the only actually as far as I know. But here is something interesting. I just tried out his latest D3D8 renderer compared the his OpenGL on DM-Falkenstein, and the D3D8 kicked the OpenGL all over the place. Falkenstein is a great test map, it is huge with a lot of texture all over the place. It can also kill a lesser video card. With OpenGL I was getting dips under 30fps, but with the D3D8 it never dropped below 50fps, with almost identical visual quality. I have no idea how he did it, but I'm finding myself very impressed with D3D in UT for the first time.

My results are with a nVidia 7800GS AGP using XG167.26 driver from TweakForce, AMD 3800x2 and 2GB of PC3200.
Consoles are schwag.
Image
User avatar
Shade
Site Admin
Posts: 1481
Joined: Sun Jan 27, 2008 12:03 pm
Personal rank: Founder of UT99.org
Location: Germany
Contact:

Re: Direct3D vs OpenGL

Post by Shade »

@Rosco[CoF]: D3D9 is the latest ;)
User avatar
Shadow
Masterful
Posts: 743
Joined: Tue Jan 29, 2008 12:00 am
Personal rank: Mad Carpenter
Location: Germany
Contact:

Re: Direct3D vs OpenGL

Post by Shadow »

The Render Driver you chose depends ALWAYS on the hardware you have. With the first time config and change-renderdriver config you'll get to the already familiar initial setup before UT starts. Mostly for standard reasons D3D is a recommended driver, some user may experience performance flaws, strange visual results etc. thus they may choose something else than D3D like OpenGL, Glide (if supported), Software (mostly used if an older Onboard Chip sucks.. well they did all suck didn't they..) and so on. Where OpenGL might just run fine on a machine with some nVidia-Card on a different machine with a different (maybe nVidia too) Card it might have it's issues...
For me (nVidia 7050 Onboard.. I don't really care) Software, D3D 6-9 and OpenGL 1-2.1 all work just fine. OpenGL seems to run faster on my PC, the window builds up faster when starting and I have more FPS.
Image
User avatar
Rosco[CoF]
Average
Posts: 64
Joined: Sun Mar 16, 2008 3:25 pm
Personal rank: Badges?
Location: Northern Michigan

Re: Direct3D vs OpenGL

Post by Rosco[CoF] »

Shade wrote:@Rosco[CoF]: D3D9 is the latest ;)
You know, I tried that out last night and it has potential. After my trial, I shut down UT and opened up the UT.ini file to make some adjustments. But, for some reason unknown, the D3D9 render did not register in the ini like D3D8 and OpenGL. With the D3D9, do you need to manually enter the settings into the unrealtournament.ini file?
Consoles are schwag.
Image
User avatar
Shade
Site Admin
Posts: 1481
Joined: Sun Jan 27, 2008 12:03 pm
Personal rank: Founder of UT99.org
Location: Germany
Contact:

Re: Direct3D vs OpenGL

Post by Shade »

Thats in my unlreatournament.ini:
GameRenderDevice=D3DDrv.D3DRenderDevice

But i changed back to my older D3D. UTDC kicked me all the time because of the D3D9. :confused2:
User avatar
Rosco[CoF]
Average
Posts: 64
Joined: Sun Mar 16, 2008 3:25 pm
Personal rank: Badges?
Location: Northern Michigan

Re: Direct3D vs OpenGL

Post by Rosco[CoF] »

Shade wrote: But i changed back to my older D3D. UTDC kicked me all the time because of the D3D9. :confused2:
Do you get kicked as well using the D3D8, or are you using the stock D3D that comes with the game?
Consoles are schwag.
Image
User avatar
Shade
Site Admin
Posts: 1481
Joined: Sun Jan 27, 2008 12:03 pm
Personal rank: Founder of UT99.org
Location: Germany
Contact:

Re: Direct3D vs OpenGL

Post by Shade »

I get kicked with D3D9, so i set it back to the standard D3D from UT.
Post Reply