Jump to content

ShaderTechnique crash on custom build (Assertion failed in shadertechnique.cpp)


LogicXPlaysYT
 Share

Recommended Posts

Hi,

I'm trying to build 0 A.D. from source on Windows using Visual Studio 2022. The build completes successfully, but when I run `pyrogenesis.exe`, the game crashes with the following assertion:

"Assertion failed: "0 <= pass && pass < static_cast<int>(m_Passes.size())"
Location: shadertechnique.cpp:79 (CShaderTechnique::GetGraphicsPipelineState)"


This happens during GUI rendering, and the call stack shows references to CCanvas2D and shader bindings. I did run `update-workspaces.bat` and built with `MSBuild pyrogenesis.sln /p:Configuration=Release /p:Platform=x64`.

I also cleared the shader cache at:

%LOCALAPPDATA%\0ad\cache

But the crash still occurs.

Do you have any advice on how to fix this or properly reset the graphics pipeline/shaders?

Thanks in advance!

Link to comment
Share on other sites

Hi and welcome to the forums. We're a few days away from supporting building with VS 2022, there is an almost ready PR that you could test: #8176

If you're using the main branch or the nightly build, VS 2017 is the only supported compiler (though you could use the vc141 toolset in VS2022) until that PR is merged.

And lastly, if you're building from a git clone, you'll need to download Vulkan shaders and translations from the nightly build using `binaries/system/get-nightly-binaries.bat`, or else you'll have the game fall back to OpenGL.

Link to comment
Share on other sites

Thank you for the warm welcome , it's much appreciated.

I am building the game from a Git clone using the following repository:
'https://github.com/0ad/0ad.git'

I noticed that the file get-nightly-binaries.bat is not present in the repository.

I have also installed the vc141 toolset in VS2022.

Should I manually download additional files, such as shaders or translations, from the nightly builds in order to run the game correctly?

Thank you for your assistance.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...