Skum idé - Adaptiva grafikinställningar?

Permalänk
Medlem

Skum idé - Adaptiva grafikinställningar?

Tjenare!

Satt och filosoferade lite på lektionen idag och fick värdens skummaste idé, adaptiva grafikinställningar. Tänkte på hur när jag spelar far cry 4 så kan fpsen variera från mid 40 till upp över 90 beroende på vart på kartan jag är någonstans. Tänkte då att man kan sätta en fps gräns man inte vill gå under, förslagsvis 60 om man har 60hz skärm, och sedan ändrar spelet hela tiden grafikinställningarna för att hålla sig över denna gräns men ändå hålla grafiken snygg. alltså att den höjer inställningarna där den kan, men sänker vid tunga områden så att man ändå kan hålla fpsen uppe.

Detta är som sagt bara en skit skum idé jag fick på lektionen idag och skulle vilja få igång en diskussion runt detta.

Är detta något som finns? och vad har ni för åsikter kring detta?

Har säkert lagt denna tråd på fel ställe så isåfall får någon mod vara snäll och flytta den

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem

Jag tycker om din idé, lite som när YouTube sänker kvaliteten på videoklippet när hastigheten inte räcker till. Sen hur genomförbart det är låter jag någon annan svara på.

Edit: Vissa spel/inställningar kräver att man startar om spelet, så i dessa fall lär det inte gå, men annars så tror jag det är genomförbart.

Permalänk
Medlem

Finns det inte något liknande i World of Tanks?

Visa signatur

CPU : 12900KS GPU : 3090 Strix OC RAM : G.Skill 32GB 6600MHz 34-40-40-105SSD : 2st SN850 1TB Bildskärm 1: Strix PG279Q 1440p@165Hz G-SYNC Bildskärm 2: Asus VG27AQ 27" 1440p@165Hz Bildskärm 3: Asus VG27AQ 27" 1440p@165Hz Vattenkylning CPU,GPU och RAM, 3*360 rad

Permalänk
Medlem

Vid första tanke hade det blivit svårt ifall spelet då fick lov att ladda om texturer i olika storlek. Men något som kantutjämning etc hade fungerat jättebra tror jag.

Visa signatur

Corsair 750D | i5 4670k | ASUS Z87-a | 8GB Corsair Dominator | Asus GTX770-DC2OC | Samsung 840 EVO 250GB | WD 500GB X2

Permalänk
Medlem
Skrivet av reflect:

Vid första tanke hade det blivit svårt ifall spelet då fick lov att ladda om texturer i olika storlek. Men något som kantutjämning etc hade fungerat jättebra tror jag.

Förstår att detta kan bli ett problem. Borde det dock inte fungera om man har tillräckligt mycket ram att spelet laddar in ett par olika texturer. Förslagsvis medium, high och ultra och sedan ligger och växlar mellan dessa? Vet inte så mycket om hur sånt här funkar :3

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem
Skrivet av DooD:

Förstår att detta kan bli ett problem. Borde det dock inte fungera om man har tillräckligt mycket ram att spelet laddar in ett par olika texturer. Förslagsvis medium, high och ultra och sedan ligger och växlar mellan dessa? Vet inte så mycket om hur sånt här funkar :3

Om man har plats för alla så kan man väll lika gärna köra ultra bara(?)

Visa signatur

CPU : 12900KS GPU : 3090 Strix OC RAM : G.Skill 32GB 6600MHz 34-40-40-105SSD : 2st SN850 1TB Bildskärm 1: Strix PG279Q 1440p@165Hz G-SYNC Bildskärm 2: Asus VG27AQ 27" 1440p@165Hz Bildskärm 3: Asus VG27AQ 27" 1440p@165Hz Vattenkylning CPU,GPU och RAM, 3*360 rad

Permalänk
Medlem
Skrivet av Boozfob:

Om man har plats för alla så kan man väll lika gärna köra ultra bara(?)

Det krävs väl mer än bara ram för att klara av ultra? Även om man har plats för det så måste väl grafikkortet orka med det? Som sagt, vet inte så mycket om hur sånt här funkar. :3

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem

Det är relativt enkelt att genomföra på vissa delar av de grafiska inställningar, så som post-processing, texturer och andra effekter.
Dock blir det svårt på andra funktioner så som AA som kräver en del jobb för att komma igång, särskilt när man växlar uppåt.

