chena

502 posts

chena

chena

@chena_cpp

graphics programmer

شامل ہوئے Mayıs 2015
898 فالونگ75 فالوورز
Roman Kuznetsov
Roman Kuznetsov@rokuz7·
@chena_cpp @CorporateShark I should probably do a proper write-up. Anyway, I plan to open-source it so you can play with it. In a nutshell: I built a voxel grid and cluster lights by “importance” - the 8 most important light source indices per cluster, with all the rest “tail” stored as a SH decomposition.
English
2
0
1
48
Roman Kuznetsov
Roman Kuznetsov@rokuz7·
My modest attempt at clustered lighting with irradiance volumes. Fully GPU-driven Vulkan powered by @CorporateShark’s LVK. Insanely fast! 256 light sources at 0.43ms per frame.
English
1
0
17
3.8K
chena
chena@chena_cpp·
@_3Leon @AhomiGoi How to process the volume boundary?If a person half in volume, half outside.
English
0
0
0
34
Leon
Leon@_3Leon·
Normal density volumes does not work the same. It does not place probes right at the edge of the volume either but has to be grid locked - this means that it can still leak lighting. It also does not work for the normal GPU lightmass, only works on cpu lightmass My system is local, so if someone is inside one volume, they physically can’t reach light that is baked outside the volume, meaning if I place a volume inside a room, it can not leak if I am close to a wall no matter the cell size due to the fact that it can’t look at lighting outside the volume. To handle blending between them there is a fade slider as well. The probes are also not placed to a global grid that needs to subdivide, they are also local and are placed at the volumes bounds and only cares about the volumes size. So another difference is that it is not some overarching brick system only allowing 3 mip levels, mine has how many cells as you want per volume and not tied to a world coordinate grid. Sorry for the wall of text, just wanted to explain a bit in detail 💪
English
2
0
4
416
Leon
Leon@_3Leon·
Nearing completion on my custom UE5 volumetric lightmap probe system that is volume based (for baked environments). Uses GPU lightmass as base and then a custom per volume probe system - Completely eliminates light bleeding due to per area control. Allows for blending between volumes and custom resolutions in custom areas. Will see if i can make this into a plugin - currently this is a full engine fork so i am unsure if i can make it happen! Still some things left before i can call it feature complete but currently its working exactly as intended! Fully artist controlled both visually and optimization speaking, no more auto probe placement that is affecting the whole level 💫 #UnrealEngine5 #UE5 #GameDev
English
15
52
597
80.5K
chena
chena@chena_cpp·
@rokuz7 @CorporateShark What is the density of the irradiance volumes probe?With so many dynamic lights, how do you achieve such a fast rendering speed?
English
1
0
0
80
chena
chena@chena_cpp·
@Toyojiro3619 The grass animation looks so natural. How did you make it?
English
0
0
0
84
Toyojiro
Toyojiro@Toyojiro3619·
もう少し回顧録。Interactable grass material です。Material function paratemer で風の向きや速度、メッシュの曲げ具合を調整出来ます。頂点データにピボット座標を仕込んだり、Render Target で風強度マップを生成したり、結構苦労した。 #UnrealEngine5 #UE5 #GameDev #IndieDev #ゲーム制作
日本語
2
24
220
8.8K
Cody Bennett
Cody Bennett@Cody_J_Bennett·
WIP atmosphere implementation of "Production Ready Atmosphere Rendering" (Hillaire 2020) with ARC coefficients using Slang & WebGPU. On the ground, an RGBA16F 200x100 sky-view LUT is sampled, but in space, I raymarch for per-pixel transmittance at higher precision.
English
2
1
54
15.3K
Sergei Panin
Sergei Panin@PS_Leoluch·
But they do pretty dense meshes, use a lot of unique geometry and do pipelines which will make a lot of people very upset . And their shaders are not complicated - it is pretty smart packing and good use of tech 3 texture sample triplanar with 4 material blend is opposite of that . And that's my point
English
2
0
1
340
Sergei Panin
Sergei Panin@PS_Leoluch·
One of the most dumb decisions I see - going low poly and making complex material layering and a lot of high res textures. Going with dense geometry is the easiest way to do high fidelity realistic content. It is not important how many polys you have if each of them are expensive to render
Yevhen Karpenko 🇺🇦@CaptainGPU

Як би це парадоксально не звучало, але 1 мільйон вершин, займає менше пам'яті ніж 4к текстура. Вершина з позицією, нормалью, UV, тангентом та vertex color = 12+8+12+16+12 = 60 байтів. Мільйон вершин ~57.22 МБ. Текстура розміром 4096 × 4096 у форматі RGBA8, це рівно 64 МБ.

English
16
42
522
80.3K
HDR Game Analysis
HDR Game Analysis@HDRgameAnalysis·
Short HDR setup guide for #Pragmata on PS5 and PS5 Pro. PC gamers should use the RenoDX HDR mod. Max Brightness: This is what the game will output in max brightness at different settings on the max brightness slider. Set it to what your display can do on a 2-10% window. 5 clicks: 325 nits 6 clicks: 400 nits 7 clicks: 400 nits (545 nits) 8 clicks: 700 nits 9 clicks: 700 nits (795 nits) 10 clicks: 865 nits 11 clicks: 900 nits 12 clicks: 940 nits 13 clicks: 940 nits 20 clicks: 940 nits You can only get 545 nits at 7 clicks and 795 nits at 9 clicks if you also move the min brightness slider from left to right and back again. Or the game simply will output 400 or 700 nits. Its a strange error. Black levels: Everyone should set the min brightness slider all the way to the left. Paper White (brightness): The brightness slider is adjusting the overall brightness of the game, also called paper white. Start by setting to minus 5 from neutral. Then the game will output 203 nits paper white. That is what most probably will prefer for 700-940 nits max brightness. If minus 5 is too dim for you, then use neutral. Here the game will output 230 nits paper white. Don't go lower than minus 5 on displays capable of 400-700 nits. Here the game will decrease paper white down to 185 nits (at 400 nits max). Probably to make room for highlights above the midtones. But ultimately set paper white (brightness) to what looks most natural to you.
HDR Game Analysis tweet media
English
4
8
73
10.1K
HDR Game Analysis
HDR Game Analysis@HDRgameAnalysis·
@HeavyMetalRMN I don’t know why its 940 nits. I only look at what the game outputs. How its all done by the game engine is something I know very little about and I can’t go into the code and check.
English
1
0
0
286
chena
chena@chena_cpp·
@andkalysh This seems to require modifying the engine source code. Is it possible to release it as a plugin?
English
1
0
0
34
AK
AK@andkalysh·
More experiments with #UE5 - Custom Render class. Decided against changing Shading Path as it has deep dependencies, this is easier for now. #UnrealEngine5 #gamedev
AK tweet mediaAK tweet mediaAK tweet media
English
1
1
27
2.3K
Filippo Tarpini
Filippo Tarpini@FilippoTarpini·
Perspective Correction (lens distortion) off vs on. It has a huge impact in ultrawide, but helps a lot with 16:9 too. Screenshots don't do it justice, but browsing the world in FP feels much more natural. This specific matrix doesn't emulate cameras distortion, but is designed for perception. The implementation is borrowed from the brilliant Fubax.
Filippo Tarpini tweet mediaFilippo Tarpini tweet media
English
3
1
5
1.4K
Filippo Tarpini
Filippo Tarpini@FilippoTarpini·
If you weren't aware, a few years ago I mage a gigantic mod for Prey that kickstarted the Luma Framework project! Mod adds HDR, DLSS/FSR, GTAO, improves SSR and shadow, perspective correction, 8k & Ultrawide support and a billion other things 🙂. Digital Foundry worthy video from JDSP here: youtube.com/watch?v=15c1SK…
YouTube video
YouTube
English
16
38
401
45.7K
chena
chena@chena_cpp·
@andkalysh How did you perform the interpolation for the SH3 coefficients?
English
0
0
0
58
AK
AK@andkalysh·
Coming in UEX 2.6: - ZH3(Activison) Improvements for LPV SH - LPV for forward rendering - Rendering module overhaul. - Small fixes Image below UEX2.5.8 compiled for PS5 with LPV on forward rendering path. #UE5 #UnrealEngine5 #gamedev
AK tweet media
English
2
1
17
1.4K
chena
chena@chena_cpp·
@MR3Dev The vistas are great and the clouds look solid but a bit blurry, while the assets and lighting aren't very high quality
English
0
0
0
13
MR3D-Dev
MR3D-Dev@MR3Dev·
Anyone who thinks Crimson Desert has amazing visuals has not played a game since the launch of PS4
English
1
0
1
199
chena
chena@chena_cpp·
@topotoylabs "each tile is self-contained with all the information it needs about itself and its neighbors", cool, how?
English
1
0
1
27
Topotoy Labs
Topotoy Labs@topotoylabs·
Geo-morphing in my engine is designed so each tile is self-contained with all the information it needs about itself and its neighbors. No cross-tile lookups at boundaries.
English
2
0
5
149
chena
chena@chena_cpp·
@SebAaltonen @dkharms_ It seems to be just reducing the permutation explosion caused by state changes, but most permutation explosion is caused by shader static condition branch, state don't change.
English
0
0
0
25
Sebastian Aaltonen
Sebastian Aaltonen@SebAaltonen·
The PSO explosion has grown so much that today we need massive cloud servers to deliver the PSOs. Each vendor has their own solutions. We should fix the root cause instead of building this massive infrastructure. tomshardware.com/pc-components/…
English
14
22
218
13.7K
chena
chena@chena_cpp·
@panoskarabelas Did you use aftermath? breadcrumbs seems can't get more detailed info.
English
0
0
0
370
Panos Karabelas
Panos Karabelas@panoskarabelas·
If you have no GPU breadcrumbs, implement them, yesterday.
Panos Karabelas tweet media
English
3
2
52
5.1K
chena
chena@chena_cpp·
@SoftEngineer Did any of the talks mention shadow culling? Thanks.
English
1
0
1
80
Alex Goldring
Alex Goldring@SoftEngineer·
Doom Etarnal and its predecessor were ultra-optimized towards light counts. There are great presentations for both from SIGGRAPH. Elernal more-so. Makes sense that the team would push it as far as it goes. As for TDA - I guess part of it is the open-world(-ish) nature of the game. Unless your game is super-duper dark, it's actually really hard to make good use of local lighting in outdoor scenes. If you take a good-looking open-world game, they typically find ways to cover up the sky to create good environment for varied lighting. Such as a dense forest with occasional clearings and tall brush. Other games lean into making the landscape look beautiful, but that's not a lighting thing anymore. If you have walls and a ceiling - it gives you so many options for lighting fixtures. As humans we know that the sun is really freaking bright, so any light sources outside can't be too bright or they will look fake. Sad times. So yeah, you have to tone down main directional light source and make it overcast, push towards twilight and night as far as possible. Most games that have a day/night cycle cheat by making sunrise and sunset last several times longer proportionally than in real-life, because lighting is more interesting during those times.
krowan, no.1 Source2 lover@krowan_47

@SoftEngineer damn, you buried my point. My guess is that, when I wrote it, I was comparing it to Eternal in my mind. There was light everywhere, making the details stand out. This is not happening in TDA, and the details are being kept in the dark, that's maybe why I don't appreciate the game

English
1
0
14
2.9K
chena
chena@chena_cpp·
@FilippoTarpini Which decompiler did you use? I can't find a decompiler support dxil.
English
2
0
0
61
Filippo Tarpini
Filippo Tarpini@FilippoTarpini·
@chena_cpp Yes. There's a few decompiler around for multiple shader model versions. Plus, as I said, Musa has reverse engineered the previous games. Pragmata wasn't much different.
English
1
0
1
213
Filippo Tarpini
Filippo Tarpini@FilippoTarpini·
How does Resident Evil Requiem, and more generally the latest RE Engine games, handle HDR? Here’s a technical breakdown of the defects we think it has. Obviously the game has HDR grading so that's already great in itself, and the on final screen results are good. For context: I’m a big RE fan, so this is not meant as hate or criticism; just a technical analysis! @MusaRenoDX, a fellow modder and collaborator, has been making mods to improve HDR and grading most of their games, and did for this one too (REverse engineering and replacing game shaders). They are pretty popular in the PC gaming community! Biggest problems: - Wrong transfer function used for SDR, which shifts the look unintentionally in SDR only, this gets baked into the default look of the game and assets, and is not transposed in HDR, hence HDR has a very different look on shadow (more raised). - HDR LUTs are pre tonemapped to 1k nits, and then re-tonemapped to your display peak. This means that if you set it to 1k nits, you actually get less as it tonemaps twice. This also means you can't get more than ~1k nits. - Improper paper white scaling. The user brightness is scaled in the wrong place, which skews all the colors sampled from the LUT. For example if the LUT tinted shadow red and midtones blue, if you double you brightness setting, shadow will start to be tinted blue, which breaks the game intended look. Minor problems: - They use separate LUT files for SDR and HDR, including one for each SDR gamma/OETF settings. The SDR one bakes in tonemapping, while the HDR one does display mapping after. A IMO simpler and more reliable workflow would be to have a single HDR LUT and neutrally compress to SDR or HDR at the end. - Setting the Gamma/OETF to Rec.709 apparently causes major banding. Either way it shouldn't be used if as it's not a transfer function used by displays. - LUTs input is in the AP0 (ACES storage) color space which means much of the input range is wasted as the game renders in Rec.709, a much smaller gamut. - There's no separate control for UI brightness which isn't ideal for UI visibility or OLED in general. - UI transparency blending looks a bit different between SDR and HDR which makes it unreliable from an artistic point of view, but it's not bad here. Previous games used SDR LUTs all the way and stretched them to HDR with sub optimal math, hence in HDR you'd have some weird hue shifts on shadow and broken gradients. They recently improved on that. The tonemapper here seems to be ACES (per channel + hue shifts) but we can't confirm as it's within LUTs. I really wish I could reach out to CAPCOM :D! SDR vs HDR pics.
Filippo Tarpini tweet mediaFilippo Tarpini tweet media
English
4
14
147
23K
chena
chena@chena_cpp·
@eclmist Hi, how to use dx12 RT in wpf? Thanks.
English
0
0
0
20
Samuel Huang
Samuel Huang@eclmist·
Last weekend I decided to write an editor for my DX12 renderer. I started a WPF project, but was immediately disappointed by the lack of a built-in window docking system. So I wrote one in🙂
GIF
English
1
7
49
0