Vinnaren i pepparkakshustävlingen!
  • 4
  • 5
2024-04-01, 15:09
  #49
Medlem
BeneathTheSurfaces avatar
Citat:
Ursprungligen postat av BigBusiness
Eh va? Det där får du nog formulera om. 4k och 5k definieras just av de olika upplösningarna.

Kan inte du länka till något som försöker förklara din ståndpunkt i stället?

Du fortsätter påstå saker som inte stämmer om vad jag tycker. Varför gör du det?

Jag säger inte att skalning innebär katastrof. Jag säger att vissa påstår sig störas av problemen med skalning medans andra, t ex du säger att det i praktiken inte spelar någon som helst roll.

Själv tänker jag att det kanske inte är värt pengarna att gå från 1440 till 4k. Jag skulle gärna vilja jämföra i veligheten.


Jag säger även att i det skalade läge vi pratar om ritar MacOS på en 5k buffer som sedan med GPUn skalas ner till formatet för 4k innan bilden skickas till skärmen.

Windows skalar gui-komponenterna till en storlek vald i inställningarna och låter program rita på en buffer som stämmer med vald upplösning, som i normala fall är en som skärmen klarar.

Är det fel får du gärna länka till något som berättar att Windows skalar på samma sätt som macOS (vilket du har sagt). Dvs arbetar med en buffer som är större än skärmens faktiska upplösning, men som skalas ner till skärmens faktiska upplösning.



Och sen förklara gärna varför Apple varnar när man väljer en vad de kallar ”skalad upplösning” men inte annars.

Vad spelar det för roll vad du ”tycker stämmer”?

Du saknar ju uppenbarligen grundläggande kunskap om grafik överhuvudtaget, jag förklarar en sista gång nu sen ger jag fan i svara dig för detta börjar bli väldigt jävla tröttsamt.

1. Grafik-chippet skiter fullständigt i vad det är för enhet som sitter på andra sidan HDMI/USB-C/DisplayPort anslutningen (det gäller samtliga system) den bryr sig om vad den blir efterfrågad att mata ut för signal.
2. macOS matar ALLTID ut en signal i den upplösning som skärmen säger sig vara.
3. Om systemet identifierar en retina upplösning så gör den alltid 4:1 supersampling
4. Kopplar du in en 4k skärm så rapporterar den sig som 3840x2160, systemet identifierar detta som HiDPI/Retina och renderar till en 3840x2160 buffer som sedan skalas ner till 1920x1080 för att sedan skala upp den igen till att matcha signalen dvs 3840x2160.
5. Kopplar du in en 5k skärm så rapporterar den sig som 5120×2880, samma som ovan fast 2560x1440 och sedan tillbaka till 5120x2800.
6. Ändrar du skalningen på 4k skärmen tex så du väljer ”ser ut som 1440p” så sker exakt samma sak som i 5 förutom att ”tillbaka till 5120x2800 blir tillbaka till 3840x2160”, det är effektivt ingen skillnad- men du hakar upp dig på skalningsmismatchen men ”uppskalningen” är att rita en texturmappad quad i ortographiskt perspektiv.
7. Eventuell prestanda skillnad ligger i att en högre upplösning innebär mer data som behöver skyfflas, det har ingen som helst betydelse om du har en skärm som fysiskt kan visa 8k, 5k eller 4k, kostnaden ligger i pixelmängden oavsett den är fysisk eller ”virtuell”.
8. Den sista skalningen är i stort sett gratis, allt jobb med HiDPI behöver göras oavsett man gör denna. Det enda scenario som är något billigare är att köra i nativ upplösning men då har du ingen retina rendering eller uppskalning alls, dvs 4k på en 4k monitor, 5k på en 5k monitor eller 8k på en 8k monitor.
Citera
2024-04-03, 21:54
  #50
Medlem
BigBusinesss avatar
Tycker också denna diskussion är rätt jobbig., men tyvärr måste jag svara. Detta för att jag tycker det är en intressant diskussion.

Här är en riktigt bra artikel på temat med pedagogiska bilder:

