Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PixelShader or other Failure when loading assets? #1

Open
DennisSmolek opened this issue Oct 11, 2022 · 4 comments
Open

PixelShader or other Failure when loading assets? #1

DennisSmolek opened this issue Oct 11, 2022 · 4 comments

Comments

@DennisSmolek
Copy link

Hello!

I saw some of your work while starting my journey of learning how to render volumes/volumetric content.
I was very impressed by your work!

In this MultiVolumes demo I am getting an error

D3D12 ERROR: ID3D12Device::CreatePixelShader: Shader uses double precision float ops which are not supported on the current device. [ STATE_CREATION ERROR #336: DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED]
Exception thrown at 0x00007FFF5440474C in MultiVolumes.exe: Microsoft C++ exception: _com_error at memory location 0x00000001000FAE30.
Assertion failed!

Program: ...s\denni\Documents\GitHub\MultiVolumes\Bin\XUSG.dll
File: E:\DirectXProjectsX\RenderingX\XUSG...\XUSGGra...X12.cpp
Line: 371

Expression: !HrToString(hr).c_str()

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts

Doing a trace I get:

 	KernelBase.dll!00007fff5440474c()	Unknown
 	vcruntime140d.dll!00007fff2000b650()	Unknown
 	MultiVolumes.exe!ThrowIfFailed(HRESULT hr) Line 44	C++
>	MultiVolumes.exe!MultiVolumes::LoadAssets() Line 194	C++
 	MultiVolumes.exe!MultiVolumes::OnInit() Line 81	C++
 	MultiVolumes.exe!Win32Application::Run(DXFramework * pFramework, HINSTANCE__ * hInstance, int nCmdShow) Line 55	C++
 	MultiVolumes.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, char * __formal, int nCmdShow) Line 19	C++
 	[External Code]	

Admittedly, much of the rendering in general is beyond my current skillset (why I was excited to play with your demo)
I'm also more of a Mac/Web Developer, so my experience with Full Visual Studio is limited...

However, in that limited experience I know the builds/projects/solutions are very specific/touchy to things so while this is throwing an error, it may be something I did (or did not do) for the build..

I'm on a 2021 Zepher M16 using Windows 11 (64) and a i9. GPU is a 3060 with driver version 512.78 and Everything seems Normal on dxdiag...

I am able to run the regular VolumeRenderer without issues, but I haven't compared the two yet

@StarsX
Copy link
Owner

StarsX commented Oct 14, 2022

Hello!

I saw some of your work while starting my journey of learning how to render volumes/volumetric content. I was very impressed by your work!

In this MultiVolumes demo I am getting an error

D3D12 ERROR: ID3D12Device::CreatePixelShader: Shader uses double precision float ops which are not supported on the current device. [ STATE_CREATION ERROR #336: DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED]
Exception thrown at 0x00007FFF5440474C in MultiVolumes.exe: Microsoft C++ exception: _com_error at memory location 0x00000001000FAE30.
Assertion failed!

Program: ...s\denni\Documents\GitHub\MultiVolumes\Bin\XUSG.dll
File: E:\DirectXProjectsX\RenderingX\XUSG...\XUSGGra...X12.cpp
Line: 371

Expression: !HrToString(hr).c_str()

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts

Doing a trace I get:

 	KernelBase.dll!00007fff5440474c()	Unknown
 	vcruntime140d.dll!00007fff2000b650()	Unknown
 	MultiVolumes.exe!ThrowIfFailed(HRESULT hr) Line 44	C++
>	MultiVolumes.exe!MultiVolumes::LoadAssets() Line 194	C++
 	MultiVolumes.exe!MultiVolumes::OnInit() Line 81	C++
 	MultiVolumes.exe!Win32Application::Run(DXFramework * pFramework, HINSTANCE__ * hInstance, int nCmdShow) Line 55	C++
 	MultiVolumes.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, char * __formal, int nCmdShow) Line 19	C++
 	[External Code]	

Admittedly, much of the rendering in general is beyond my current skillset (why I was excited to play with your demo) I'm also more of a Mac/Web Developer, so my experience with Full Visual Studio is limited...

