[Blockierte Grafik: http://www.mevedia.de/img/DW.png]
Download: http://www.mevedia.de/DesktopWidget (DWd.dll double based - CHM Hilfe enthalten)
Dokumentation: doc.mevedia.de/DesktopWidget
Version: 0.3a
IDE Version: 0.2a
Verfügbar als: DLL double based, GameMaker Extension
Systemvoraussetzungen: Windows 98/Me, 2000, XP, Vista, 7
* GDI+ DLL muss vorhanden sein (im Normalfall verfügbar, notfalls von Microsoft erhältlich), noch nicht alle explizit getestet
Ganze Spiele auf dem Desktop zu realisieren ist mühsam und für die meisten kaum möglich. Diese Bibliothek in form einer DLL und einem beigelegtem Editor ermöglicht es kinderleicht nahezu alles zu basteln.
Anwendungsbeispiele
- Spiele auf dem Desktop
- "Screenmates"
- Chat-Figuren
- Splashscreens
- Benachrichtungen
- Steuerelemente
- Assistent zur Programmeinführung
- Sonstige Effekte oder Anwendungszwecke
Dummy schlendert die Taskleiste entlang.
[Blockierte Grafik: http://www.mevedia.de/img/DesktopWidget_Screen2.png]
Verwendbar mit Auto-It?
Konzipiert wurde es anfangs für den GameMaker der mit seiner Leistung und seinen 2 Datentypen Double und String sehr begrenzt ist, weshalb bereits zu Beginn ein Schwergewicht zu optimieren steht. Momentan steht die DLL basierend auf dem Double Typ zur Verfügung, wobei es anwendungstechnisch nichts zu beachten gibt. Dennoch arbeite ich bereits an einer generellen DLL die mit Integer und Speicheradressen arbeitet. Somit auch der schon gewünschte Pre-Render-Callback mit dem selbst Zeichenoperationen direkt vorgenommen werden können. Beispiele für Auto-It folgen.
Bei Verwendung bevor Beispiele bereit stehen ist zu beachten: dwInit(), dwLoad() und dwFree() sind die minimalst benötigten Funktionen.
Uhr im Einsatz.
[Blockierte Grafik: http://www.mevedia.de/img/DWC.gif]
Bibliotheken
Widget Library
Alles rund um Widgets.
Sprite Library
Animationen auf einem Widget.
Desktop Library
Ermitteln der Dimension, verstecken von Symbolen etc.
Window Library
Fenster ermitteln, Dimensionen, bewegen, durch partiellen Titel finden uvm.
Hook Library
Ereignisse eines beliebigen Fensters abfangen.
Render Library * in kürze
Texte, Fromen direkt auf Widgets zeichnen.
Motion Capturing Library * in kürze
Bewegungen durch eine Webcam oder in Fenstern erkennen.
3D Widget Library * noch fehlend
3DS., X. Modelle animiert auf dem Desktop darstellen. Shader ebenfalls unterstützt.
Physics Library
Intern auf Sprites (Ragdoll) oder auf Widgets anwenden.
Widget Format
Komprimiert und einfach anzuwenden. Auch kann es durch einen Schlüssel gesichert werden, der beim öffnen dem Pfad angehängt wird. ("C:\... |KEY") Bereits durch einen einzigen Befehl steht das Widget zur Verfügung. Der Wechsel zwischen Animationen ist auch sehr einfach zu handhaben. Ereignisse auf einem Widget können ebenfalls empfangen werden.
Editor IDE
Erst seit kurzem ist die IDE verfügbar, weshalb dort noch einiges geschehen wird. Grafiken können in verschieden Formaten vorliegen, sollten aber für hohe Qualität und Transparenz im PNG oder TIF Format vorliegen. In der IDE kann ein gesammtes Widget konstruiert werden, von simplen Spielfiguren bis zur Uhr mit Steuerelementen. Ein Absturz bei häufigem Laden ist momentan nicht immer ausgeschlossen.
Ältere Bilder
Screenshots
[Blockierte Grafik: http://www.mevedia.de/img/DesktopWidgetIDE_Screen3.png]
[Blockierte Grafik: http://www.mevedia.de/img/DesktopWidgetIDE_Screen1.png]
Leistung
Kürzlich stand bereits eine grundlegende Verbesserung des Systems an, was so bei richtiger Verwendung bereits völlig performant ist. Zudem wurden diese Tests mit GameMaker durchgeführt.
Zu nächsten Versionen wird die Leistung nochmal deutlich erhöht, bis sich auch sehr große, viele und füllige Widgets in der CPU Belastung nicht merkbar machen. Zu Empfehlen ist aufjedenfall Optimierungen am Widget vorzunehmen, wobei nicht das reduzieren von Einzelbildern gemeint ist (was am wenigsten bedeutsam ist), sonder Attribute wie "Process Delay" und "Rener Delay".
Bereits durch einen unsichtbaren Process Delay von 20 ms fällt die CPU Belastung meistens zu 0-1%. Sobald eine wichtige Optimierung im Render System vorgenommen wurde sind diese Feineinstellungen erst bei sehr vielen Instanzen nötig!
Dummy im Einsatz.
[Blockierte Grafik: http://www.mevedia.de/img/DWD.gif]
Beispiele / Hilfe?
Schwerpunkt ist momentan wie erwähnt GameMaker, weshalb aber auch hierfür Projektbeispiele bereitstehen. Meine Pläne damit beziehen sich auf ein bereits früheren Wunsch: eine Desktop Katze! Und auch "Maus-Folger" wären Dinge die ich in nächster Zeit damit umsetzen werde. Für Auto-It werde ich in kürze Beispiele bereitstellen.
Ein Example
Warum es zwischen 0-5% schwingt? Zum einen ist es der Leistungshungrige GameMaker Interpreter, zum anderen ist das Widget noch nicht optimiert wobei man sagen muss das ein 240x240 animiertes Widget schon sehr groß ist. Nach Optimierungen des Widgets und des System ist aber selbst derartiges ein Leichtgewicht.
Wasserzeichen?
Da sich das Projekt momentan noch in früher Entwicklung befindet, kann ich auch eine kostenlose Vollversion Partnern zur Verfügung stellen. Zukünftig ist eventuell eine Lite und Professional Version geplant. (preislich etwa 5€) Wenn du ernshafte/seriöse Pläne mit DesktopWidget hättest kannst du mir gerne schreiben.
Nächste Version
Höchste Priorität liegt wie in jeder Version in der Leistung. Selbst auf schwachen Maschinen sollen die gleichen Ausmaße wie auf modernen Computern möglich sein. Ansonsten genannte orange markierte Punkte kommen neu hinzu.
Hoffe es findet Interesse.
lg,
famous