https://bjango.com/articles/macexternaldisplays2/

Den här videon ska du nog inte se, men andra som råkar se vår diskussion kanske får ut något av denna:

https://www.youtube.com/watch?v=7DkUp5mokTY

Till och med jag stör mig på "upplägget" i filmen (börjar med att åka med bil till verkstan, pratar om sin hund), men där visar han faktiskt skillnaden i bildkvalite mellan en 4k-skärm och Apples studio display med förstorade foton av skärmen. Jag misstänker att skillnaden blir mindre (till och med minimal) med en finare 4k-skärm.




Citat:
Ursprungligen postat av BeneathTheSurface
1. Grafik-chippet skiter fullständigt i vad det är för enhet som sitter på andra sidan HDMI/USB-C/DisplayPort anslutningen (det gäller samtliga system) den bryr sig om vad den blir efterfrågad att mata ut för signal.

Just det, men den måste mata ut en signal som skärmen kan ta emot. Har du en 4K skärm innebär det 3840x2160.

Citat:
Ursprungligen postat av BeneathTheSurface
Vad spelar det för roll vad du ”tycker stämmer”?
2. macOS matar ALLTID ut en signal i den upplösning som skärmen säger sig vara.

Just det.


Citat:
Ursprungligen postat av BeneathTheSurface
Vad spelar det för roll vad du ”tycker stämmer”?
3. Om systemet identifierar en retina upplösning så gör den alltid 4:1 supersampling

Inte 100 på vad du menar med "supersampling" i detta sammanhang, men ordagrant stämmer det inte. Du kan ställa in upplösningen som motsvarar skärmens upplösning utan retina, dvs 3840x2160. Då blir allt på din skärm ganska smått, och du får ingen "retina-mode" (hittar inget bättre namn) i det läget. Ser att du har koll på det i punkt 8.

Citat:
Ursprungligen postat av BeneathTheSurface
4. Kopplar du in en 4k skärm så rapporterar den sig som 3840x2160, systemet identifierar detta som HiDPI/Retina och renderar till en 3840x2160 buffer som sedan skalas ner till 1920x1080 för att sedan skala upp den igen till att matcha signalen dvs 3840x2160.

Varför skulle det skalas ner och upp igen? Har du en källa på dessa "skalningar" i MacOS? Jag skulle ärligt vilja lära mig.

i Mac OS väljer användaren vilken upplösning den vill ha mellan ett par val. Det spännande händer när man väljer det Apple kallar "skalad upplösning" på det sätt som du gjort i din skärmbild. För en 27"-skärm står det då "5120 × 2880 ser ut som 2560×1440". Då kommer OS-et "rita på" just en sådan buffer. Även program du kör kommer få veta av OSet att skärmen är så stor.

Vad jag lärt mig så om man använder Apples API-er så ritas det man retar på bufferten med retina-teknik i de lägena. Skriver programmet till exempel text med Apples API-er kommer texten ritas med Retina-teknik, dvs se jäkligt bra ut. - Detta kan vara fel!!! Jag saknar källa annat än att det framställdes så i en programmeringsbok jag haft.

Du får det att låta som det inte görs på det sättet utan ritas "som vanligt" till en mindre buffer som skalas upp. Det är jag som sagt mycket intresserad av att veta mer om. Har du en länk?

Oavsett vilket, när bilden ska skickas till skärmen så måste GPUn skala om den bilden till en 4k signal. Horisontellt ska 2880 rader bli 2160. Var fjärde rad ska bort. Detta tar kraft. Hur mycket, och om det stör tvistar de lärde om. Se mina länkar i tråden. Naturligtvis innebär detta även en förvrängning av bilden. Även här tvistas det om hur mycket det stör.


Citat:
Ursprungligen postat av BeneathTheSurface
5. Kopplar du in en 5k skärm så rapporterar den sig som 5120×2880, samma som ovan fast 2560x1440 och sedan tillbaka till 5120x2800.

Jag är mycket nyfiken. Har du en källa på att det skalas ner och sedan upp. Vill verkligen veta vad du menar. Om du har rätt någonstans så innebär ju den skalning i detta fall skalning med 2, dvs ett heltal och betydligt lättare att skala än till en faktor som innehåller en fraktion.


Citat:
Ursprungligen postat av BeneathTheSurface
6. Ändrar du skalningen på 4k skärmen tex så du väljer ”ser ut som 1440p” så sker exakt samma sak som i 5 förutom att ”tillbaka till 5120x2800 blir tillbaka till 3840x2160”, det är effektivt ingen skillnad- men du hakar upp dig på skalningsmismatchen men ”uppskalningen” är att rita en texturmappad quad i ortographiskt perspektiv.

Men om det är som du säger så är det uppenbarligen jobbigare för GPUn. Hur mycket jobbigare tvistar andra om (jag tvistar inte, jag vill bara veta mer).

Citat:
Ursprungligen postat av BeneathTheSurface
7. Eventuell prestanda skillnad ligger i att en högre upplösning innebär mer data som behöver skyfflas, det har ingen som helst betydelse om du har en skärm som fysiskt kan visa 8k, 5k eller 4k, kostnaden ligger i pixelmängden oavsett den är fysisk eller ”virtuell”.

Då får du gärna svara på varför Apple varnar när man väljer en vad de kallar "skalad upplösning" och inte annars?

Det är ena halvan av mitt ursprungliga påstående - att det finns en prestandaskilnad, om än väldigt liten med en modern Mac.

Det andra är att det blir en bildförsämring som gör att du inte får full valuta av en 4K-skärm för Mac. För mig är det en självklarhet med tanke på skalningen som måste göras. Naturligtvis tappas viss bildinformation bort, om än obetydligt lite.



Citat:
Ursprungligen postat av BeneathTheSurface
8. Den sista skalningen är i stort sett gratis, allt jobb med HiDPI behöver göras oavsett man gör denna. Det enda scenario som är något billigare är att köra i nativ upplösning men då har du ingen retina rendering eller uppskalning alls, dvs 4k på en 4k monitor, 5k på en 5k monitor eller 8k på en 8k monitor.

Se min fråga under 7.



Nu ska jag försöka googla fram hur Apple egentligen arbetar i retina-läge. Skicka mig gärna i rätt riktning.
Citera
2024-04-04, 21:37
  #51
Medlem
BigBusinesss avatar
Citat:
Ursprungligen postat av BeneathTheSurface

4. Kopplar du in en 4k skärm så rapporterar den sig som 3840x2160, systemet identifierar detta som HiDPI/Retina och renderar till en 3840x2160 buffer som sedan skalas ner till 1920x1080 för att sedan skala upp den igen till att matcha signalen dvs 3840x2160.


Hej igen.

Nu har jag googlat och pratat med kollegor som programmerar mot Mac-gui.

Det du skriver ovan är väldigt svårt att förstå vad du menar med. Som sagt önskas en källa som beskriver det bättre.

Det vi pratar om är det apple kallar "skalad upplösning", dvs när du ställer in din externa skärm så att ikoner och fönster är lika stora på din interna skärm. Då blir skärmbufferten OS och program ritar på som i din skärmbild tidigare, dvs inte samma som 4k-upplösning utan som 5k. Bufferten skalas sedan ner till 4k innan bildsignalen går ut.

Grafik fungerar i retina-läge för utvecklare som jag försökte förklara att jag förstod det i min förra post. För den intresserade finns här en gammal, men riktigt bra artikel som förklarar bland annat hur det går till för ett program som kör på en Mac med retina-upplösning:

https://www.anandtech.com/show/6023/...splay-review/6

Program ritar alltså på en retina-upplöst bildbuffer. Använder man apples APIer för bilder och vektorgrafik så renderas grafik på bästa sätt i retina. Ritar man "själv" så kan man själv rita i retina och då använder man "points" i stället för "pixels" för att få kontroll över de 4 faktiska pixlarna som utgör en virtuell pixel.
Citera
  • 4
  • 5

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback