1. Post #921

    May 2016
    96 Posts
    TIL that hitting the 4096 allocation limit in Vulkan is actually pretty easy, especially if you use staging buffers. And since you can't destroy these until transfer ops complete, it's easy to forget about these

    I'm on mobile and can't get to my videos/gfycats, but I got my LOD system to a state that is almost entirely (but not quite) broken. I spent several hours stuck because I had setup my model matrix order of operations incorrectly, then I was traversing my quadtree in a dumb fashion, and then to finish it off in a way only I can manage I was testing my frustum culling against a sphere... Based at the camera instead of the node. Oops.
    Well yeah you wanna get the numbers of buffers down. Ideally you just make like a handful of allocations and then manage buffers within those manually, just as you often do cpu side really. Usually you try to avoid having many buffers anyways.

    EDIT: Actually, isn't there an event/signal API for command buffers? Using that you could insert a signal after each transfer operation so you can automatically release a buffer after it has been used. But in general I think you don't wanna do individual allocations for each buffer anways.

  2. Post #922
    Gold Member
    aurum481's Avatar
    November 2008
    3,115 Posts
    Some impressions from my live shader coding adventures:

    It was a damn blast to do live shadercoding while some of my favourite musicians were playing live.
    Upload to shadertoy if you can? I don't think youtube compression is doing this any justice

  3. Post #923
    Gold Member
    Icedshot's Avatar
    April 2010
    2,650 Posts
    So previously in all my programming, I've almost always used codeblocks with MinGW64. Its pretty solid, although it has a few crash bugs here and there, and its autocomplete sometimes craps out which is my main frustration. The current project I'm working is visual studio (2017). I'd always had the impression that codeblocks was meant to be kind of crap in comparison. Jesus

    Miscellaneous problems that I've run into so far:

    - MD/MT confusion

    - Solutions and projects randomly becoming corrupt and necessitating text editing to fix. Projects and solutions often seem to just randomly break

    - No automatic header guard inclusion, swapping to a header file is 4 keys (two chords, ctrl-k and ctrl-o or p or something), swapping from a source file to a header file (or vice versa) which doesn't exist won't prompt you to create one but just goes nope

    - The compiler accepts wildly invalid templates and is flat out non conformant

    - Invalid symbol . before <. MSVC's error messages seem to be somewhat poorer than GCCs, particularly later versions of GCC, and triply so when it comes to templates

    - VS sometimes randomly decides to eat 50% of my cpu. This is somewhat counterproductive to trying to implement multithreaded code as I now have to frequently restart the IDE. The entire IDE in general seems to be fairly heavyweight compared to codeblocks

    - Auto formatting seems to be broken, and will randomly insert too many spaces after an if statement (convention is {'s on the same line as declaration)

    - By default MSVC seems to allow freer interconversion of types/pointers in situations that I haven't really pinned down yet, but that gcc would error on leading to bugs that I'm used to being compiler caught

    - Errors shown in the IDE are often inaccurate - code that will compile and is 100% correct is sometimes highlighted in red in the editor which makes the feature more annoying

    - I'm a bit suspicious of the code gen. EG msvc wasn't attempting to inline a function that was purely a wrapper for a second function, and turned out to be a huge bottleneck after labelling it inline

    - It also doesn't seem to support any equivalent of -pg which is properly unhelpful for performance profiling as you have no idea how many times a function was called, and I'd like more accurate profile information

    - Initially profiling was totally broken, it would just hang. If you profile for too long (> 20 seconds) it seems the whole thing craps out

    On the plus side: The type deduction is spot on, and the built in sampling profiling tool has a nicer interface than codeblocks/gprof as it can walk you through which function called x (although currently not *super* useful, its still an improvement). I also like that it shows you ram and cpu usage, which is useful. It also doesn't need to be compiled in debugging mode to get useful debugging information with the debugger attached, as it seems to have symbol stuff which works mostly ok. Fast debug is nice too

    Still, my overall first, second, third, and week after impression of msvc's tools is generally fairly negative compared to the available free software!
    Reply With Quote Edit / Delete Reply Windows 10 Chrome United Kingdom Show Events Informative Informative x 1 (list)

  4. Post #924
    www.bff-hab.de
    DrDevil's Avatar
    May 2006
    3,058 Posts
    Upload to shadertoy if you can? I don't think youtube compression is doing this any justice
    I don't have the glsl code anymore, as I just kept modifying it without saving inbetween. Sorry!

    I will upload the raw screen capture tomorrow, at least that's uncompressed.

  5. Post #925
    BIG TITLE
    Pat.Lithium's Avatar
    November 2009
    10,809 Posts
    it makes me sad that xcode and swift are ios only. i'm about to finish my last assignment and put windows back on my pc. theres so many intuitive things about the language and ide that make it so easy to work with.

  6. Post #926
    VIoxtar's Avatar
    February 2007
    1,632 Posts
    shader stuff
    That looks super fun.

  7. Post #927

    May 2016
    96 Posts
    Having fun doing network programming, atm fuzzing around with general client/server communication before diving into snapshot based replication with rewind and replay.
    Did a super rough master server implementation this morning:


    Left side is hosting, right side is what a client sees when requesting a list of active servers.
    ATM the master server is just like 80 lines of code so it's only the bare bones, but it's nice to see how easy it is to setup a system like this.

  8. Post #928
    Gold Member

    July 2006
    2,462 Posts


    playing around with displacement + normal mapping in opengl using textures captured with photogrammetry, getting some really nice results
    Reply With Quote Edit / Delete Reply Windows 10 Firefox Finland Show Events Winner Winner x 3 (list)