AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Sysygy Image Viewer

Sysygy Image Viewer

Ein Thema von littleDave · begonnen am 9. Mai 2008 · letzter Beitrag vom 16. Mär 2009
Antwort Antwort
Seite 2 von 11     12 34     Letzte » 
Benutzerbild von littleDave
littleDave
Registriert seit: 27. Apr 2006
Hallo liebe Community,

ich möchte euch hier mein aktuelles Projekt vorstellen, an dem ich die letzten eineinhalb Jahre gearbeitet habe.

Was ist der Sysygy Image Viewer
Der Sysygy Image Viewer ist eine Art Bildbetrachtungsprogram. Es steht dabei nicht in Konkurenz zu anderen Bildbetrachtern wie z.B. IrfanView, die alle nur in 2D arbeiten. Sysygy Image Viewer stellt die Bilder in ein dreidimensionales Museum, durch das man sich wie in einem First-Person-Shooter frei bewegen kann. Die Steuerung ist dabei identisch mit der gängigen Shooter-Steuerung. WSAD oder die Pfeiltasten zum Laufen, Maus zum Umschauen und Leertaste zum springen. Bevor jetzt gleich jemand denkt: "ach wieder so ein Spin***, der unbedingt einen Shooter machen will, aber keine Ahnung hat" - bitte liest weiter bevor ihr Urteilt (ich persönlich find diese Threads "Wie mache ich einen 3D-Shooter" auch lächerlich, aber dass ist jetzt OT). Das Programm kann auf viele weise eingestellt werden, um auch auf schwächeren Systemen zu laufen. Ebenfalls können die einzelnen Shortcuts neu belegt werden.

Wie benutze ich Sysygy Image Viewer
Als erstes muss man ein Picture-Set erstellt, damit das Program auch weiß, welche Bilder dargestellt werden sollen. Dabei werden die Bilder gleich umformatiert, damit die Grafikkarte diese auch im Museum aufhängen kann. Es können beliebig viele Picture-Sets mit beliebig vielen Bildern erstellt werden. Dies alles kann man mit dem beigefügten GalleryCreator erledigen. Zusätzlich kann man jedem Bild einen fast beliebig langen Kommentar geben, denn dann angezeigt wird, sobald man in der Galerie vor dem Bild steht.
Sobald man ein Picture-Set erstellt hat, kanns auch schon losgehen. Im eigentlichen Programm wählt man dann das Picture-Set aus, dass man sich ansehen will. Danach wählt man noch eine Galerie aus, in der die Bilder aufgehängt werden soll. Nach einer kurzen Ladeperiode kann man sich frei druch das Level bewegen und sich die Bilder anschauen. Aber das ist noch nicht alles. Der Sysygy Image Viewer bietet auch eine Art Mehrspieler-Modus an. Wenn jemand einen Server erstellt, kann man sich zu diesem verbinden und dann gemeinsam durch die Levels laufen. Eigentlich genau so wie in einem First-Person-Shooter nur ohne Waffen und mit Bildern an der Wand. Mit Hilfe eines auf php und MySQL basierenden Master-Servers kann man sich bequem zu verschiedenen Servern verbinden.
Damit es im Single-Player-Modus nicht allzu langweilig wird, kann man zusätzlich noch Bots in die Galerie mit einbinden, die dann ebenfalls durch das Level laufen und sich die Bilder anschauen. Zudem kann man entweder der begefügten Musik zuhören, oder auch eine eigene PlayList mit den eigenen Musikdateien zusammenstellen.

Die Sprache des Hauptprogramms sowie von der Hilfe ist Englisch. Das Hauptprogramm ist zudem multi-language-fähig und beinhaltet bereits eine deutsche Übersetzung, die bei einem deutschen Windows automatisch geladen wird (kann man aber auch manuell einstellen)

