Robert Ryan

43 posts

Robert Ryan

Robert Ryan

@rtryan98

Graphics Programmer.

Germany เข้าร่วม Nisan 2015
71 กำลังติดตาม29 ผู้ติดตาม
Robert Ryan
Robert Ryan@rtryan98·
Resources are now also moved to disk if the allowed RAM is exceeded. With this addition to the resource mangement system, the limit moved from unobtainable RAM to overpriced NVMEs!
Robert Ryan tweet media
English
0
0
2
18
Robert Ryan
Robert Ryan@rtryan98·
Working on my node-based GPU-accelerated terrain generator, I've implemented a system that moves resources between VRAM and RAM. Using this system, larger graphs are possible even when VRAM is limited. With RAM being unobtainable at the moment, a file-system cache is next up.
Robert Ryan tweet media
English
0
1
6
86
Robert Ryan
Robert Ryan@rtryan98·
I've finally implemented image based lighting. It adds a lot to how the ocean looks. Next up will be some level of detail sampling on the ocean to get rid of specular artefacts!
Robert Ryan tweet media
English
0
0
1
48
Robert Ryan
Robert Ryan@rtryan98·
For quite a while I've been working on a Fast Fourier Transform based ocean simulation in my render engine. Whilst there is still a lot to work on, I'm excited to see the result once I've added IBL to this renderer.
English
0
0
2
63
Robert Ryan
Robert Ryan@rtryan98·
@Acerola_t What parameters are you using for the JONSWAP spectrum? I've found Fetch especially to be quite tricky to find a good value for.
English
1
0
1
192
Acerola
Acerola@Acerola_t·
no foam yet but I swapped from phillips spectrum to a dual JONSWAP as proposed by the devs of Atlas and the difference is crazy!!! so much more customizability and so much detail that blinn phong can't handle it and it's killing the visuals
English
8
9
233
11.3K
Robert Ryan
Robert Ryan@rtryan98·
@Acerola_t You can optimize the FFTs even further. Because the outputs you require a real valued, the spectra of those must have Hermitian symmetry. This means you can multiply one spectrum by i, add it to another and do a single complex FFT to get both results at once.
English
2
0
11
240
Acerola
Acerola@Acerola_t·
the fft is fast enough that I can calculate 5 1024x1024 maps for a much higher detail simulation and it's still way faster than the dft was when calculating a single 256x256 map, how cool! gonna work on foam next and then make it ocean sized
English
4
4
173
7.3K
Robert Ryan
Robert Ryan@rtryan98·
@Acerola_t @bobacupcake As for the ringing artifact, that seems to be caused by bad noise. In your case the bad noise is causing waves opposite of the wind to be close to equally as strong as waves in the direction of the wind, which means that the result after the FFT you get still seems plausible.
English
1
0
0
18
Robert Ryan
Robert Ryan@rtryan98·
@Acerola_t @bobacupcake The line through the diagonal seems to be caused by the positive directional spreading model that Tessendorf uses. Using some other directional spreading function like the one proposed by Hasselmann or the one from Donelan Banner should provide a better result there.
English
1
0
0
17
Acerola
Acerola@Acerola_t·
phillips spectrum weirdness
English
2
2
92
3.5K
Robert Ryan
Robert Ryan@rtryan98·
@SebAaltonen Memory Aliasing is allowed but it has some constraints (#resources-memory-aliasing" target="_blank" rel="nofollow noopener">khronos.org/registry/vulka…). GPU copy from buffer to compressed block works as well.
English
0
0
1
0
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
Our virtual texture implementation on consoles was directly writing RGBA32_UINT data on top of BC blocks. But this wasn't allowed in PC DirectX. BC views are not compatible with uint views. Have to use CopyResource to do GPU->GPU copy. DirectX allows GPU copy between int->BC.
English
2
0
3
0
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
Does Vulkan support directly writing to ASTC texture in compute shader? Can I have a RGBA32_UINT view (128bit) to a ASTC texture? Or do some GPU vendors have different tiling layout between 128bit uint and 128bit ASTC blocks? Does GPU->GPU copy cmd in Vulkan support int->ASTC?
English
3
1
8
0
Robert Ryan
Robert Ryan@rtryan98·
@SebAaltonen According to #choosing-a-present-mode" target="_blank" rel="nofollow noopener">github.com/KhronosGroup/V… there isn't a way to disable vsync on android due to the GPUs not having said capabilities
English
0
0
1
0
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
Is there any way to disable v-sync on Android? VK_PRESENT_MODE_IMMEDIATE_KHR renders at 16.6 ms.
English
8
0
5
0
Robert Ryan
Robert Ryan@rtryan98·
@SebAaltonen Don't know if available on Android but you can try using VK_EXT_validation_features and enbale VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT.
English
1
0
0
0
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
How do I run vkconfig for Android? I want to enable synchronization validation in the validation layer.
English
1
0
0
0
Robert Ryan
Robert Ryan@rtryan98·
@SebAaltonen @dan_dreher_ @AceStapp The tutorial landscape for Vulkan really is dreadful. The only way to learn it really was to look around for any blog-post possible that goes more into detail about whatever you're looking for.
English
0
0
0
0
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
The Vulkan triangle sample I have been editing crashes if frame rate drops below 10 fps :) vkWaitForFences(device.device_, 1, &render.fence_, VK_TRUE, 100000000); 100000000 ns might feel like a big number, but it's only 0.1 seconds :)
English
8
3
56
0
Robert Ryan
Robert Ryan@rtryan98·
@MartianDays Simply said, you no longer have to create a renderpass if you want the same functionality of a renderpass with a single subpass.
English
0
0
1
0