Crash when switching to hardware accelerated in Hexen

Is there something that doesn't work right in the latest GZDoom? Post about it here.

Moderator: GZDoom Developers

Forum rules
Please construct and post a simple demo whenever possible for all bug reports. Please provide links to everything.

If you can include a wad demonstrating the problem, please do so. Bug reports that include fully-constructed demos have a much better chance of being investigated in a timely manner than those that don't.

Please make a new topic for every bug. Don't combine multiple bugs into a single topic. Thanks!

Crash when switching to hardware accelerated in Hexen

Postby Lippeth » Sun Apr 04, 2021 8:03 pm

In the latest dev build (gzdoom-x64-g4.6pre-195-g55ce0510c) when switching from Doom Software Renderer to Hardware Accelerated while in-game, the engine crashes in Hexen unless switching while still in the main menu, before anything is loaded. It only seems to happen with Hexen though. I tried to figure out if any of the rendering options I had set were causing it, but it crashed no matter what, with Vulkan, OpenGL and SoftPoly. I hope this is enough info!

Spoiler: Video
User avatar
Lippeth
Metalvangelist
 
Joined: 24 Apr 2013
Location: Lost Angeles
Discord: Lippeth#2552

Re: Crash when switching to hardware accelerated in Hexen

Postby Rachael » Sun Apr 04, 2021 8:33 pm

Adding nullptr checks fixed the problem partially, but not completely.

I suspect that the GL nodes are not loaded properly when the renderer is switched.
User avatar
Rachael
Admin
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Operating System: Windows 10/8.1/8/201x 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: ATI/AMD with Vulkan Support

Re: Crash when switching to hardware accelerated in Hexen

Postby drfrag » Mon Apr 05, 2021 3:52 am

It's something about polyobjects. It crashes here in HWWall::DoTexture:
Code: Select allExpand view
      // Add this wall to the render list
      sector_t * sec = sub ? sub->sector : seg->frontsector;

Seems sub gets some weird value somewhere (initializing it in HWWall doesn't work).
User avatar
drfrag
Os voy a romper a pedazos!
Vintage GZDoom Developer
 
Joined: 23 Apr 2004
Location: Spain
Discord: drfrag#3555
Github ID: drfrag666


Return to Bugs

Who is online

Users browsing this forum: No registered users and 0 guests