Men för just texturer så hade man kunna köra mipmapping skalan dynamiskt beroende på hur mycket minne som finns tillgängligt på grafikkortet. Spelet kan begränsa partikeleffekter dynamiskt relativt enkelt också. Samt post-processing effekter så som depth of field, motionblur etc kan man skruva upp och ner effekten på beroende på en prestanda kvot.

Som Boozfob nämnde så använder vissa spel redan detta i någon utsträckning. Men sen får man tänka på att det blir ytterligare beräkningskraft som behövs för att reglera detta dynamiskt hela tiden, framför allt om det ska vara steglöst och inte synas så tydligt att nu byta spelet grafikinställningar, man skulle ju helst vilja att detta händer ganska osynligt.

Sen finns ett annat problem för att kunna dölja det och göra det mer osynligt så måste ju spelet veta vad spelaren ska göra innan dom gör det för att minimera synligheten av förändringen. Man kan ju veta att i detta området så drar spelet mer prestanda och göra ändringen försiktigt ju närmare man kommer området. Annars blir det liksom "Oj nu sjönk vi under 60 FPS, bästa att skruva ner grafikinställningarna" och det kommer bli uppfattat som ett lag i sig.

Annars är det ju ett intressant sätt att lösa problem som en del spel kan ha beroende på olika scener och platser.

Visa signatur
Permalänk
Medlem
Skrivet av Arazand:

Det är relativt enkelt att genomföra på vissa delar av de grafiska inställningar, så som post-processing, texturer och andra effekter.
Dock blir det svårt på andra funktioner så som AA som kräver en del jobb för att komma igång, särskilt när man växlar uppåt.

Men för just texturer så hade man kunna köra mipmapping skalan dynamiskt beroende på hur mycket minne som finns tillgängligt på grafikkortet. Spelet kan begränsa partikeleffekter dynamiskt relativt enkelt också. Samt post-processing effekter så som depth of field, motionblur etc kan man skruva upp och ner effekten på beroende på en prestanda kvot.

Som Boozfob nämnde så använder vissa spel redan detta i någon utsträckning. Men sen får man tänka på att det blir ytterligare beräkningskraft som behövs för att reglera detta dynamiskt hela tiden, framför allt om det ska vara steglöst och inte synas så tydligt att nu byta spelet grafikinställningar, man skulle ju helst vilja att detta händer ganska osynligt.

Sen finns ett annat problem för att kunna dölja det och göra det mer osynligt så måste ju spelet veta vad spelaren ska göra innan dom gör det för att minimera synligheten av förändringen. Man kan ju veta att i detta området så drar spelet mer prestanda och göra ändringen försiktigt ju närmare man kommer området. Annars blir det liksom "Oj nu sjönk vi under 60 FPS, bästa att skruva ner grafikinställningarna" och det kommer bli uppfattat som ett lag i sig.

Annars är det ju ett intressant sätt att lösa problem som en del spel kan ha beroende på olika scener och platser.

Tack för ett långt intressant svar!
Det som jag märkt i far cry 4 är att fpsen droppar ner betydligt (från 65-70 till 45) när jag är där det är mycket gräs och träd, dvs skog :P. Behöver då sänka grafiken för att det ska vara spelbart när jag är ute och jagar, men resten av kartan är inte så snygg som den skulle kunna vara. Detta skulle man kunna tänka sig någon typ av lösning på i form av det jag tagit upp i denna tråd

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem

Jag tänkte mer eller mindre precis samma som reflect skrev. Åtminstonde somliga deluträkningar borde mer eller mindre kunna ändras on the fly om föregående frames inte blir klara snabbt nog.

Visa signatur

Redbox: Asrock B650 Lightning ATX, 7800x3D -20CCO, XFX 6950XT, 2x32GB Corsair Vengence 6400 CL32, WD SN770 2TB, Corsair RMe 1000, Lian Li Lancool 216, Peerless Assassin 120 SE
Purpbox: Z87-Pro, I5 4670K@4.2, Sapphire 290 TRI-X, 2x8GB Crucial Tactical@stock, Deep Silence 1
Samsung Evo 250+500GB + QVO 1TB, 2x1TB 7200RPM backup/lagring
Det var bättre förr: E5300 2600MHz -> 3640MHz, Celeron 300A -> 450MHz

