HToneill's Mod Thread - Theorie und Praxis

  • Der Moment wo einem klar wird, dass man einen besseren Pixel Font Renderer geschrieben hat wie in Photoshop implementiert ist

    best.png

    links: CPU lastiges Photoshop

    rechts: Eigenerer GPU Renderer


    beides hat eine Kantenglättung. Anti-Aliasing.

    Jedoch hat Photoshop immer einen eigenen Algorythmus gehabt der sowas wie Mittelwert für alle Einsatzfälle sein sollte, aber eher dazu führt, dass dieser nirgends optimal gepasst hat.


    Somit wirkt das Photoshop Bild (Vektor Font + Kontur) entweder unschärfer oder wahlweise ganz ohne Anti-Aliasing.



    F: Zur Hölle Oneill, wie sieht so ein Code aus, der sowas macht?

    A:


    Das ist ein GLSL Shader, der genau so an die Grafikkarte geschickt wird.

    Code
    uniform sampler2D texture0;

    ist hierbei die Textur, die in den Shader reinkommt. Der Pixelshader wird dann für jeden Pixel einmal berechnet, und zwar auf einer Fläche, die eine UV Koordinate haben muss, sowas wie der Texturausschnitt auf der Fläche (Face).

    Code
    varying mediump vec2 uvVarying;

    Somit wird Pixel für Pixel mit dem was in in der main{} Klammer ist, berechnet.


    Die neue Farbe für jeden Pixel wird im RGBA format in

    Code
    gl_FragColor 

    gespeichert. Das kann man dann direkt auf den Bildschirm klatschen, wenn man ein Window mit OpenGL Kontext erstellt hat.


    Die Kunst beim Shader programmieren ist, einen Algorythmus zu finden der 1. das macht was du willst und 2. für jeden Pixel funktioniert.

    5 Mal editiert, zuletzt von HToneill ()

  • Langsam glaube ich das es dir spaß macht uns zu verhöhnen, in den du uns unwissenden code zeigst , und wir alle wie das schwein ins uhrwerk schauen :D

  • ^^


    Hier gibt es einen Hintergrund zu GLSL:

    https://en.wikipedia.org/wiki/OpenGL_Shading_Language

    Es ist C ähnlich, aber alles nur auf das Mindeste reduziert und mit speziellen Funktionen für die Grafikkarte.



    Ich habe ein kleines Geschenk für euch generiert:



    preview.jpg


    Sämtliche Ortschaften habe ich durch ein Script laufen lassen, der diese in Transparente Bilder rendert.

    Diese könnt ihr über eure Videos oder Bilder legen und zeigen wo ihr gerade wütet.

    Ich habe diese euch in drei verschieden Auflösungen zur Verfügung gestellt.


    Sieht in der höchsten Auflösung so aus:


    Chernogorsk.png



    Diese könnt ihr hier runterladen:

    Download!

    4 Mal editiert, zuletzt von HToneill ()

  • Albert Einstein ist am 18. April 1955 angeblich gestorben - aktuell bin ich mir da nicht mehr so sicher!


    Ganz großen Respekt von mir an dich lieber @HToneill

  • ?????? ??????,

    ????? ?????? ??????????? ??????????? ??? ?????? ?ü? ??? ???? ??? ???? ??? ????? ??? ???? ???????. ?????? ??????? ???? ????? ????? ?????? ??? ??????? ??? ???????? ???? ?????? ???? ??????.



    ??????? ??????? ??? ?? ????? ??????? ?????????? ?ü? ???????????? ?????????????.

    ?? ??????? ???? ????? ?? ????? ??? ??? ???????????? ???????? ??? ??????? ?????????????????????.


    das.png

    ?? ????? ??? ?????? ????? ????????????????? ??? ???% ???? ?? ?????- ?ü?????????


    ???? ??? ??? ?? ????? ??? ?ö????????, ??? ?????????? ?????? ?? ??? ????? ?? ??ü???, ????? ??? ?????? ?????????? ????????? ????.

    ???????: ?? ????????? ?? ??????? ?ä??? ????? ??????????????, ??? ??? ??? ?????????? ??????????? ??? ??? ????? ????? :)

    ???? ??? ??? ????????? ?ü?? ????, ???? ??? ?? ???? ?????????? ?????.

    ???? ????? ??? ?????? ???. (???? ??? ??????, ????????????)



    ?????????? ???????, ???? ????? ????:

    ?? ???? ?? ????? ??????, ??? ?? ?????? ????


    ????? ????ß?,

    ????????




  • Zoppel

    Ich habe vollstes Verständnis:

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Einmal editiert, zuletzt von HToneill ()

  • Warum hast du zwei Spannungswandler ?
    Und sind das Step up oder Step down wandler?
    Ist das das Raspberry Pi Pico ?

    8o