Animation erstellen
Animation erstellen
Hallo Forum,
für mein kleines Projekt "Heusingersteuerung am Modell" (Dampfmodellbau) möchte ich eine Animation erstellen.
Diese sollte ungefähr so http://www.keller-clz.de/java/heus/heus_how-d.html aussehen.
Jetzt überlege ich welche Strategie ich wählen sollte. Vielleicht kann mir ja jemand auf die Sprünge helfen.
Ich möchte keine Lösung sondern die Richtung wissen in der ich mich bewegen sollte.
Ein wenig "gespielt" habe ich schon mit den Möglichkeiten zum Zeichnen. Die Komponenten sollen, nach errechneten oder eingegebenen
Daten, ihre Größe und Position in der Animation ändern. Angaben dazu in Variablen unterzubringen sollte ich selbst beherrschen.
Schlussendlich soll das auch noch flüssig laufen und dabei gut aussehen... .
Ich möchte, als Anfänger, vermeiden einen falschen Weg zur Lösung einzuschlagen.
Mit freundlichen Grüßen
Hannes
für mein kleines Projekt "Heusingersteuerung am Modell" (Dampfmodellbau) möchte ich eine Animation erstellen.
Diese sollte ungefähr so http://www.keller-clz.de/java/heus/heus_how-d.html aussehen.
Jetzt überlege ich welche Strategie ich wählen sollte. Vielleicht kann mir ja jemand auf die Sprünge helfen.
Ich möchte keine Lösung sondern die Richtung wissen in der ich mich bewegen sollte.
Ein wenig "gespielt" habe ich schon mit den Möglichkeiten zum Zeichnen. Die Komponenten sollen, nach errechneten oder eingegebenen
Daten, ihre Größe und Position in der Animation ändern. Angaben dazu in Variablen unterzubringen sollte ich selbst beherrschen.
Schlussendlich soll das auch noch flüssig laufen und dabei gut aussehen... .
Ich möchte, als Anfänger, vermeiden einen falschen Weg zur Lösung einzuschlagen.
Mit freundlichen Grüßen
Hannes
Zuletzt geändert von Johannes am Sa 23. Jan 2016, 19:09, insgesamt 1-mal geändert.
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Animation erstellen
Der einfachste Weg wird sein, zuerst die Animation nur mit Linien und Kreisen zu zeichnen.
Wen diese primitive Variante mal läuft, dann kannst hinter die grafischen Verbesserungen gehen.
Man könnte es bis zur einer 3D-Animation in OpenGL ausbauen.
Das sollte auf den heutigen PCs kein Problem darstellen.
Wen diese primitive Variante mal läuft, dann kannst hinter die grafischen Verbesserungen gehen.
Man könnte es bis zur einer 3D-Animation in OpenGL ausbauen.
Schlussendlich soll das auch noch flüssig laufen und dabei gut aussehen...
Das sollte auf den heutigen PCs kein Problem darstellen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: Animation erstellen
Hallo Mathias,
das war auch mein Gedanke. Ich werde mal, bescheiden, damit anfangen.
3d muss wirklich nicht und mit Open Gl kenne ich mich(noch) nicht aus.
Danke!
Hannes
das war auch mein Gedanke. Ich werde mal, bescheiden, damit anfangen.
3d muss wirklich nicht und mit Open Gl kenne ich mich(noch) nicht aus.
Danke!
Hannes
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Animation erstellen
Eventuell wird 3D aber das einfachste.
In GLScene kannst du die deine Maschiene quasi mit Komponenten zusammenbauen.
Es gibt da auch 2 Physikengines mit denen du das ganze sogar Physikalisch realistisch darstellen könntest.
In GLScene kannst du die deine Maschiene quasi mit Komponenten zusammenbauen.
Es gibt da auch 2 Physikengines mit denen du das ganze sogar Physikalisch realistisch darstellen könntest.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: Animation erstellen
Hallo Christian,
das hört sich sehr interessant an!
Gibt es zu diesem Thema Unterstützung in Form von Tutorials? Ich brauche sicher praktische Beispiele um das zu verstehen.
Bin Bj.54 und da läßt leider, wenigstens bei mir, die Lernfähigkeit doch etwas nach.
Danke!
Hannes
das hört sich sehr interessant an!
Gibt es zu diesem Thema Unterstützung in Form von Tutorials? Ich brauche sicher praktische Beispiele um das zu verstehen.
Bin Bj.54 und da läßt leider, wenigstens bei mir, die Lernfähigkeit doch etwas nach.
Danke!
Hannes
-
- Beiträge: 565
- Registriert: So 26. Aug 2012, 09:03
- OS, Lazarus, FPC: Windows(10), Linux(Arch)
- CPU-Target: 64Bit
Re: Animation erstellen
Das hier ist zwar für Delphi gemacht, ist aber fast zu 100% in FPC anwendbar:
https://wiki.delphigl.com/index.php/Tutorial_Quickstart
Diese Tutorials sind ziemlich gut gemacht, und haben mir den Einstieg in OpenGl sehr leicht gemacht.
MFG
Komoluna
https://wiki.delphigl.com/index.php/Tutorial_Quickstart
Diese Tutorials sind ziemlich gut gemacht, und haben mir den Einstieg in OpenGl sehr leicht gemacht.
MFG
Komoluna
Programmer: A device to convert coffee into software.
Rekursion: siehe Rekursion.
Rekursion: siehe Rekursion.
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Animation erstellen
Das Tutorial ist gut, nur würde ich das DC und RC Zeugs durch das Hauseigene TOpenGLControl von Lazarus ersetzen.
Somit ist man nicht an Windows gebunden.
Somit ist man nicht an Windows gebunden.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: Animation erstellen
Hallo Komoluna,
vielen Dank! Das liest sich gut und hat mein Interesse geweckt.
@Mathias: wo finde ich diese Komponente (TOpenGLControl) und warum empfielst Du mir diese ?
MfG
Hannes
vielen Dank! Das liest sich gut und hat mein Interesse geweckt.
@Mathias: wo finde ich diese Komponente (TOpenGLControl) und warum empfielst Du mir diese ?
MfG
Hannes
-
- Beiträge: 565
- Registriert: So 26. Aug 2012, 09:03
- OS, Lazarus, FPC: Windows(10), Linux(Arch)
- CPU-Target: 64Bit
Re: Animation erstellen
Die Komponente wird mit Lazarus mitgeliefert. Ist nur noch nicht installiert.
Gehe auf "Packages -> Installierte Packages einrichten" und such in der rechten Liste nach "LazOpenGlContext".
Dann auf "Auswahl Installieren" und "Speichern und IDE rekompilieren". Dann startet Lazarus neu und du solltest ein neues Tab "OpenGl" in der Komponentenleiste haben.
MFG
Komoluna
Gehe auf "Packages -> Installierte Packages einrichten" und such in der rechten Liste nach "LazOpenGlContext".
Dann auf "Auswahl Installieren" und "Speichern und IDE rekompilieren". Dann startet Lazarus neu und du solltest ein neues Tab "OpenGl" in der Komponentenleiste haben.
MFG
Komoluna
Programmer: A device to convert coffee into software.
Rekursion: siehe Rekursion.
Rekursion: siehe Rekursion.
Re: Animation erstellen
Hallo Komoluna,
das war ja rekordverdächtig! So eine schnelle Antwort hatte ich nicht erwartet.
Danke, es läuft.
MfG
Hannes
das war ja rekordverdächtig! So eine schnelle Antwort hatte ich nicht erwartet.
Danke, es läuft.
MfG
Hannes
Re: Animation erstellen
Bei Werkzeuge -> Beispielprojekte... Projekte Filter: "openglcontrol" gibt es eine Demo.
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Animation erstellen
Ich kenne die Demo auch, ist aber recht kompliziert für den Einstieg.
Ich habe da ein Muster welches ein einfaches Dreieck zeichnet.
Hier noch den Link zu dem Header: https://github.com/saschawillems/dglopengl
Ich habe da ein Muster welches ein einfaches Dreieck zeichnet.
Hier noch den Link zu dem Header: https://github.com/saschawillems/dglopengl
Code: Alles auswählen
unit unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
OpenGLContext, dglOpenGL;
type
{ TForm1 }
TForm1 = class(TForm)
OpenGLControl1: TOpenGLControl;
procedure FormCreate(Sender: TObject);
procedure OpenGLControl1Paint(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{ TForm1 }
procedure TForm1.OpenGLControl1Paint(Sender: TObject);
begin
glClearColor(0.8, 0.5, 0.3, 1.0);
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
glEnable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glBegin(GL_TRIANGLES);
glColor3f(1, 0, 0);
glVertex3f(0, 1, 0);
glColor3f(0, 1, 0);
glVertex3f(-1, 0, 0);
glColor3f(0, 0, 1);
glVertex3f(1, 0, 0);
glEnd();
OpenGLControl1.SwapBuffers;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
InitOpenGL;
OpenGLControl1.MakeCurrent;
ReadExtensions;
ReadImplementationProperties;
end;
initialization
{$I unit1.lrs}
end.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 1908
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Re: Animation erstellen
Unter Windows gibt es auch die 2D Engine Andorra2D, die ist zwar etwas älter tut aber einen wunderbaren Job
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2636
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Animation erstellen
Warf hat geschrieben:Unter Windows gibt es auch die 2D Engine Andorra2D
Nicht nur unter Windows.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Animation erstellen
Ernsthaft ? Direktes Opengl für nen Einsteiger ?
In GLScene müsste ers nur RAD mässig zusammenklicken.
Warum eigentlich Lazarus und nicht gleich Assembler ?
In GLScene müsste ers nur RAD mässig zusammenklicken.
Warum eigentlich Lazarus und nicht gleich Assembler ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/