Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

146 Neutral

About kevinvannerum

  • Rank

Personal Information

  1. RT @larianstudios: Have kids between 7 & 17, live in Gent? Come to @larianstudios #CoderDojo - our devs teach coding games for free! https…
  2. kevinvannerum

    SampleGrad on TextureCubeArray

    There was a lack of a decent SRV description for the TextureCubeArray type. That slipped past since I had no hand in that part and the capture gave correct results. Thx for the hint :)
  3. kevinvannerum

    SampleGrad on TextureCubeArray

    Yes, same result. Always first cube, but in that case also always highest mip of course.
  4. kevinvannerum

    SampleGrad on TextureCubeArray

    It is an issue with SampleGrad. I previously had a working test with SampleLevel. The WARP driver does not fix the issue either.
  5. FIRST ROW!! Interesting talks all day lang @TEDxUHasselt https://t.co/3I0NuydBem
  6. kevinvannerum

    SampleGrad on TextureCubeArray

    That's exactly how I try to address them :) (Although, in desperation, I tried every other possibility as well)
  7. Hi all,   I'm currently implementing a light probe system. I'm passing the captured data of my 8 closest (specular) light probes to the shader as a TextureCubeArray. I'm using a workflow similar to clustered lighting to determine the list of which probes are needed.   Because I have a list, with a variable number of applicable probes per pixel, I need to use SampleGrad in my evaluation loop as the shader otherwise tries to enforce an unroll.   This is the call to my local specular probes (shader model 5 SampleGrad) : float3 EnvColor = Loc_Spec.SampleGrad(LinearSampler, float4(dir, lightProbeIndex), SampleGrad_Probe_DDX, SampleGrad_Probe_DDY, LOD).rgb; My problem: It always samples the first cube in the array. I can pass whatever for 'lightProbeIndex', it does not make a difference. Capturing the executable however, shows that Loc_Spec is a correctly build array of 8 cubes, each with 6 correctly ordered faces, as expected.   Has anyone encountered a similar problem with SampleGrad before?   Greetings.   PS: Captured Texture/Sampler characteristics below for added info.   Texture   Type:              Cube Array Width/Height:  128 Depth:            1 Array Size:     48 Format:          R11G11B10_FLOAT   Sampler   Addressing:    UVW: CLAMP Filter:             ANISOTROPIC 16x LOD Clamp:   0-FLT_MAX Mip Bias:       0  
  8. @Radikalizm (Hey! Leuke verrassing hahaha :D ) I was indeed using the same approach. Glad I had the correct idea about why it was going wrong. You also confirmed my hunch about that I might solve it by using a very small, downsampled map (I kinda had that working already, but didn't believe it was a decent approach). The LUT was indeed there for the fancy view dependency as I am trying to replicate the rendering of some (artist) tools that seem to do this as well (as far as my eye can tell); Substance Designer for example. Guess I'll finish up the sampling method by using the downsampled map and then I'll switch over to SH to get a decent comparison between the two.   @Krzystof  I even read in a few places that they photoshop the sun out of it to avoid aliasing, but I wanted to keep the ability to load any HDR map robustly. As some tools clearly did this, I started wondering how. On top of that, with the sampling approach it also happened in captured cubemaps with decent values if the difference between values was extreme enough. Thx for the SH link, as well!   @MJP Thanks for pointing out the possible edge cases, that will help a fair amount when I run into issues (and I usually do ^^). The code will also be of great help.
  9. Hey guys,   I'm currently implementing a real-time physically based rendering (PBR) pipeline with image based lighting (IBL) and ran into a rather irritating issue.   For IBL specular I use an importance sampling approach with a pre-integrated environment and LUT as introduced by Karis for Unreal. With the addition of sampling multiple mip levels during pre-integration to reduce aliasing (originally from GPU Gems 3. Example code listing here). This works perfectly and I'm loving the results.    Now for diffuse I started out with trying the same approach (pre-integration + LUT) as I saw a few documents choosing this over Spherical Harmonics (SH) (Frostbite for example, at least in their paper). I also have no experience with SH so I preferred to start out with the same workflow as the specular part. The sampling is all set up and functional, but the amount of aliasing is immense. Given almost any (HDR) input, the strong light pixels will just be repeated across the integrated texture. Even with pdf-based filtering as in the specular component, the strong dots cannot be averaged out to continuous spot of light (except after an immense amount of samples).   I understand that a stronger amount of aliasing can be natural, as the diffuse sampling is not as focused as the specular one. Certainly for some of my test HDR files with a sun sput of 20 000 compared to other values of around 0-20. But I was wondering if I forgot something crucial to lower the amount of needed samples for a robust diffuse result texture, like maybe prefiltering or only sampling from low mip levels (this btw does solve the problem, but seems very hacky to me). As of now thousands of samples are needed (unless sampling only the very low mip levels of the environment map). The resulting image in that case is correct however, so I am absolutely certain that my other components work as intended.   Also, since this has me rather irritated, I started thinking about Spherical Harmonics as replacement for diffuse importance sampling. Do any of you have experience with that? How does it compare visually to the real-time sampling results (if they work as intended)? Is there a preference towards Spherical Harmonics for other reasons than smaller storage requirements?   Greetings
  10. RT @idSoftware: #TBT Celebrating its 20th anniversary this week, behold the Master Disks for @DOOM II #HappyBirthday http://t.co/l6MWEZzOHd
  11. - Knock, knock. -- Who's there? - Doctor. -- #DoctorWho? - Exactly!! :3
  12. RT @nytimes: Video gaming is becoming a worldwide spectator sport http://t.co/RLOaNU5MjR (Photo: Stuart Isett for NYT) http://t.co/NQwApd7l…
  13. kevinvannerum

    An introduction and a plea for help

    Hey, thanks for the great advice! I'm certainly not shy to look for jobs outside of the game industry, experience is indeed gained elsewhere as well. It's great, however, to hear that everything is still possible. :)
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!