CnCNet / ts-ddraw

Rewrite of cnc-ddraw with Tiberian Sun as the target
401 stars 44 forks source link

No in-game rendering (ie. can't play missions) in Yuri's Revenge. #9

Closed maximilien-noal closed 5 years ago

maximilien-noal commented 5 years ago

First of all, thank you very much for TS-DDRAW, it is very interesting and no other DDRAW wrapper fixes those games so well. šŸ‘

Alas, I seem to have a problem : Tested with :

Symptoms :

System : ASUS ROG laptop Windows 10 1809 x64 Intel Core i7-4700HQ @ 2.40 GHz nVidia GeForce 765M GPU

Attached :

Settings (other combinations were tried of course) :

`
; ts-ddraw - https://github.com/CnCNet/ts-ddraw

; use the following settings to enable the experimental stretching support ; works only fullscreen right now + menus are not centered

[ddraw] ; stretch to custom resolution, 0 = defaults to the size game requests ;StretchToWidth=2560 ;StretchToHeight=1440

; override StretchToWidth/StretchToHeight and always stretch to fullscreen ;StretchToFullscreen=No

; use windowboxing to make a best fit Windowboxing=Yes

; maintain aspect ratio - this setting is ignored when Windowboxing is enabled MaintainAspectRatio=No

; Enable vertical sync VSync=No

; Select the renderer, opengl, gdi, auto. Default = auto = if OpenGL fails automatically use GDI Renderer=auto

; Draw the FPS overlay 0 = no, 1 = yes DrawFPS=0

; Use 2 textures, in rotation, for the Primary Surface, default = yes PrimarySurface2Tex=Yes

; Use Pixel Buffer Objects, in rotation, for the primary Surface. default = 0 PrimarySurfacePBO=0

; Use single processor affinity to prevent thread crashes SingleProcAffinity=Yes

; Set the Renderer FPS value, Default = 60, unless VSync ;TargetFPS=60

; Call glFinish in the render loop GlFinish=Yes

`

The key setting to make the regular Red Alert 2 and Yuri's Revenge launch successfully on my system is Windowboxing=Yes. But it seems not to be enough for Yuri's Revenge.

I have other issues as well (lags in menus, for example), but this is the main one.

Right now I use Aqrit's DDRAW with the following settings :

`

RealDDrawPath = AUTO BltMirror = 0 BltNoTearing = 0 ColorFix = 0 DisableHighDpiScaling = 0 FakeVsync = 1 FakeVsyncInterval = 0 ForceBltNoTearing = 0 ForceDirectDrawEmulation = 0 NoVideoMemory = 1 SingleProcAffinity = 1 ShowFPS = 0

`

Game video settings :

`

VideoBackBuffer=No ScreenWidth=1024 ScreenHeight=768 StretchMovies=no

`

Without VideoBackBuffer=No the game displays a black screen with Aqrit's DDRAW. But it seems to have no effect with the issue at hand with TS-DDRAW (ie. yes or no = same result).

But I'd rather use TS-DDRAW instead, as it is it's actively maintained, and it fixes Alt-Tab.

Compatibility settings : Lastly, I do not use compatibility settings, except 16BITCOLOR. Same results if I do not use it. I tried to add on top the Windows 98 compatibility mode, but it makes things worse.

Edit : formatting

FunkyFr3sh commented 5 years ago

This has also been reported here: https://forums.cncnet.org/topic/8350-new-ts-ddraw-release-tiberian-sun-red-alert-2-yuris-revenge/?do=findComment&comment=70962

According to jezebel on the cncnet forums this version worked fine for him: https://github.com/CnCNet/ts-ddraw/releases/tag/experimental

Alternatively you can also try the latest cnc-ddraw: https://github.com/CnCNet/cnc-ddraw/releases

maximilien-noal commented 5 years ago

Tried the latest release (1.1.4.13) -> The problem is gone. Thank you !

dkeetonx commented 5 years ago

Seems most likely to have been fixed in 1.1.4.12