Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jul 19, 2025 23:47

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: SDL Beispiel
BeitragVerfasst: Mo Jul 18, 2005 17:58 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Hallo,

ich habe ein Beispiel von Marius Andrea, Lesson6, http://cone3d.gamedev.net, nach Delphi portiert. Dabei wurde einiges umstrukturiert, ist aber noch nicht fertig. Da ich es später in in das SDK aufnehmen will, bitte ich euch es mal zu testen. Download liegt unter: http://www.seban.de/download/SideScrollerBin.zip. Ist aber noch nicht fertig. Ein Test unter Linux fehlt noch, kommt aber auch.

Gruß
Thomas

EDIT:
Erster Test unter Linux war erfolgreich, eine Unit muste nur umbenannt werden. Aus mir unbekannten Gründen dauert der Start sehr lange.

Gruß
Thomas

Aktuelle Version (Alles): http://www.seban.de/download/SideScrollerBin.zip
Aktuelle Version (Nur Source!): http://www.seban.de/download/SideScrollerSrc.zip


Status: 15.09.2005
- Fehler bei Spielende behoben. Meinen Dank an i0n0s.

Status: 29.08.2005
- Mehrere Memory Leaks entfernt
- Code bereinigt

Status: 28.07.2005
- Joystick geht nun auch unter Linx
- Laden von JPGs eingebaut
- Einführung eines Dummy - Joysticks, wenn SDL keinen findet
- Bug behoben, wenn kein Joystick gefunden wurde

Status: 24.07.2005
- Joystick - Support, leider nicht unter Linux, da wird immer ein NIL nach dem Aurfuf von SDL_JoystickOpen(0) zurück gegeben
- Collision auf Pixel - Basis

_________________
http://www.seban.de


Zuletzt geändert von KidPaddle am Do Sep 15, 2005 19:55, insgesamt 4-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 20:37 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Zwar schade, dass es kein OpenGL ist, aber eine nette Idee diesen Port zu machen. Halt uns (zumindest) mich :twisted: auch künftig auf dem laufenden :) Bei der nächsten LinuxSDK-Version wird es möglich sein das Sample direkt von Haus aus zu kompilieren. Läuft auch seitweit hier auf einem Fedora Core 4 System. Allerdings kann ich genau wie Du auch dieses merkwürdig langen Start beobachten. Es kann sein, dass ich es mir einbilde, aber bei mir tat sich lange nichts und als ich STRG+C drückte ging er weiter. IMAO kann man dies benutzen um nach zweimaligejn Drücken den Start zu beschleunigen. *kopfschüttelt* Wird wohl meine subjektive Einschätzung sein, mir fiele es schwer zu erklären, was die Ursache sein sollte dafür. Unter Windows startet er sofort?

So... das interessierte mich nun aber auch mal. Vorneweg: Gerade mit SDL unter Linux macht es höllisch Spass ordentlich gebrauch vom guten alten WriteLn zu machen und das Programm richtig geschwätzig zu machen um zu sehen, was es gerade treibt. Schnell war das Problem bei folgenden Aufrüfen gefunden:
Code:
  1.  // Now we load in the fonts - a white one and a yellow one
  2.   fFont       := initFont('data/font');
  3.   fYellowFont := initFont('data/font', 1, 1, 0);

Das ist die Bremse, die Du suchst und scheinbar kann man wirklich den Start mit STRG+C beschleunigen. Eine Erklärung habe ich nicht dafür, aber irgend etwas liegt dort scheinbar im argen :)
Keep on good work!

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 21:00 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Die Unit Logger verwende ich mittlerweile zum ausgeben von Statis und Du hast richtig beobachtet, ein zweimaligs STRG+C bringt die Anwendung zum starten. Ich vermute, das es mit der Verwendung einer SScanF - Routine zum einlesen von Werten zu tun hat. Leider bekomme ich es in der FP-IDE nicht zum kompilieren, während es auf der Console ohne Probleme geht.

Gibt es eine Möglichkeit, bei einem Programm, welches in einer Console gestartet wurde, die Ausgabe auf eine bestehende X - Session umzuleiten? Damit könnte ich auf der Console debuggen, während die Ausgabe auf meinem Fernseher erfolgen würde. Mein Linux-Rechner wird als Videorecorder, SAT-Decoder und Spieleconsole (unter XFree) verwendet.

Wenn es unter Linux und Windows funktioniert und ich mit der Struktur zufrieden bin, werde ich versuchen es als OpenGL - Anwendung umzusetzen. Ich wollte erst einmal eine funktionierende Basis haben.

Gruß
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 19, 2005 20:01 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Ursache für das Warten auf Strg+C ist gefunden. Die Datei font.ini unter data/font besteht nur aus einer Zeile. Irgendwie strauchelt der fpc und erwartet ein LF oder CR/LF bei Read/ReadLn. Da dieses nicht existiert, wartet er endlos. Also einfach die Datei öffnen, ein die Enter-Taste hinter der Zahl betätigen und speichern. Danach hat es bei mir funktioniert. Phobeus, kannst Du das bei Dir testen?

Gruß
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 20, 2005 09:16 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Aye, kann ich auch hier bestätigen. Funktioniert danach soweit anstandslos. Abgesehen halt davon, dass die XDFUtils.pas umbenannt werden muss :)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 24, 2005 19:42 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
So, eine neue Version hoch geladen.

Folgendes wurde geändert:
Joystick - Support, leider nicht unter Linux, da wird immer ein NIL nach dem Aurfuf von SDL_JoystickOpen(0) zurück gegeben. Die Auslenkung eines Analog - Joystick geht in die Geschwindigkeit der Bewegung des Schiffes ein.

Collision auf Pixel - Basis und nicht, wie in dem Beispiel, auf Bounding Rects.

Der Spielablauf wurde leicht geändert. Gegner, die violett gefärbt sind, können sofort abgeschossen werden. Die blauen Gegner brauchen mehrere Treffer. Sobald nur noch ein Treffer benötigt wird, färbt sich der Gegner violett.

Die aktuelle Version liegt unter: http://www.seban.de/download/SideScroller.zip . In der ZIP - Datei sind die Binaries für Linxu und Windows enthalten. Getestet wurd es auf einem Debian 3.1 und Windows XP Home.

Gruß
KidPaddle

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jul 28, 2005 19:52 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Wieder eine neue Version. Phobeus wies mich darauf hin, das unter Linux ein Exception auftaucht, wenn kein Joystick vorhanden ist. Desweiteren wurde der Donwload von ca. 3MB auf ca. 800KB verkleinert, nachdem dem nun JPG als Hintergrundbild verwendet wird. Nun sind die benötigten DLLs mit im Archiv vorhanden, eine Installation von SDL ist damit nicht mehr notwendig.

Aktuelle Version: http://www.seban.de/download/SideScroller.zip
Status: 28.07.2005
- Joystick geht nun auch unter Linx
- Laden von JPGs eingebaut
- Einführung eines Dummy - Joysticks, wenn SDL keinen findet
- Bug behoben, wenn kein Joystick gefunden wurde

Gruß
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jul 28, 2005 19:54 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Ups, Doppelpost.
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 31, 2005 13:18 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Die vorerst letze Version liegt nun zum Download bereit. Der Download - Link ist im ersten Post.

- Dank des Programmes lhfire, auf http://icculus.org/twilight/darkplaces/download.html, habe ich 2 Animationen für die Explosion erstellen können.
- Ein paar kleinere Bugs behoben

Zukünftig soll die Anwendung um ein Menü, Highscore - Anzeige und Optionen für die Steuerung eingebaut werden. Auch ein Level - Konzpet wird dann eingebaut.

Gruß
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Sep 15, 2005 20:00 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Leider hat sich in die letze Version ein Fehler eingeschlichen. Sobald alle Leben "verbraucht" waren, wurde eine Zugriffsverletzung ausgelöst. Fehler wurde von i0n0s reportet, viele Dank. Download der aktuellen Version, siehe erstes Posting.

Gruß
Thomas

_________________
http://www.seban.de


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 14 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.017s | 18 Queries | GZIP : On ]