Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

Beste technologie voor high performance desktop graphics

Pagina: 1
Acties:

  • NickThissen
  • Registratie: november 2007
  • Laatst online: 19:25
Ik werk aan een desktop applicatie die zogenaamde "overlay graphics" tekent. Deze graphics zijn bedoeld om bovenop een stream van een game geprojecteerd te worden. Denk bijvoorbeeld aan een Formule 1 race uitzending op tv, waar de huidige stand, rondetijden, etc op beeld komen, of de huidige stand bij een voetbal wedstrijd (simpel voorbeeld).

Momenteel is de software gebouwd in C# .NET waarbij ik WPF gebruik voor de graphics. De graphics zijn in principe WPF UI elements met allerlei effecten, deze worden vervolgens op een transparent window geplaatst en via data-binding wordt de tekst / data ingevuld.

Hoewel dit makkelijk te ontwikkelen is loop ik de laatste tijd tegen serieuze performance problemen aan. Ik wil graag gebruik maken van animaties en steeds meer effecten (denk aan pixel shader effecten zoals dropshadows en blending) en WPF lijkt dit niet goed aan te kunnen. Ik heb heel erg moeite om 60 fps animaties te halen en de animaties haperen en lopen gewoon niet mooi.

Ik heb overal gezocht voor performance tweaks maar ik vind maar weinig verbetering, en zelfs als ik een simpele versie bouw zonder ingewikkelde data-binding bijv zijn de animaties al niet smooth. Ik ben nu eigenlijk op zoek naar een betere technologie die hier beter voor geschikt is.

Kan iemand mij op de juiste weg helpen om een alternatief te vinden om de UI te tekenen, met het oog op high performance (smooth 60 fps minimaal en full-screen graphics)?

Twee dingen die ik zo kan bedenken met hun voor- en nadelen:
  • HTML / CSS / js (bijv Electron): wellicht is het een mogelijkheid om de UI volledig web-based te bouwen. Ik ben echter bang dat ik ook hier tegen performance issues aan ga lopen. Dit lijkt een groot project vooral omdat de huidige code-base in .NET is, en als het probleem niet oplost dan ga ik hier veel tijd aan verspillen. Wellicht is een mogelijkheid via Electron.NET om te communiceren tussen mijn bestaande .NET code (soort van client die de data die getoond moet worden doorstuurt) en een losse UI in Electron?
  • DirectX: in mijn zoektocht kom ik het meeste tegen om low-level DirectX te gaan gebruiken. Voor performance lijkt me dit inderdaad het beste, maar het lijkt erop dat ik dan een volledig eigen renderer moet gaan bouwen en dat is toch echt niet de bedoeling...
Er moeten toch wel betere alternatieven zijn om graphics op m'n scherm te toveren met high performance in gedachten?

Op het moment heb ik interesse in elke optie, maar een heel groot voordeel is wel als ik het kan combineren met de bestaande .NET codebase. Ik ben eigenlijk niet van plan de hele applicatie opnieuw te gaan bouwen, alleen de UI zou ideaal zijn.

Bedankt voor suggesties...

Mijn iRacing profiel

Pagina: 1


Apple iPhone 11 Microsoft Xbox Series X LG OLED C9 Google Pixel 4 CES 2020 Samsung Galaxy S20 4G Sony PlayStation 5 Nintendo Switch Lite

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2020 Hosting door True