Permalänk
Medlem

fps = bilder per sekund = antal bilder dividerat med antal sekunder

Så istället för variera antalet bilder så skulle man kunna sakta ner tiden. När man får drops så saktar man ner tiden, vilket leder till att man inte märker av dropsen.
Trångsynta kritiker skulle kunna klaga över att när man spelar ett tungt spel med låg fps så kommer tiden för dig gå långsammare än för andra personer. Alltså när du har suttit och spelat i en timme så tycker resten av världen att du spelat i två (om du tidskompenserat 30 fps till 60 fps, om du kompenserar till 120 fps så har det istället tagit 4 timmar).

Detta kan såklart vara krångligt men tänk även på fördelarna. Man kan såklart göra motsatsen så i exempelvis CS där vissa ligger på 300 fps så kan man kompensera tillbaka. Du kör 4 timmar på exempelvis 30 minuter normaltid.

Men detta skulle kunna vara snäppet krångligare än det trådskaparen föreslog. :/

Permalänk
Hedersmedlem

Vad utvecklarna skulle kunna göra är att köra spelet med något program som monitorerade fps'en. På de ställen där fps'en är lägst kan de sänka mängden polygoner, minska mängden effekter, använda mindre texturer osv. För droppar det för dig så droppar det för alla, frågan är bara hur mycket.

Man skulle kunna göra programmet så att det ligger i bakgrunden och kollar detta för alla och sedan skickar informationen till någon central server som utvecklarna sedan kunde använda för att optimera.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem

Bland annat Wipeout HD till PS3 använde sig av en dynamisk upplösning där den renderade upplösningen ändrades beroende på prestandan

Edit: idtech5 har också stöd för det, den renderar i lägre upplösning men outputtar 1080p (på konsol). Carmack pratade för något år sedan på en QuakeCon att om teknologin för ögontracking går frammåt kan de ändra så att endast det man kollar på renderas med hög/native upplösning.

Permalänk
Medlem

Tror det här spelet gör så! http://store.steampowered.com/app/9200/ Inte 100% säker dock..

Permalänk
Medlem
Skrivet av Imaculent:

fps = bilder per sekund = antal bilder dividerat med antal sekunder

Så istället för variera antalet bilder så skulle man kunna sakta ner tiden. När man får drops så saktar man ner tiden, vilket leder till att man inte märker av dropsen.
Trångsynta kritiker skulle kunna klaga över att när man spelar ett tungt spel med låg fps så kommer tiden för dig gå långsammare än för andra personer. Alltså när du har suttit och spelat i en timme så tycker resten av världen att du spelat i två (om du tidskompenserat 30 fps till 60 fps, om du kompenserar till 120 fps så har det istället tagit 4 timmar).

Detta kan såklart vara krångligt men tänk även på fördelarna. Man kan såklart göra motsatsen så i exempelvis CS där vissa ligger på 300 fps så kan man kompensera tillbaka. Du kör 4 timmar på exempelvis 30 minuter normaltid.

Men detta skulle kunna vara snäppet krångligare än det trådskaparen föreslog. :/

Har ingen som helst aning hur du menar med det här. Hur menar du med sakna ner/snabba upp tiden? Ska vi börja snacka tidshopp och grejer?

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem

Förstår hur du tänker, men känns som att det inte skulle fungera. Som tidigare nämnt skulle det kännas av som lagg. Idén är bra, men låt säga att du är i en firefight, först är du i ultra, sen kommer 3000 fiender och du droppas till low, du slaktar alla och upp till ultra igen men du kastar en jävla massa granater så droppas det till medium.

Självklart överdrivning, men det kan fortfarande bli så, möjligtvis att det kan funka på små nivåer, som renderingdistanca (t.ex. minecraft) men när det gäller själva grafiken så kommer det bara kännas fel

(Kass förklarat men w/e)

Visa signatur

CPU [Ryzen 7 3800XT] GPU [Red Devil RX 5700 XT 8GB]
PSU [Antec HCG Gold 750W]
MOBO [MSI B550-A Pro]
Chassi [Phanteks Entoo Pro M]

Permalänk
Medlem

Fick inte Age of Conan typ detta, att med en inställning aktivera det så att det sänker kvaliten för att behålla mer flyt i svåra situationer.

Permalänk
Medlem
Skrivet av DooD:

Har ingen som helst aning hur du menar med det här. Hur menar du med sakna ner/snabba upp tiden? Ska vi börja snacka tidshopp och grejer?

Nejnej inga tidshopp, bara töja lite på tiden.

Permalänk
Medlem
Skrivet av Imaculent:

Nejnej inga tidshopp, bara töja lite på tiden.

Förstår fortfarande inte vad du menar, hur hade du tänkt töja tiden?

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem
Skrivet av DooD:

Förstår fortfarande inte vad du menar, hur hade du tänkt töja tiden?

Jag skojade bara.
Men det vore ju skoj om man kunde göra så.

Permalänk
Medlem

Låter som en intressant idé. Dock så kan jag tycka att utvecklarna borde lägga lite tid på att göra all områden ungefär lika tungdrivna. Naturligtvis svårt med dynamiska saker så som explosioner och många fiender, men de statiska miljöerna borde kunna vara ungefär lika.
Angående att sakta ner tiden... många äldre spel är ju låst till en viss uppdateringsfrekvens (gäller speciellt när man kör via emulator) och där kan det bli så att spelet går fortare/långsammare beroende på prestandan. Testade nyligen Wind Waker via Dolphin, och när man går från t.ex 30 till 25 fps så går allting ~17% långsammare. Även musiken och ljudeffekter går långsammare. Detta är EXTREMT irriterande, supersvårt att spela, så det är verkligen inget att rekommendera.

Visa signatur

Huvuddator: Ryzen 2700X EK HF vattenblock|32GB|RTX 3080 Alphacool Eisblock, 280 + 420 rad.
Server: AMD 3850|16GB|~3,5TB HDD|360 rad
Lullull: Rift+Touch|HOTAS Warthog|G27|PS5|Switch OLED

Permalänk

Vad jag förstått med G-sync och Free-sync är att om FPS'en ligger under skärmens refresh rate så kommer man inte känna av FPS drop. Så om man har en 144Hz skärm med G-sync kan FPS ligga mellan 30 och 144Hz utan några problem.
När g-sync skärmarna går ner i pris är det nog vad jag kommer satsa mina pengar på.

Permalänk
Medlem

Det där är rätt gammalt tänk, peter molyneux implementerade det i spelet Black & White år 2001. Det ändrade antalet polygoner och därmed belastningen utifrån rendreringsavstånd (lite primitivare än det ni diskuterar här). Det var helt galet (på den tiden) banbrytande och häftigt. Numera kör väl alla med detta. I BF4 körs ju detta hela tiden samt att nätkoden dessutom uppdaterar olika beroende på hur nära man är saker som rör sig.

Ser ut att ha demonstrerats år 2000, varning för nextgen-grafik. https://www.youtube.com/watch?v=kHcknh7uZ1E

Visa signatur

CPU: I7 4770K Grafik: Poseidon Platinum GeForce GTX 980Ti Moderkort: Asus Maximus VI Hero Z87 RAM: 16Gb Corsair Dominator Platinum CL9 Nätagg: Corsair HX1050 Gold SSD: Corsair Force GT 240Gb SSHD: Seagate Desktop 4TB Låda: Corsair Graphite 600T

Permalänk
Medlem
Skrivet av Gurk:

Det där är rätt gammalt tänk, peter molyneux implementerade det i spelet Black & White år 2001. Det ändrade antalet polygoner och därmed belastningen utifrån rendreringsavstånd (lite primitivare än det ni diskuterar här). Det var helt galet (på den tiden) banbrytande och häftigt. Numera kör väl alla med detta. I BF4 körs ju detta hela tiden samt att nätkoden dessutom uppdaterar olika beroende på hur nära man är saker som rör sig.

Ser ut att ha demonstrerats år 2000, varning för nextgen-grafik. https://www.youtube.com/watch?v=kHcknh7uZ1E

Att polygonerna ändras utifrån rendreringsavstånd är väl något rättså annorlunda mot det vi diskuterar här? Om jag förstår det rätt så minskar spelet antal polygoner på objekten utifrån hur långt borta dem är. Alltså ökar antalet och därmed kvalitén på objekt om dem kommer närmare. Känns som detta är en typ av teknik som borde kunna implementeras i det vi diskuterar här!

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Medlem
Skrivet av DooD:

Att polygonerna ändras utifrån rendreringsavstånd är väl något rättså annorlunda mot det vi diskuterar här? Om jag förstår det rätt så minskar spelet antal polygoner på objekten utifrån hur långt borta dem är. Alltså ökar antalet och därmed kvalitén på objekt om dem kommer närmare. Känns som detta är en typ av teknik som borde kunna implementeras i det vi diskuterar här!

Ah, du missar poängen, det här med adaptiva grafikinställningar som är vilkorstyrt är intet nytt. Det har diskuterats i evigheter. Det "senaste" var adaptiv nätkod som jag råkade ut för, det var rätt nytt... typ i julas.

Jag pekade bara ut ett litet exempel. Jätteroligt att ni har något att prata om som ni tror är fräscht. Kul för er.

Visa signatur

CPU: I7 4770K Grafik: Poseidon Platinum GeForce GTX 980Ti Moderkort: Asus Maximus VI Hero Z87 RAM: 16Gb Corsair Dominator Platinum CL9 Nätagg: Corsair HX1050 Gold SSD: Corsair Force GT 240Gb SSHD: Seagate Desktop 4TB Låda: Corsair Graphite 600T

Permalänk
Medlem
Skrivet av Gurk:

Ah, du missar poängen, det här med adaptiva grafikinställningar som är vilkorstyrt är intet nytt. Det har diskuterats i evigheter. Det "senaste" var adaptiv nätkod som jag råkade ut för, det var rätt nytt... typ i julas.

Jag pekade bara ut ett litet exempel. Jätteroligt att ni har något att prata om som ni tror är fräscht. Kul för er.

Hehe, trodde detta var något som inte fanns. Men om detta har funnits så länge, varför ser man det inte i dagens spel?

Visa signatur

CPU: i5 4690k @ 4.2ghz | Kylare: Hyper 212 EVO | MB: MSI Z97-G45 | RAM: Corsair 16GB | GPU: Asus 760 2GB | OS SSD: Intel 530 120GB | HDD: Seagate 1TB | SSD: Samsung EVO 250GB | PSU: CX600M | Chassi: Define R4 window | Fläktar: 4x140mm

Permalänk
Inaktiv

Intressant, är rätt säker på att det sker till viss del i dagens spel, men undrar hur mycket. Det märks ju inte av speciellt lätt i alla spel, Skyrim är väl ett av de få man tydligt märker att det inte renderas högupplösta texturer på allt för långa avstånd. Någon som har koll på ifall det finns spel där det är lättare texturer som renderas beroende på hur långt avståndet är? T ex 4k på 20m 3k på 30m, 2k på 40m (ingame mått alltså). Det låter rätt vettigt enligt mig då man troligen inte skulle märka någon större skillnad, om man inte försöker.

Permalänk
Medlem
Skrivet av RSX:

Tror det här spelet gör så! http://store.steampowered.com/app/9200/ Inte 100% säker dock..

Stämmer bra.

Permalänk
Medlem
Skrivet av FuzzyMcFluffens:

Vad jag förstått med G-sync och Free-sync är att om FPS'en ligger under skärmens refresh rate så kommer man inte känna av FPS drop. Så om man har en 144Hz skärm med G-sync kan FPS ligga mellan 30 och 144Hz utan några problem.
När g-sync skärmarna går ner i pris är det nog vad jag kommer satsa mina pengar på.

Du kommer fortfarande att märka FPS drops, men du kommer inte att få tearing och andra problem som uppstår när man har en annan FPS än skärmens uppdateringsfrekvens.

Visa signatur

Speldator: i5 4670k stock | 8GB ram | Asus Z87-plus | Xonar Essence STX | SSD: Intel g2 , Samsung 830 256gb | R9 290 Tri-x | Define R4| Win 8 | Noctua nh-u12p | Qpad Mk-50
marinlik.wordpress.com/ Min blogg för nedbrytning av spel och diverse andra artiklar om NFL
500px.com/niclasbrundell

Permalänk

Detta fast förenklat finns ju i wow. Jag tex kör alltid på ultra ute i "världen" för finaste upplevelse men i raider slår inställningarna automatiskt över till medium så jag inte ska missa något pga fps drops.

Visa signatur

Ryzen 5600x - 3060 Ti - 16Gb ram
Soffgaming: Nintendo Switch, PS4 PRO+Vr
Ringa: iPhone 11