Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    hamyy
    @hamyyy
    error LNK2019: unresolved external symbol "Diligent::IEngineFactoryD3D11"
    error LNK2019: unresolved external symbol "Diligent::IEngineFactoryD3D12"
    error LNK2019: unresolved external symbol "Diligent::IEngineFactoryD3DOpenGL"
    error LNK2019: unresolved external symbol "Diligent::IEngineFactoryVk"
    (modified for readability)
    im using cmake, and followed the Samples included in DiligentSamples closely.
    how do i go about linking the required libs?
    Assiduous
    @TheMostDiligent
    hamyy
    @hamyyy
    Update!
    ive solved the issue

    @hamyyy So you followed the exact instructions from here
    https://github.com/DiligentGraphics/DiligentEngine#cloning-the-repository
    and
    https://github.com/DiligentGraphics/DiligentEngine#win32
    and got these errors?

    i guess I didn't follow them close enough! lol

    turns out i forgot to ling Diligent-GraphicsEngineXXXXX-static for all rendering backends
    link*
    im now on my way to add ImGui to my project, but the included ImGui in DiligentTools is conflicting with mine (I'm using a different branch - "docking branch")
    @TheMostDiligent any ideas to stop the conflicts? is it safe to just delete the imgui from ThirdParty folder (id rather not do that)
    im hoping theres a cmake setting i can toggle that can disable it for my project, but I cant find anything of the sorts in any of the CMakeLists files
    hamyy
    @hamyyy
    ps: im not using the entire DiligentEngine repo, rather I've submodules DiligentCore and DiligentTools as they are the only two I need for my application
    though i may think about adding DiligentFX later down the line, I prefer to start as bare-bones as possible
    Assiduous
    @TheMostDiligent
    @hamyyy You can provide a custom path to imgui using DILIGENT_DEAR_IMGUI_PATH cmake variable
    https://github.com/DiligentGraphics/DiligentTools/blob/master/Imgui/CMakeLists.txt#L5
    DaOnlyOwner
    @DaOnlyOwner
    Hello is there a way to activate unbounded texture arrays?
    DaOnlyOwner
    @DaOnlyOwner
    In the bindless resources sample, a bounded array is used in the shader. That's why I am asking.
    Assiduous
    @TheMostDiligent
    Yes. You need to use explicit resource signatures to use [] arrays. Note that this only works in Vulkan and D3D12
    DaOnlyOwner
    @DaOnlyOwner
    Ah thank you. Is there a sample that shows explicit resource signatures in action?
    Assiduous
    @TheMostDiligent
    Take a look at hybrid rendering tutorial
    DaOnlyOwner
    @DaOnlyOwner
    Alright thank you.
    Gotta say this project is one of the best open source projects out there focusing on rendering
    Assiduous
    @TheMostDiligent
    Thanks
    DaOnlyOwner
    @DaOnlyOwner
    Hello, I have another question. Can't find anything online, so I thought I'd ask. How do I modify the TLAS if I want to add an object to the scene that was previously not there?
    Assiduous
    @TheMostDiligent
    Take a look at Tutorials 21 and 22. They both have UpdateTLAS methods
    DaOnlyOwner
    @DaOnlyOwner
    I see. But they update already existing objects. Do I have to refill the instance buffer to achieve that?
    Assiduous
    @TheMostDiligent
    If you need to change the number of instances, you have to crate a new TLAS (as far as I remember)
    DaOnlyOwner
    @DaOnlyOwner
    That sounds very inefficient somehow. But preallocating decreases performance too...
    Assiduous
    @TheMostDiligent
    It is TLAS and its building should be faster than BLAS. But since it is opaque, you can't change the number of instances dynamically
    DaOnlyOwner
    @DaOnlyOwner
    Okay thank you; I will just recreate the TLAS
    DaOnlyOwner
    @DaOnlyOwner
    Hello sorry for bothering you again...
    My project crashes in Release Mode because Diligent doesn't find all shader variables. When compiling in Debug Mode everything works and Diligent reports the correct amount of variables back. What could be the issue here?
    I took a deep dive into the Source Code of Diligent, but sadly couldn't trace the error, because well, it is hard to debug in Release Config...
    Assiduous
    @TheMostDiligent
    Which backend do you use? Shaders compiled in release mode may strip out unused varaibles
    So you will get null when trying to access them
    DaOnlyOwner
    @DaOnlyOwner
    Okay.. It crashes in D3D12 and Vulkan backends (others haven't tested) and I use these variables in the shader.
    Assiduous
    @TheMostDiligent
    But where exactly does it crash?
    DaOnlyOwner
    @DaOnlyOwner
    Crashes at this line: srbUpdate->GetVariableByName(SHADER_TYPE_COMPUTE, "rayHitRadiance")->Set(rayHitRadiance->GetDefaultView(TEXTURE_VIEW_SHADER_RESOURCE)) GetVariableByName returns nullptr
    Assiduous
    @TheMostDiligent
    But are you sure that this variable is actually used by the shader, not just declared in it?
    DaOnlyOwner
    @DaOnlyOwner
    Okay I am stupid, I had the load the radiance variable but only use it when I set the OUTPUT_IRRADIANCE macro, now it works fine
    I load*
    And if I bother you with too much questions, just tell me :D
    Im just getting back at graphics programming
    DaOnlyOwner
    @DaOnlyOwner
    Can I ask one more question?
    When I run the project on the D3D12 backend, it freezes my PC for a short time and I get this error: "Timeout elapsed while waiting for the frame waitable object. This is a strong indication of a synchronization error."
    Any idea?
    Vulkan works fine
    Assiduous
    @TheMostDiligent
    There may be an issue in your shader that causes it to run for too long
    DaOnlyOwner
    @DaOnlyOwner
    Ah, and why does Vulkan work? Does it interrupt the shader execution that takes too long or something?
    Assiduous
    @TheMostDiligent
    Yeah, I'm not sure. Do you know which shader causes it to freeze?
    DaOnlyOwner
    @DaOnlyOwner
    I think it crashes because I ready from an illegal memory position in the shader. Is that possible?
    Assiduous
    @TheMostDiligent
    That depends and the behavior may be different in D3D12 and Vulkan. It is certainly better not to read/write to incorrect memory locations