Ich erinnere mich, dass ich von ca. 15 Jahren mal in Pascal unter DOS eine Uhr oder so in der Schule programmieren sollte, mit irgendwelchen Funktionen wie put_pixel() oder draw_line(). Das war tierisch langsam und ruckelig und ich war erstaunt wie ein Klassenkamerad ein vollständig animiertes Linienfahrrad hinbekommen hat. Viele im Internet verbreitete technische Spielereien (led-matrix-touch) etc. haben zur Visualisierung gleich 3D Darstellungen mit OpenGL oder so. Von der Software zum Bild ist es wohl ein weiter Weg über X Sub-Systeme. Ich interessiere mich dafür, weil ich eine LED Matrix simulieren möchte aber nicht weiss, wie man sowas anstellen könnte. Ich weiss, dass GUI-Toolkits auch Grafikfunktionen für canvas-Elemente bereithalten, aber ob sowas schnell ist? Ideal wär' eine Quelle die den Weg eines Bildes auf den Bildschirm erklärt und Tipps zum Programmieren gibt. Ist wohl der Inhalt von Büchern!?
Hi Welche Sprache/Programmierumgebung willst/musst/kannst du denn benutzen? Wenn du mit Pascal Erfahrungen hast würde sich Delphi anbieten. Ist allerdings objectorientiert (ähnlich Turbo Vision bei Turbo Pascal). Turbo Delphi gibt es kostenlos. >Das war tierisch langsam und ruckelig... Die Rechner sind in den letzten 15 jahren etwas schneller geworden. >Ich weiss, dass GUI-Toolkits auch Grafikfunktionen für canvas-Elemente >bereithalten, aber ob sowas schnell ist? Für deine Zwecke mit grosser Wahrscheinlichkeit schnell genug. MfG Spess
Hallo, die Sprache ist mir fast egal - mit Python kann ich mich anfreunden weil es recht komfortabel ist. Aber eigentlich suche ich allgemeine Informationen, wie ich den Bildschirm unter meine Kontrolle bekomme.. :-)
Den bildschirm gibt's eh nicht, aber ein window ist kein Problem. Eine Websprache wuerde ich allerdings nicht empfehlen, ausser du willst im Browser laufenlassen.
Damals musste man schon direkt auf den Videospeicher losgehen wenn es schnell werden sollte, also nicht über putpixel etc.
Mit Python könnte man etwas wie Pygame verwenden. Für C/C++ gibts dann noch Grafiklibs wie SDL oder SFML.
Unabhängig von der Programmiersprache, die Technik, die ruck- und flimmerfreie Grafiken auf den Bildschirm bringt, heisst "back plane drawing" bzw. "double buffering". Das gibts mit Hardware-Unterstützung oder auch nur per Software. Der Trick ist, dass man in einen Bildspeicher (Hardware) oder einen Bildpuffer (Software) schreibt, der gerade nicht zu sehen ist. Es gibt Grafikkarten, die haben so viel Speicher, dass mindestens zwei komplette Screens darin Platz haben. Während der eine Screen gerade angezeigt wird, wird in den anderen (gerade unsichtbaren) gezeichnet und dann per Hardware-Register getauscht - möglichst synchron zum Vertikalimpuls. Das ganze geht bei schnellen Rechnern auch nur per Software, was einfacher ist, weil man in höheren Programmierspreachen ohnehin keinen Zugriff auf die Speicherbänke der Grafikkarte hat. Man legt intern ein Image-Objekt an und zeichnet dort hinein. Danach wird es per copy- oder imagedraw-Befehl (abhänig von Sprache) in den Context eines sichtbaren Canvas kopiert. Manche Programmiersprachen bzw. deren Compiler syncronisieren sowas von selber mit dem Vertikalimpuls (z.B. RealBasic). Frank
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.