Immediate-Mode-UI / Immediate-Mode-UI/Nuklear
DX12 Backend runtime failure with VS 2022
- Dominant language
- C
- Stars
- 11.4k
- Forks
- 686
- Avg merge
- 4d 1h
- Merged PRs (30d)
- 3
Description
This implementation may be utilizing an obsolete DirectX12 method,
the compilation is successful, however the window appears white and then shuts after a second.
build log:
```
compilation header save succeeded; see d3d12\nuklear_d3d12_vertex_shader.h
compilation header save succeeded; see d3d12\nuklear_d3d12_pixel_shader.h
main.c
d3d12\nuklear_d3d12.h(517): warning C4244: 'function': conversion from 'SIZE_T' to 'int', possible loss of data
d3d12\nuklear_d3d12.h(523): warning C4244: 'function': conversion from 'SIZE_T' to 'int', possible loss of data
d3d12\nuklear_d3d12.h(680): warning C4002: too many arguments for function-like macro invocation 'ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart'
d3d12\nuklear_d3d12.h(681): warning C4002: too many arguments for function-like macro invocation 'ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart'
main.c(135): warning C4002: too many arguments for function-like macro invocation 'ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart'
d3d12\main.c(136) : warning C4700: uninitialized local variable 'descriptor_handle' used
```
I don't know what is the cause.
Contributor guide
Research direction
Start by reproducing the failure with VS 2022 and reviewing d3d12/nuklear_d3d12.h around lines 517, 523, 680, and 681, then compare the related calls in d3d12/main.c around lines 135-136. Investigate the reported conversion, macro-argument, and uninitialized-variable warnings. Done means the sample window remains functional without these runtime warnings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- computer-graphics, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100