Systemvoraussetzungen
Minimale Systemvorraussetzungen
  • Getesten mit Windows XP SP 2 (Windows 9x/ME/NT/2000/Vista sind nicht getestet) (Windows 9x/ME/NT/Vista wird offiziel nicht unterstützt)
  • 256 MB RAM (je nach Betriebssystem kann auch mehr benötigt werden)
  • 40 MB Festplattenplatz + Platz für die Picture-Sets (ein Picture-Set mit 50 Bildern braucht ca. 5 MB)
  • OpenGL 1.3 - fähige Grafikkarte mit mindestens 64 MB Video RAM
  • Minimale Bildschirmauflösung: 800x600
  • Windows kompatible Soundkarte
  • Maus und Tastatur
Empfolene Systemvorraussetzung
  • Windows XP SP 2
  • 1024 MB RAM
  • 40 MB Festplattenplatz + Platz für die Picture-Sets (ein Picture-Set mit 50 Bildern braucht ca. 5 MB)
  • OpenGL 2.0 - fähige Grafikkarte mit 128 MB Video RAM (GeForce 6800 Ultra oder ähnliche)
  • Windows kompatible Soundkarte mit Surround-Sound-Support
  • Internetanbindung mit ca. 10KB/s upload und 50KB/s download
  • Bildschirmauflösung >= 1024*768x32
Ein kurzer Blick in die Features
  • Komplett selbstgeschriebene Engine. Die Engine enthällt einen Textur- und ResourceManager, Kollisions-Engine, Server/Client-Engine, Script-Engine, Sound-Engine, KI-Engine und eine Grafik-Engine
  • Die GrafikEngine benutzt OpenGL zur Ausgabe. Das selbstgeschriebene Level-Format ist in einem VFS eingebettet und ist objekt-orientiert aufgebaut. Objekte steuern dabei die einzelnen Surfaces und helfen bei der Kollisionskontrolle. Die einzelnen Surfaces haben viele verschiedene Einstellungsmöglichkeiten, angefangen vom Blending-Mode bis hin zur Shader-Einbindung.
  • Die Lightmaps werden vom Editor ber Raytracing berechnet. Bisher ist nur Direct-Lighting eingebaut, für spätere Engine-Versionen ist auch Indirect-Lighting geplant. Die Lightmap-Auflösung jedes Surface kann beliebig skaliert werden. So kann für Surfaces mit wenig Licht- und Schattenabwechlsung eine kleinere Auflösung gewählt werden, um speicher zu sparen. Die Lightmaps werden dann noch durch einen Anti-Aliasing-Filter gejagt, um weichere Kanten zu zeichnen. Die Berechnungsdauer für die Lightmaps der mitgelieferten Karten hat insgesammt 15 Stunden gedauert.
  • Soundausgabe per FMod: die einzelnen Sound-Ermitter haben jeweils eine eigene Playlist, die automatisch verwaltet wird. Jeder Sound-Ermitter hat verschiedene Optionen, wie z.B. 3D oder 2D Sound. Dabei können die Sounddateien wahlweise aus dem Virtual-File-System oder direkt von der Festplatte geladen werden.
  • Selbstgeschrieben Script-Engine, die Pascal als Gramatik benutzt. Sie unterstützt viele Grundarten wie Byte, Single und String. Ebenso können Functios und Procedures mit beliebig vielen Parametern erstellt werden, die optional auch var-Parameter seien können. Ebenso unterstüzt die Script-Sprache die üblichen for, repeat und while-Schleifen. If und case-Anweisungen (auch mit Strings) sind ebenfalls vorhanden, genauso wie Kompileranweisungen wie {$IFDEF} oder {$INCLUDE}. Zudem können weitere Units per uses-Deklaration hinzugefügt werden. Es können "echte" Delphi-Funktionen eingebunden werden. Als zusätzliche Hilfe können diese externen Funktionen auch in Klassen zusammengefasst werden, die auch Klassenvererbung unterstützen. Auch können Variablen aus dem Programm heraus ausgelesen und verändert werden. Ein Compiler kompiliert die Skripte einmal in ByteCode, der dann von einer RunTime-Klasse ausgeführt wird.
  • Selbstgeschriebenes Multiplayer-Protokoll mit Chatunterstützung, Rechtesystem, Kick- und Bannoption, Web-Interface zur optionalen Steuerung des Servers, File-Download, Passwortsystem, ...

Screenshots
GalleryCreator:
http://www.godlikesoft.de/images/ext...b/Screen51.jpg http://www.godlikesoft.de/images/ext...b/Screen52.jpg

Sysygy Image Viewer:
http://www.godlikesoft.de/images/ext...b/Screen53.jpg http://www.godlikesoft.de/images/ext...b/Screen54.jpg http://www.godlikesoft.de/images/ext...b/Screen55.jpg
http://www.godlikesoft.de/images/ext...b/Screen56.jpg http://www.godlikesoft.de/images/ext...b/Screen57.jpg
(der Balken rechts unten ist nur die aktuelle Position der Musikwiedergabe, keine Zeitbeschränkung)

Noch kurz ein Hinweis
Für alle, die keine Lust haben die Readme zu lesen: ich möchte euch warnen, dass das Erstellen eines Picture-Sets relativ lange dauern kann (je nach Auflösung des Ursprungsbildes 1 bis 2 Sekunden pro Bild). Ihr könnt zwar jederzeit das Hinzufügen abbrechen, doch ich würde euch raten, die Anzahl der Bilder auf ca. 50-60 pro Picture-Set zu begrenzen. Ihr könnt natürlich auch mehr verwenden, doch ich wollt euch nur sagen, dass das doch etwas Zeit in Anspruch nehmen kann.
Ich könnte zwar den Vorgang beschleunigen, dadurch würde aber die Qualität der Bilder zu sehr leiden - und das wäre gerade in einem Bildbetrachter nicht so toll.

Download
  • Download: 1.3 (mit Setup)hier (ca. 36 MB).
  • Download: 1.3 (ohne Setup)hier (ca. 37 MB)
  • Download: Beispiel-Picture-Set hier (ca. 8 MB)
  • Download: Patch auf Version 1.3 hier (ca. 2,5 MB)
  • Editor: auf Anfrage (bisher ohne Hilfe)
  • Lizenz: Freeware (Redistributionerlaubnis nur auf persönliche Anfrage)
  • Sprache: [Readme]: Englisch, [GalleryCreator]: Englisch, [Hauptprogramm]: Multi-Language (Englisch + Deutsch enthalten)
  • Version: 1.3
  • Programmiert mit: Delphi 7
  • Release-Datum: 13.05.2008

ChangeLog
Die neue Version steht als Patch sowie als kompletter Download zur Verfügung. Beide Dateien sind unter dem oben angegebenen Download-Link verfügbar. Der Patch ist nur für ein Update von der letzten Version aus gültig.

Version 1.3
  • Programm: Neue Karte hinzugefügt
  • Gallery Creator: seltene Probleme beim erstellen von Picture-Sets behoben (dank der Mithilfe von bitsetter)
  • Gallery Creator: Bilderqualität beim Hinzufügen von Bildern einstellbar
  • Gallery Creator: Bilder, die nicht eine Farbtiefe von 24 Bit haben, können jetzt auch hinzugefügt werden
  • Fehlendes Texturpacket nachgeliefert (wird nur benötigt, wenn keine Shader ausgewählt sind)
  • Chat-Fenster im Multiplayer nach hinten verlagert
  • Bot-Chat wird jetzt im Programm angezeigt (deaktivierbar)
  • Rechtschreibfehler in der deutschen Sprachdatei behoben
Version 1.2
  • Screenshots werden jetzt im Programmordner gespeichert (falls Konfiguration so eingestellt)
  • letzten vier Sekunden vom ersten Lied rausgeschnitten (war keine Musik mehr)
  • Nachrichtenfenster bei Multiplayer-Ereignissen anders positioniert
  • Namen der Spieler werden jetzt angezeigt (Multiplayer)
  • Chatfenster jetzt auch außerhalb der Lobby (Multiplayer)
  • Esc schließt die Lobby bevor das Menü angezeigt wird (Multiplayer)
  • Gammawert wird jetzt gespeichert und ausgelesen
  • allgemeine Soundeinstellungen können geändert werden
  • Schriftfarbe der Servereinstellungen in der Lobby geändert
  • AVs im Server behoben
  • Probleme beim Betreten der Galerie behoben (nur Mulitplayer)
  • Länge von Chat-Nachrichten nicht mehr so arg begrenzt
  • Pos1- und Ende-Tasten funktionieren bei den Eingabefeldern
Version 1.1
  • Ordner der Konfiguration jetzt beim Start wählbar (falls eine Wahl auf Grund der Rechte nicht möglich ist, kann man keine Auswahl treffen)
  • Kleiner Rechtschreibfehler in der deutschen Sprachdatei behoben
  • Taste für dauerhaftes Rennen eingeführt (default: Feststelltaste)
  • Weiche Animationsbewegungen deaktivierbar (manche mögen das nicht)

Feedback, Bugreports oder Ideen sind wie immer sehr erwünscht

Grüße
Dave
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
 
Benutzerbild von vsilverlord
vsilverlord

 
RAD-Studio 2009 Arc
 
#11
  Alt 9. Mai 2008, 14:38
Das Programm sieht gut aus! Warun machst du keinen richtigen Shooter daraus? ich glaube das würde mir besser gefallen xD
Volker
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#12
  Alt 9. Mai 2008, 14:45
Zitat:
Nun lasst ihn doch mal machen, er sagt doch, dass er das in Kürze ändern wird
Eben , wie gesagt, spätestens Sonntag wirds den Patch geben

Zitat:
Das Programm sieht gut aus! Warun machst du keinen richtigen Shooter daraus? ich glaube das würde mir besser gefallen xD
Kannst du gedanken lesen? Wenn ich ganz ehrlich bin, ist das Programm nur eine Testversion. Jetzt, wo die Engine einigermaßen läuft, hatte ich wirklich vor ein First-Person-Game zu machen. So ein Image Viewer ist von der "Game"-Logik extrem simplel, daher konnte ich mich mehr auf die innereien konzentrieren. Spielkonzept (Solokampagne, Schleich oder Actionshooter, usw) ist noch kein wirkliches vorhanden. Ich hab zwar bereits ein paar Ideen, aufm Papier steht aber noch nichts. Aber offiziell ist noch nichts angekündigt
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#13
  Alt 10. Mai 2008, 00:31
Mir sind gerade noch ein paar Fragen eingefallen, die ich gerne vor einer Implementierung wüsste: habe ich unter Vista oder mit Nicht-Admin-Accounts Schreibzugriff auf [Eigene Dateien\Meine Bilder]? Kann ich aus dem Programm heraus in %appdata% Ordner und Unterordner erstellen? Kann ich Unterordner in [Eigene Dateien\Meine Bilder] erstellen? Ich dachte gerade an folgende Struktur, würd aber vorher gern wissen, ob die sinnvoll/möglich ist
  • Die selbsterstellen Picture-Sets sowie die gedownloadeten Picture-Sets werden in dem Ordner [Eigene Dateien\Meine Bilder\My Picture Sets] gespeichert
  • Die Konfiguration wird in [%appdata%\Sysygy Image Viewer\config] gespeichert
  • Gedownloadete Levels werden in [%appdata%\Sysygy Image Viewer\downloaded maps] gespeichert
  • Gedownloadete Texturen werden in [%appdata%\Sysygy Image Viewer\downloaded textures] gespeichert
  • ...

Wichtig ist für mich, dass ich in den jeweiligen Verzeichnissen auch Unterordner aus dem Programm heraus erstellen kann. Das ist sehr wichtig.
Schon mal danke im Vorraus für alle Antworten
  Mit Zitat antworten Zitat
mkinzler

 
Delphi 11 Alexandria
 
#14
  Alt 10. Mai 2008, 07:42
Zitat von littleDave:
Mir sind gerade noch ein paar Fragen eingefallen, die ich gerne vor einer Implementierung wüsste: habe ich unter Vista oder mit Nicht-Admin-Accounts Schreibzugriff auf [Eigene Dateien\Meine Bilder]?
ja
Zitat:
Kann ich aus dem Programm heraus in %appdata% Ordner und Unterordner erstellen?
Nein. Mit aktivierter UAC unter Vista kommt allerdings kein Fehler, sondern es wird virtualisiert (Umleitung auf Userverzeichnis)
Zitat:
Kann ich Unterordner in [Eigene Dateien\Meine Bilder] erstellen? Ich dachte gerade an folgende Struktur, würd aber vorher gern wissen, ob die sinnvoll/möglich ist
Ja.

Zitat:
  • Die selbsterstellen Picture-Sets sowie die gedownloadeten Picture-Sets werden in dem Ordner [Eigene Dateien\Meine Bilder\My Picture Sets] gespeichert
  • Ol
    Zitat:
  • Die Konfiguration wird in [%appdata%\Sysygy Image Viewer\config] gespeichert
Geht nicht. Halte ich auch nicht für sinnvoll. Besser benutzerbezogene Konfig oder unter ALL_USERS
Zitat:
  • Gedownloadete Levels werden in [%appdata%\Sysygy Image Viewer\downloaded maps] gespeichert
  • Gedownloadete Texturen werden in [%appdata%\Sysygy Image Viewer\downloaded textures] gespeichert
  • ...
  • ALL_USERS
    Markus Kinzler
      Mit Zitat antworten Zitat
    Prototypjack

     
    Delphi 2009 Professional
     
    #15
      Alt 10. Mai 2008, 07:50
    Zitat von mkinzler:
    Zitat von littleDave:
    Mir sind gerade noch ein paar Fragen eingefallen, die ich gerne vor einer Implementierung wüsste: habe ich unter Vista oder mit Nicht-Admin-Accounts Schreibzugriff auf [Eigene Dateien\Meine Bilder]?
    ja
    Zitat:
    Kann ich aus dem Programm heraus in %appdata% Ordner und Unterordner erstellen?
    Nein. Mit aktivierter UAC unter Vista kommt allerdings kein Fehler, sondern es wird virtualisiert (Umleitung auf Userverzeichnis)
    Zitat:
    [*]Die Konfiguration wird in [%appdata%\Sysygy Image Viewer\config] gespeichert
    Geht nicht. Halte ich auch nicht für sinnvoll. Besser benutzerbezogene Konfig oder unter ALL_USERS
    Zitat:
    [*]Gedownloadete Levels werden in [%appdata%\Sysygy Image Viewer\downloaded maps] gespeichert[*]Gedownloadete Texturen werden in [%appdata%\Sysygy Image Viewer\downloaded textures] gespeichert[*]...[/list]
    ALL_USERS
    mkinzler, ich denke wir drei reden von unterschiedlichen "Übersetzungen" von %appdata%. In meinem Vista wird %appdata% (und das ist auch die Übersetzung von der ich ausgehe) zu "C:\Users\BenutzerName\AppData\Roaming". Hier ist es sehr wohl möglich Ordner anzulegen und die Datenspeicherung wäre auch Benutzerbezogen.

    Kann es sein, dass du den Pfad anders ausgelegt hast?

    Grüße,
    Max
    Max
      Mit Zitat antworten Zitat
    mkinzler

     
    Delphi 11 Alexandria
     
    #16
      Alt 10. Mai 2008, 07:57
    Zitat:
    Kann es sein, dass du den Pfad anders ausgelegt hast?
    Ja.
    Markus Kinzler
      Mit Zitat antworten Zitat
    Benutzerbild von littleDave
    littleDave

     
    Delphi 7 Professional
     
    #17
      Alt 10. Mai 2008, 20:04
    Danke erstmal für eure Tips, ich habs jetzt endlich geschafft, den Vista-Patch zu erstellen. Um den Patch zu installieren müsst ihr die exe-Dateien einfach nur aus dem Zip-File in das Hauptverzeichnis kopieren.

    Mit dem Patch hab ich alle Schreibrechte, die das Programm benötigt in C:\Documents and Settings\[User name]\Application Data\Sysygy Image Viewer\ ausgelagert (der Pfad wurde natürlich von Windows ausgelesen und nicht hard-codiert). Der Patch befindet sich auf der gleichen Download-Seite, wie das Hauptprogramm.
    Die Picture-Sets werden in C:\Documents and Settings\[User name]\My Documents\My Pictures\My Picture Sets\ gespeichert und geladen. Die alten Ordner der Picture-Sets werden ebenfalls noch mit ausgelesen. Die Konfiguration im Programmverzeichnis wird NICHT mehr ausgelesen.

    Noch ein Hinweis: das Hauptpacket hab ich noch nicht upgedatet. Das werd ich innerhalb der nächsten halben Stunde machen.
    //Edit: so, der Hauptinstaller ist ebenfalls geupdated.
      Mit Zitat antworten Zitat
    Benutzerbild von littleDave
    littleDave

     
    Delphi 7 Professional
     
    #18
      Alt 13. Mai 2008, 16:02
    Ich habe einen neuen Patch online gestellt. Ich habe mir gedacht, dass das automatische wählen eines Konfigurationsordners in C:\Dokumente und Einstellungen\[Benutzername]\Application Data nicht jedermanns Sache ist. Daher hab ich mir überlegt, dass man beim ersten Start den Zielordner auswählen kann. Wenn das Programm keine Rechte hat, in den eigenen Installationspfad zu schreiben, wird automatisch der %appdata%-Pfad ausgewählt. Falls jedoch die Möglichkeit besteht, in den Installationspfad zu schreiben, wird dem Benutzer ein Dialog angezeigt, mit dem er auswählen kann, ob in %appdata% oder im Programmverzeichnis gespeichert werden soll. Diese Auswahl wird dann in %appdata% gespeichert und kann somit von jedem Benutzerkonto auf einem PC unterschiedlich konfiguriert werden.
    Ich denke, mit dieser Auswahl kann man beide Parteien, %appdata%-Gegner und Befürworter (die Leute, die "gezwungen" sind in %appdata% zu speichern zähle ich mal zu den Befürwortern ) befriedigen.

    Den DownloadLink gibts wie immer im ersten Post

    Grüße
    Dave
      Mit Zitat antworten Zitat
    Benutzerbild von DeddyH
    DeddyH

     
    Delphi 11 Alexandria
     
    #19
      Alt 13. Mai 2008, 16:45
    Von %APPDATA% mal abgesehen ist das ein beeindruckendes Programm, Hut ab . Es macht richtig Spaß, durch die Galerie zu schlendern und sich seine eigenen Fotos anzuschauen.
    Detlef
      Mit Zitat antworten Zitat
    Benutzerbild von bitsetter
    bitsetter

     
    Turbo Delphi für Win32
     
    #20
      Alt 13. Mai 2008, 17:23
    Anscheinend wird der Gammawert nicht abgespeichert, das wäre für mich noch sinnvoll da mir die Umgebung doch zu dunkel ist. Den Gammawert jedesmal zu ändern ist ja dann doch nicht so toll.
      Mit Zitat antworten Zitat
    Themen-Optionen Thema durchsuchen
    Thema durchsuchen:

    Erweiterte Suche
    Ansicht

    Forumregeln

    Es ist dir nicht erlaubt, neue Themen zu verfassen.
    Es ist dir nicht erlaubt, auf Beiträge zu antworten.
    Es ist dir nicht erlaubt, Anhänge hochzuladen.
    Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

    BB-Code ist an.
    Smileys sind an.
    [IMG] Code ist an.
    HTML-Code ist aus.
    Trackbacks are an
    Pingbacks are an
    Refbacks are aus

    Gehe zu:

    Impressum · AGB · Datenschutz · Nach oben
    Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 Uhr.
    Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
    LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
    Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz