Giter VIP home page Giter VIP logo

nicegraf's People

Contributors

abm-77 avatar aditya-c2512 avatar andranik3949 avatar bennywwg avatar dbagrat avatar hchatori avatar nicebyte avatar ottohatt avatar rkevingibson avatar snowblaze avatar thesenpie avatar underdiskdev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nicegraf's Issues

segfault in dxc_wrapper.cpp:85

I'm trying to compile nicegraf-samples. After it builds nicegraf-shaderc, the process segfaults generating the shaders in the /artifacts folder. The segfault is in DxcCreateInstance, which is called from dxc_wrapper.cpp.

I just compiled dxc from source and copied libdxcompiler.so to nicegraf-shaderc's path. That shuts up the error about not loading libdxcompiler, but maybe it's causing this issue too? I'm on Linux Mint 20.

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff61f37d3 in int DoBasicQueryInterface<IDxcUtils, DxcUtils>(DxcUtils*, GUID const&, void**) () fr
om /home/sean/projects/nicegraf-samples/nicegraf-shaderc/libdxcompiler.so
(gdb) where
#0  0x00007ffff61f37d3 in int DoBasicQueryInterface<IDxcUtils, DxcUtils>(DxcUtils*, GUID const&, void**) (
) from /home/sean/projects/nicegraf-samples/nicegraf-shaderc/libdxcompiler.so
#1  0x00007ffff61f437a in CreateDxcUtils(GUID const&, void**) () from /home/sean/projects/nicegraf-samples
/nicegraf-shaderc/libdxcompiler.so
#2  0x00007ffff61ee5cb in DxcCreateInstance () from /home/sean/projects/nicegraf-samples/nicegraf-shaderc/
libdxcompiler.so
#3  0x0000555555706290 in dxc_wrapper::<lambda(auto:22)>::operator()<IDxcLibrary**>(IDxcLibrary **) const
(__closure=0x7fffffffc560, ptr=0x7fffffffc5b8) at /home/sean/projects/nicegraf-samples/nicegraf-shaderc/dx
c_wrapper.cpp:86
#4  0x00005555557062c6 in dxc_wrapper::com_ptr<IDxcLibrary>::com_ptr<dxc_wrapper::dxc_wrapper(const string
&, const std::vector<std::__cxx11::basic_string<char> >&, const string&)::<lambda(auto:22)> >(dxc_wrapper:
:<lambda(auto:22)>) (this=0x7fffffffc5b8, create_fn=...) at /home/sean/projects/nicegraf-samples/nicegraf-
shaderc/dxc_wrapper.h:60
#5  0x00005555557058ac in dxc_wrapper::dxc_wrapper (this=0x7fffffffcac0, sm="6_2", dxc_params=std::vector
of length 3, capacity 4 = {...}, exe_dir="/home/sean/projects/nicegraf-samples/nicegraf-shaderc") at /home
/sean/projects/nicegraf-samples/nicegraf-shaderc/dxc_wrapper.cpp:85
#6  0x000055555570c38a in main (argc=4, argv=0x7fffffffdf68) at /home/sean/projects/nicegraf-samples/niceg
raf-shaderc/nicegraf_shaderc.cpp:220
(gdb) f 0
#0  0x00007ffff61f37d3 in int DoBasicQueryInterface<IDxcUtils, DxcUtils>(DxcUtils*, GUID const&, void**) (
) from /home/sean/projects/nicegraf-samples/nicegraf-shaderc/libdxcompiler.so
(gdb) f 6
#6  0x000055555570c38a in main (argc=4, argv=0x7fffffffdf68) at /home/sean/projects/nicegraf-samples/niceg
raf-shaderc/nicegraf_shaderc.cpp:220
220       dxc_wrapper dxcompiler(shader_model, dxc_options, exe_dir);

provide detailed reference documentation

  • add comments to user-facing routines, structures, enumerations and data fields that are currently undocumented;
  • improve the existing doc comments;
  • auto-generate html documentation from comments using doxygen and publish it on the web.

binding resources and skipping a draw may cause a crash

way to repro:

  • bind pipeline
  • bind some resources
  • do NOT make a drawcall
  • bind another pipeline
  • ...
  • make a drawcall

vk implementation buffers bind ops internally until draw. need to clean up binds that end up never being used.

wrong layout of swapchain image

the following validation error pops up consistently:

Images passed to present must be in layout VK_IMAGE_LAYOUT_PRESENT_SRC_KHR or VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR but is in VK_IMAGE_LAYOUT_UNDEFINED. The Vulkan spec states: Each element of pImageIndices must be the index of a presentable image acquired from the swapchain specified by the corresponding element of the pSwapchains array, and the presented image subresource must be in the VK_IMAGE_LAYOUT_PRESENT_SRC_KHR layout at the time the operation is executed on a VkDevice (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-VkPresentInfoKHR-pImageIndices-01296)

it occurs once or twice on swapchain recreation.

`04-hexagon-indexed` has invalid buffer usage flag

04-hexagon-indexed triggers the following validation error:

Invalid usage flag for Buffer 0x560f0d6b4a90 used by vkCmdCopyBuffer(). In this case, Buffer should have VK_BUFFER_USAGE_TRANSFER_DST_BIT set during creation. The Vulkan spec states: dstBuffer must have been created with VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkCmdCopyBuffer-dstBuffer-00120)  

this appears to be triggered by copying the index buffer data.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.