However, in that limited experience I know the builds/projects/solutions are very specific/touchy to things so while this is throwing an error, it may be something I did (or did not do) for the build..

I'm on a 2021 Zepher M16 using Windows 11 (64) and a i9. GPU is a 3060 with driver version 512.78 and Everything seems Normal on dxdiag...

I am able to run the regular VolumeRenderer without issues, but I haven't compared the two yet

A little busy these days. I'll discuss with you later. Besides, I'll also update this repo.

@StarsX
Copy link
Owner

StarsX commented Oct 25, 2022

Hello!

I saw some of your work while starting my journey of learning how to render volumes/volumetric content. I was very impressed by your work!

In this MultiVolumes demo I am getting an error

D3D12 ERROR: ID3D12Device::CreatePixelShader: Shader uses double precision float ops which are not supported on the current device. [ STATE_CREATION ERROR #336: DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED]
Exception thrown at 0x00007FFF5440474C in MultiVolumes.exe: Microsoft C++ exception: _com_error at memory location 0x00000001000FAE30.
Assertion failed!

Program: ...s\denni\Documents\GitHub\MultiVolumes\Bin\XUSG.dll
File: E:\DirectXProjectsX\RenderingX\XUSG...\XUSGGra...X12.cpp
Line: 371

Expression: !HrToString(hr).c_str()

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts

Doing a trace I get:

 	KernelBase.dll!00007fff5440474c()	Unknown
 	vcruntime140d.dll!00007fff2000b650()	Unknown
 	MultiVolumes.exe!ThrowIfFailed(HRESULT hr) Line 44	C++
>	MultiVolumes.exe!MultiVolumes::LoadAssets() Line 194	C++
 	MultiVolumes.exe!MultiVolumes::OnInit() Line 81	C++
 	MultiVolumes.exe!Win32Application::Run(DXFramework * pFramework, HINSTANCE__ * hInstance, int nCmdShow) Line 55	C++
 	MultiVolumes.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, char * __formal, int nCmdShow) Line 19	C++
 	[External Code]	

Admittedly, much of the rendering in general is beyond my current skillset (why I was excited to play with your demo) I'm also more of a Mac/Web Developer, so my experience with Full Visual Studio is limited...

However, in that limited experience I know the builds/projects/solutions are very specific/touchy to things so while this is throwing an error, it may be something I did (or did not do) for the build..

I'm on a 2021 Zepher M16 using Windows 11 (64) and a i9. GPU is a 3060 with driver version 512.78 and Everything seems Normal on dxdiag...

I am able to run the regular VolumeRenderer without issues, but I haven't compared the two yet

Could you know which pipeline was failed to be created? Using debug build, I think there will be an assertion at the failed pipeline creation statement.

@DennisSmolek
Copy link
Author

Could you know which pipeline was failed to be created? Using debug build, I think there will be an assertion at the failed pipeline creation statement.

D3D12 ERROR: ID3D12Device::CreatePixelShader: Shader uses double precision float ops which are not supported on the current device. [ STATE_CREATION ERROR #336: DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED]
Exception thrown at 0x00007FFF5440474C in MultiVolumes.exe: Microsoft C++ exception: _com_error at memory location 0x00000001000FAE30.
Assertion failed!

it’s something to do with precision, I’m wondering if there’s a declaration somewhere like the header file?

I’ll spend more time on this today

@StarsX
Copy link
Owner

StarsX commented Nov 1, 2022

Could you know which pipeline was failed to be created? Using debug build, I think there will be an assertion at the failed pipeline creation statement.

D3D12 ERROR: ID3D12Device::CreatePixelShader: Shader uses double precision float ops which are not supported on the current device. [ STATE_CREATION ERROR #336: DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED]
Exception thrown at 0x00007FFF5440474C in MultiVolumes.exe: Microsoft C++ exception: _com_error at memory location 0x00000001000FAE30.
Assertion failed!

it’s something to do with precision, I’m wondering if there’s a declaration somewhere like the header file?

I’ll spend more time on this today

Could you please use the debug config to run with Visual Studio? It can locate the assertion point to the problematic pipeline-creation statement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants