hallo, unter welchen namen finde ich graphic chips die OpenGL oder Quarz etc. können? Kenn jmd. vielleicht einen solchen Baustein, den man über den normalen Daten- u. Addressbus ansteuern kann? Torsten
Graphikcontroller mit 3d-Hardware-Unterstützung? Ist auf so gut wie jeder PC-Graphikkarte drauf, nur sind die i.d.R. PCI-Devices oder noch schlimmer. Eventuell findest Du im Hardware-Antiquariat noch ISA-Graphikkarten mit 3d-Beschleunigungsfunktionen; ATI mach32 oder so (wobei ich mich an die nur als "local-bus"-Version erinnern kann). Bleibt noch die Frage der Dokumentation ... Für Mobiltelephone und PDAs gibt es allerdings auch spezielle Graphikcontroller mit 3d-Unterstützung, mit welchen Interfaces die arbeiten, müsste untersucht werden. Ob man aber als Normalsterblicher überhaupt an entsprechende Bauteile rankommt? Jedenfalls: OpenGL oder Quartz in Hardware wirst Du nicht finden, allenfalls Unterstützung für Grundfunktionen.
hi Rufus, vielen dank schon mal für deine antwort... vielleicht zu meinem problem: ich hab ein Grafikdisplay welches ich auch mit eben Grafiken befüllen möchte etc., die sich auch bewegen. Programmieren werd ich das ganze in c++ (windows). Auf die PDAs bin ich in meinen Überlegungen eben auch gestoßen... und die arbeiten meines wissens mit openGl (oder häufig zumindestens). PCI ist ausgeschlossen, da mien µC sowas nicht unterstützt. --> d.h. ich müsste mir selbst in c++ eigene routinen etc. schreiben, die die vorgänge dokumentieren (also die 3d-geschichten)... was würdest du mir empfehlen? 3d-Objekte sollen sich drehen können um die eigene Achse, größer, kleiner werden und über das ganze display sich bewegen können (mit stauchung etc.)
Wo soll Dein Programm laufen? > Programmieren werd ich das ganze in c++ (windows). Also unter Windows? > PCI ist ausgeschlossen, da mien µC sowas nicht unterstützt. Oder doch auf "Deinem" µC? > ich müsste mir selbst in c++ eigene routinen etc. schreiben, > die die vorgänge dokumentieren (also die 3d-geschichten)... Du willst das alles auf einem µC machen? Was hast Du Dir denn da für einen ausgesucht? Prinzipiell gibt es 3d-Graphiklibraries im Quelltext, die sich auf verschiedene Hardware portieren lassen; selbst etwas OpenGL-ähnliches unter dem Namen Mesa. Nur setzt das schon etwas mehr Rechenleistung und vor allem auch Speicher voraus, als so ein üblicher µC so zur Verfügung stehen hat. Was genau hast Du womit vor?
Hi OpenGL (und damit die MESA) macht ohne FPU keinen Sinn da Koordinaten sinnvollerweise immer als float übergeben werden. OpenGLES könnte eher Sinn machen. Da existiert auch eine OSS Implementierung -> http://ogl-es.sourceforge.net/ Das Projekt ist aber scheinbar nicht mehr wirklich aktiv. Evtl. lohnt auch ein Blick in die 3D Engines von id Software für Doom/Quake. Die sollten eigentlich ganz ordentliche Performance zeigen (Quake lief auf einem P90 ohne 3D Karte in 1/4 VGA ganz ordentlich). Aber erstmal: Was hast du für einen µC? Matthias
das programm läuft danach auf meinem µC - ohne windows... als µC hab ich mir den ARM AT91SAM7SE32 ausgesucht... speicher etc. ist alles extern an den datenbus angegliedert... als controller für den tft hab ich den s1d13531 mit 8MB SDRAM... darin befinden sich alle bilddaten für das display. es sollen keine großartigen sachen dabei rauskommen... z.B. ein paar buttons, die einen 3d-effekt haben und sich drehen lassen können. Einzelne Windows (insgesamt 5 stück) die man gegeneinander verschieben kann und somit auch vergrößern u. verkleinern lassen kann... unter welchen namen laufen denn solche grafik-bibliotheken?
Das wird spaßig, 3d-Berechnungen auf einem Prozessor ohne FPU. Aber immerhin, ein 32-Bit-Prozessor. Die Graphikbibliotheken werden i.d.R. "3d-engine" genannt.
Hi kann man machen -> fix point. OpenGLES definiert auch eine Schnittstelle mit 16.16 fix point. Wenn sich nur ein Button drehen soll ist eine 3D "engine" auch nicht nötig. Aber selbst das skalieren von Grafiken ist in Software für den Prozessor eine heftige Aufgabe wenns auch noch ordentlich aussehen soll. Ein ARM7 ist eben nicht wirklich für Aqua/Vista Effekte geeignet. Matthias
und einfache sachen, wie fenster verschieben und vergrößern - müsste doch auch ohne floating-point-berechnung möglich sein?
Hi verschieben ja. Vergrößern auch wird aber schon schwierig wenn es kein geradzahliger Faktor ist da dann entweder interpoliert werden muss oder das ganze, ähm, merkwürdig aussieht. Matthias
@matthias, das mit den fix-points klingt gut... gibt es lcd controller die in diesem bereich (fenster verschieben) dem µC ansich einiges abnehmen können... der s1d13531 besitzt auch zwei solche funktionen wie rotation, mirror sowie eine kleine 2d-beschleunigung... gibt es sowas auch mit 3d-effekten?
Hi ich kann kein Datenblatt zum s1d13531 finden. Meinst du den S1D13513? Der hat fürs verschieben von Fenstern eine Beschleunigung (BitBLT) eingebaut. Dann kann das Ding noch mit Sprites umgehen. Zum skalieren von Grafiken steckt da aber nichts drin. Matthias
ja genau den mein ich... meine frage war auch ob es einen anderen lcd controller gibt, der schon 3d-geschichten unterstützt.
Ja soetwas gibt es, ich versuche mich gerade am LIME MB86276, da habe ich auch ein Lieferant gefunden, welcher ein Demoboard im Angebot hat. Technische Daten Videoinput, 2D, 3D, 6 Layer, 8Bit Alphakanal, 16/32 Bit Interface.
hi rage, hab mir grad das datasheet angeschaut... mit welchem µC arbeitest du?
Da wird der kleine ARM7 aber ganz schön ins Schwitzen kommen :-) Ich bastel gerade an was ähnlichem mit einem FPGA Softcore rum. Für die Animation die Du beschreibst kannst Du mal einen Blick auf die "Hot Dog Engine" vom iPOD uClinux werfen. Für Fixed Point OpenGL such mal in Google nach " libfixgl" , "gpu940" , "tinygl" und "picogl". TinyGL und die libfixgl hab ich auf meinem Softcore laufen, aber sogar mit 100MHz Core Takt und über 200Mbyte/sec Speicherbandbreite kommt nicht mehr als eine Dia Show dabei raus. Grafikbeschleuniger in Hardware kenne ich noch den Intel 2700G und die älternen Fujitsu Controller (Carmine,Cremson,..). Wieviel Mbyte/sec schafft der AT91SAM7SE32 eigentlich am EBI ?
Wenn es wirklich nur um eye-candy geht, könnte eine simple, vorgerenderte Animation auch ganz gut funktionieren.
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.