[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: file.png (296 KB, 620x348)
296 KB PNG
How do we fix this?
>>
>>108957518
By not playing shit games, it's really simple, just stick to anything before 2015.
>>
>>108957538
There were a lot of bad games made before 2015.
>>
Have a three times larger download with precompiled shaders.
>>
>>108957538
I'd say up to 2019-2020. Although there were less good ones later on, they existed. Enough to make PS4 worth having. Jailbroken ofc.
Actually owning jailbroken x360 and ps4 is kinda cool. You'd have the entire golden age of gaming in those two boxes.
>>
>>108957600
it's DX12/Vulkan specifically that force shader compilation.

It allows for very good optimizations, compared to DX11 pre compiled shaders, but you have to compile shaders at least once
>>
>>108957518
you don't, the alternative is a stutterfest
>>
>>108957538
good stuff still comes out but now you have to dig through literal mountains of trash to find them, I wish Steam stayed with their old greenlight model.
>>
>>108957642
>I wish Steam stayed with their old greenlight mode
It was probably exploited and broken, there's a reason they changed things. They usually don't touch what works.
>>
>>108957518
by having standardized hardware like a Steam Cube
>>
>>108957518
By serving precompiled shaders for every GPU, I guess.
>>
>>108957628
>but you have to compile shaders at least once
That's what I don't get. Why is it that it has to compile them every time you launch a game? You'd think they'd design their API's to fetch every shader that you'd be using in a game, compile them once, and then store them in a cache to fetch from? As well as automatically running a shader compile in the background after you install the game, get it done before you jump into it. Then people wouldn't complain about shader compilations, one and done affair.
>>
>>108957592
This is completely false.
>>
>>108957518
we cant
and it's actually a good thing
>>
>>108957751
that's a windows/gpu driver issue
on linux, shaders are compiled once, then stored in a cache directory so you don't have to recompile each times
>>
>>108957872
Nvidia drivers have a shader cache as well as a shader pre-compiler on Windows, so idk I don't play modern games
>>
File: IMG_0882.jpg (322 KB, 2336x1320)
322 KB JPG
Don’t buy poverty tier CPU’s
>>
>>108957909
Why?
>>
>>108957518
Don't play slop made on UE4 and 5
>>
>>108957872
>>108957751
DXVK/Vulkan has a feature that saves the shaders to a different file and if you update your driver's or delete the game or whatever it will rebuild the state cache from it at startup rather than at draw time.

As far as I know DirectX doesn't have this feature out of the box (on PC at least) the developer has to code it in or submit their game to the Advanced Shader Delivery program so Microsoft does it for you.
>>
>>108957909
>almost 3 minutes to start the game on a $600 CPU
LMAO
>>
>>108957958
But only the first time.
>>
>>108957909
nuGSC slop isn't canon :)
>>
>>108957518
include the compiled shares in the game install
>>
>>108957757
There were, and there will be.
>>
>>108957518
use source engine all the shaders have to be pre compiled
>>
>>108957751
>Why is it that it has to compile them every time you launch a game?
You don't. You only have to recompile if the shaders were modified or you installed new drivers or hardware.
>>
>>108957518
I feel like I’m the only one that doesn’t even know why we need shaders, let alone why we need to wait to compile them.
>>
>>108957518
AAA games are unoptimized trash.
>>
>>108958270
obviously they'd only ship compiled shaders if they could.
the reason this is a thing at all is because gpus aren't a fixed set of backward-compatible and cross-vendor instructions like cpus are. even with cpus if you want to put your game on a different kind of cpu, you need to compile the cpu code for the other kind of cpu.
because gpus and drivers are compatible with each other, shaders (code that runs on the gpus) need to be compiled for your specific gpu and driver.
>>
>>108958313
AAA games are amazing. I play them all.
>Ohh NOOO I TO WAIT FOR MUH SHADERS ONE TIME AND NEVER AGAIN AHHHHHHHHHHHHHHHB
>>
>>108958325
>because gpus and drivers are compatible with each other
aren't*
>>
>>108958325
thats retarded just use backwards and forwards compatible shaders and add them precompiled in every game. by that logic we'd just ship the source code of games and have people compile them on their own computers absolute retardation.

how big are these shader files? games routinely ship duplicate asset files of levels and uncompressed video files of cutscenes to increase the install size to many hundreds of gigs is including a couple different variants of precompiled shaders that much of an effort?
>>
>>108957592
name one
>>
>>108958326
Learn reading comprehension.
Games can be good and some of them are, but they're still unoptimized trash compared to before when they used to optimize the most they could.
>>
>>108957628
>it's DX12/Vulkan specifically that force shader compilation.
no they do not
>>
>>108958395
this thread is literally complaining about a heavy optimization technique that games do
>>
>>108958388
graphics cards just never had the same issue as cpus with regards to being the same as each other. gpus were around for years before programmable shaders even became a thing they could do, and by the time they became a thing gpus were already very different to each other, and also for a long time shaders were simple and small and you didn't have to wait any noticeable amount of time for them.
while it's only in recent times with games using hundreds of fat-ass shaders for everything that can take minutes to pre-compile, shaders have been a thing for like 20 years now and people didn't complain then
>>
>>108958420
>actually shaders becoming so large that they take an annoying amount of time to compile and have to be pre-computed to reduce excessive stuttering means they're MORE optimised
oh is that what it means?
>>
i swear to god the first unreal engine 3 game roboblitz or whatever had shader compilation during game install rather than gameplay
>>
>>108958302
multiplying matrices (the thing that lets you see your bing bing wahoos in 3D) is much faster using a parallel processor like a gpu
it's very slow on cpus. so games use these gpu programs that we call shaders
>>
File: 1739523076244453.gif (35 KB, 158x200)
35 KB GIF
imagine playing sonic the hedgehog or someshit and the level stutters every 5 seconds because it has to load a new fish or a fucking ring
>>
>>108958302
the name is a bit confusing since they were named back when all they could do was do something to chance the colour/shade of a pixel, hence pixel shader. over time they could do more stuff, vertex shaders, compute shaders... all just called collectively "shaders".
what they are are programs that run on your gpu itself. since gpu architectures are constantly changing, a shader needs to be compiled for your specific gpu series, since the exact method of doing what the shader code wants to do varies between gpus and gpu drivers
>>
>>108957592
Yeah, but also good games, whereas after it there's like a good game every two years and it's usually not as good as what came before
>>
>>108957593
Yeah internet and storage are cheap
>>
>>108958326
>AAA games are amazing
>bad gameplay
>bad writing
>bad music
>bad aesthetics
The average AAA game has absolutely nothing to offer. If you could only playing AAA games you'd be better off dismissing vidya entirely and just playing Chess.
>>
>>108958496
Everyone has a CPU. Software rendering ftw.
>>
Why doesn’t the PS5 need to compile shaders for games but PC players need to do it for the same games?
>>
>>108958563
Perhaps all PS5 units have the same GPU, so you can pre-compile the shaders.
>>
>>108958563
because the ps5 has a fixed gpu. ps5 games can ship compiled shaders for the ps5 gpu and that'll do it.
>>
>>108958393
Bad Rats
Half Life 2 Episode One
Destiny
Forza Motorsport 3
Your Favorite Game
>>
>>108958457
they take a long time to compile because there are tens of thousands of them.
they're instantiated per-material to remove branches from the pipeline, drastically raising performance
>to reduce excessive stuttering means they're MORE optimised
obviously. do you think before you type? or are you so lost in performative outrage you've shut your brain off at this point?
>>
File: a.jpg (385 KB, 1920x1080)
385 KB JPG
>>108958623
>Your Favorite Game
>>
>>108958597
>>108958618
Can you explain why that matters? Shaders don’t care about how many cores you have
>>
>>108958926
Because it's already complied on disc, and blue ray is large.
On PC you download comparatively smaller file, an then compile.
>>
>>108958926
it matters because shaders need to be built a per-gpu-microarchitecture basis. since each ps5 has the same gpu in it, they will all produce the same compiled shader binary, so you just ship that
>>
As far as I know on OpenGL compiling shaders on the fly was always the norm and it never was a problem like this
>>
>>108959268
games for a long time just compiled shaders on first use. this worked fine when shaders were small and few.
nowadays shaders are big and many, this by itself isn't bad... it's good that more work is being put on the gpu where available.
it's also worth noting that it's not the fault of shaders that they can't be prebuilt. we have that luxury with cpu code only because through a series of unintended consequences.
cpu and gpu programming came along decades apart from each other and under very different cultures and circumstances. we've just settled on the idea that compiling gpu code on-demand is acceptable (since for most of its' life this was quick anyway), which allows gpus to not worry about backward compatibility with old shader binaries. this is a good thing, backward compatibility is as much a curse as it is a blessing. consumers will only recognise the blessing part but they don't make the products so they can't always get their way.

shader precompilation is itself an answer to shader compilation causing stutters, perhaps in the near future there'll be another solution. one option could be a "crowd" option, that is, some system where someone with a particular setup compiles them, and their shader binaries are distributed over the internet to others with the same setup. i've seen this kind of with modern console emulators, like i tried a nintendo switch emulator a few years ago and saw you could download packs of pre-discovered shaders which greatly reduces shader cross-compilation stutters, same thing could be done through steam or whatever.
>>
>>108957518
wait for Vulkan to accumulate enough extensions to the point where you can go back to writing your shaders like it's OpenGL. already half-way there.
also seriously, games need to stop doing this shit. if your driver is this fucking slow that you can't on-demand compile shaders, it's shit. I literally do not have this problem with modern Mesa and DXVK / VKD3D
>>
Part of the problem is the common way shaders are created in UE slop engines (others too like frostbite) now doesn't make proper use of branching via uniforms and instead they mash together strings to create shaders for each branch condition or sometimes even baking in float/int values. This leads to huge numbers of shaders being generated to fulfill all the possible branch conditions instead of relying on it at runtime. It's probably more performant in an average case but you get things like shader compilation stutter if the precompile doesn't catch all the shaders for some reason and you get huge numbers of shaders.
>>
>evaluation at compile-time is good because optimization
>precompiling shaders is bad though

?
>>
>>108958393
nfs undercover



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.