Skip Navigation
Posts
40
Comments
23
Joined
2 yr. ago
GraphicsProgramming @kbin.social
olorin99 @kbin.social

Texture block compression is a critical component of real-time rendering. Reducing the size of textures saves download time, disk space, memory, and GPU bandwidth. With a few exceptions (pixel art, some UI elements), it’s a reasonable expectation that all textures should be compressed to maximize these benefits. It’s important, therefore, to understand how texture block compression works at a high level. What formats work best for base colors versus normal maps versus some arbitrary packed material data?

GraphicsProgramming @kbin.social
olorin99 @kbin.social

Adding backface and microtriangle culling cut the frame time from 17ms to 7ms. Scene has 900 stanford bunnies each with 69 thousand triangles for a total of 62 million triangles reduced to 6 million.

Adding backface and microtriangle culling cut the frame time from 17ms to 7ms. Scene has 900 stanford bunnies each with 69 thousand triangles for a total of 62 million triangles reduced to 6 million.
graphicsprogramming #vulkan #meshshaders #stanfordbunny #GraphicsProgramming

GraphicsProgramming @kbin.social
olorin99 @kbin.social

Hierarchical Depth Buffers

Overview A hierarchical depth buffer is a multi-level depth (Z) buffer used as an acceleration structure for depth queries. As with normal texture mip chains, the dimensions of each level are generally successive power-of-2 fractions of the full-resolution buffer’s dimensions. In this article I present two techniques for generating a hierarchical depth buffer from a full-resolution one. First I show how to generate the full mip chain for a depth buffer in a way that preserves depth query accuracy in texture coordinate (or NDC) space even for non-power-of-2 depth buffer dimensions.

GraphicsProgramming @kbin.social
olorin99 @kbin.social
GraphicsProgramming @kbin.social
olorin99 @kbin.social
GraphicsProgramming @kbin.social
olorin99 @kbin.social
GraphicsProgramming @kbin.social
olorin99 @kbin.social
martty.github.io Making an AMDGPU debugger part I - The Plan

Intro GPUs are complex beasts - and certainly more mysterious in some ways than CPUs which come with ample amounts of documentation and manuals. Aspiring graphics programmers (too insignificant to have a devrel contact to give insight) are sometimes left to scrounge old GDC presentations on performa...

GraphicsProgramming @kbin.social
olorin99 @kbin.social

44 million triangles drawn in ~17ms. Wow GPUs are fast. Does anyone have any good resources on meshlet optimisations to speed it up?

44 million triangles drawn in 17ms. Wow GPUs are fast. Does anyone have any good resources on meshlet optimisations to speed it up?

GraphicsProgramming

GraphicsProgramming @kbin.social
olorin99 @kbin.social

Reprojection in a Ray Tracer

GraphicsProgramming @kbin.social
olorin99 @kbin.social

Modernizing Granite’s mesh rendering

GraphicsProgramming @kbin.social
olorin99 @kbin.social
GraphicsProgramming @kbin.social
olorin99 @kbin.social
therealmjp.github.io Shader Printf in HLSL and DX12

Overall Approach Setting Up The Print Buffer The “Magic” Debug Info Buffer Dealing With The String Problem A Cursed Path Packing It All Into A Buffer Reading Back On The CPU Going Beyond Printf CR LF Unless you’re fortunate enough to to be working exclusively in Cuda, debugging GPU shaders is still ...

Shader Printf in HLSL and DX12
  • Found a bug. On mobile the menu is partly offscreen. image. Looks like the menu is aligned with the button rather than with the edge of the screen.

  • There is a matrix space for kbin.
    kbin-space:matrix.org

  • GraphicsProgramming @kbin.social
    olorin99 @kbin.social

    GPU architecture types explained

    GraphicsProgramming @kbin.social
    olorin99 @kbin.social

    Visibility buffer + mesh shaders pretty much complete.

    Visibility buffer + mesh shaders pretty much complete.
    vulkan #graphicsprogramming #sponza #GraphicsProgramming

    GraphicsProgramming @kbin.social
    olorin99 @kbin.social

    Debugging mesh shaders. Yay!

    GraphicsProgramming @kbin.social
    olorin99 @kbin.social
    gpuopen.com Occupancy explained

    In this blog post we will try to demystify what exactly occupancy is, which factors limit occupancy, and how to use tools to identify occupancy-limited workloads.

    Occupancy explained
    GraphicsProgramming @kbin.social
    olorin99 @kbin.social
    GraphicsProgramming @kbin.social
    olorin99 @kbin.social
    GraphicsProgramming @kbin.social
    olorin99 @kbin.social
    GraphicsProgramming @kbin.social
    olorin99 @kbin.social
  • I haven't really noticed much of a difference. I figured it was probably worth actually being able to wake the laptop from sleep rather than having to restart it every time.

  • So to check what suspend states your laptop supports run cat /sys/power/mem_sleep. It should print something like s2idle shallow [deep] with the option that is enabled having [] around it. To change the enabled option run echo "s2idle" > /sys/power/mem_sleep.
    https://wiki.archlinux.org/title/Powermanagement/Suspendandhibernate has more info.

  • Many modern laptops no longer support S3 sleep at all. It is likely to be an issue with the bios rather than a linux project. On my laptop, with Ryzen 7 5825U, I had to give up on S3 and use s2idle. Also had to pass "pcieaspm=off" as a kernel parameter because it would take ages to wake the ssd without it. Overall works ok. Not as good as S3 but better than nothing.

  • It is probably possible however currently I can go to kbin.social/d/9to5mac.com and see all the posts that link to 9to5mac so them hosting their own instance would be kinda redundant.

  • Yep on kbin you can subscribe/block domains so anything from that domain will show up in your feed. This works for instance domains and general websites that people link to as well. Its good if you want to block whole instances rather than asking the admin to defederate.

  • I think your first course of action would be to bring this up with other members of your friend group and see how they feel. Have they also noticed this behaviour? Do they have any ideas how to deal with it? It will be easier to help this person if you work together. Just make sure you don't seem like you're ganging up on them. Maybe you can approach them with your concerns and then another friend can bring it up separately some time later. If you want to help always approach with kindness and love.

  • Doesn't fdroid automatically check for updates already?

  • I have something similar but without the discover weekly and lastFM. Awesome idea. Guess that'll be this weeks project.

  • I usually end up with community playing in the background while I'm working on something else. No idea how many times I've rewatched it.

  • Only when a link brings me there or though a ddg search. No more browsing.

  • Maybe they're just mice trying to find the question to life the universe and everything.

  • First I want to state fuck Greg Abott.

    Woah whats state fucking? Sounds intense.

  • Yes passing "by reference" is essentially the same as "by pointer" but with some syntactical sugar to make it easier to work with.