ProfilProfil
 Registrieren
 Login
Bild der WocheBild der Woche

(von Backslider)
Kommentare (0)
****

Weitere
User onlineBenutzer online
Gäste online: 10
Mitglieder online: DeStruktor, DrZoidberg
Registrierte Mitglieder: 2116
Neustes Mitglied: onkel_keks

UI Engine

Neue Antwort erstellen

 

 
 

Bewertung
1 - Sehr gut
72%
 72%  [ 18 ]
2 - Gut
16%
 16%  [ 4 ]
3 - Befriedigend
4%
 4%  [ 1 ]
4 - Ausreichend
4%
 4%  [ 1 ]
5 - Mangelhaft
0%
 0%  [ 0 ]
6 - Ungenügend
4%
 4%  [ 1 ]
Stimmen insgesamt : 25

 
 

 

Autor Nachricht
 
 
Krissel095
Member


Anmeldedatum: 21.12.2009
Beiträge: 97

BeitragVerfasst am: 10.05.2012, 08:23    Titel: UI Engine Antworten mit Zitat

Eine auf echter Geometrie basierende, Theme-fähige UI Engine, die ich für mein aktuelles Pokemon MMORPG geschrieben habe.

Momentan sind gängige Controls wie Textboxen, Panels, Windows, Buttons, Scrollbars, Checkboxen usw. bereits implementiert. Eigene Controls können über die Beerbung von Widget erstellt werden.

Die Controls werden dabei über RenderTargets gacached, sodass die Geometrie nur bei Änderungen neu gezeichnet werden muss.

Für eigene Themes kann man über die Graphics2D Klasse, sowie einen kompletten Graphics-Namespace bekannte Funktionen aus GDI+ nutzen, um z.B. Shapes, Brushes und Pens zu erstellen und diese dann in ein WidgetView hinzuzufügen.

Arbeitszeit: etwa 4-6 Wochen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


JeReT
Member


Anmeldedatum: 19.07.2007
Beiträge: 3248
Wohnort: µnchen

BeitragVerfasst am: 10.05.2012, 14:17    Titel: Antworten mit Zitat

Da gibt es absolut nichts zu meckern! Sieht top aus! Sehr gute arbeit hast du da scheinbar geleistet. Daher gibt es von mir die bestnote.

Das einzige manko ist, dass dieser Windows-Style zu sogut wie keinem Spiel passt. Aber ich nehme an, man kann die Themes ganz nach seinen Bedürfnissen gestalten.

Wenn du dafür einen Editor schreibst, würde ich mich sogar bereit erklären, mein mächtiges XML-Serialisierungsframework dir zur Verfügung zu stellen und eine angepasste Klasse zu schreiben, mit der man mit einem methodenaufruf einen theme oder einen menu-screen (de-)serialisieren kann. Bedingung wäre aber, dass auch ich die GUI-Engine verwenden darf Wink


EDIT: Ich weiß, dass du einen Shader zum Maskieren verwendest. Sind sonst noch andere eigene Shader im Spiel?Es geht mir darum, ob man das ganze für das Windows Phone zum laufen bekommt...
_________________
Idea Shapes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger ICQ-Nummer


Luux
Member


Anmeldedatum: 11.12.2011
Beiträge: 119

BeitragVerfasst am: 10.05.2012, 14:30    Titel: Antworten mit Zitat

Sieht sehr gut aus Smile
Wirst du das ganze vielleicht irgendwann OpenSource machen? Wäre nicht nur für Anfänger interessant Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


Krissel095
Member


Anmeldedatum: 21.12.2009
Beiträge: 97

BeitragVerfasst am: 10.05.2012, 16:44    Titel: Antworten mit Zitat

@JeReT: Der einzige Shader, der hier verwendet wird ist ein eigener AlphaMask Effect, der die über Geometrie erstellte Maske mit dem Brush kombiniert. Ansonsten läuft alles über ein PrimitiveBatch und ein SpriteBatch. Wink

@Luux: Da wir sowieso planen, unsere Engine früher oder später Open-Source zu machen, wird wahrscheinlich auch die GUI Engine Open-Source. Momentan gibt es aber noch keine wirklich für die Öffentlichkeit zugängliche Version, da ich mich noch um ein Memory Leak kümmern muss, dass durch die RenderTargets verursacht wird. Bis ich das gefunden habe, wird es noch ein bisschen dauern.

MfG
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


Razer
Member


Anmeldedatum: 31.05.2009
Beiträge: 1796

BeitragVerfasst am: 13.05.2012, 12:33    Titel: Antworten mit Zitat

Wow, echt fantastische Arbeit Smile

Wär natürlich nice wenn das mal Opensource/Closed-Source o.Ä. werden würde, ein System ala GDI+ für XNA wär echt top...

Kannst du vielleicht noch weitere Screenshots posten? Vielleicht ein paar andere Controls, anderes Theme oder andere Brushes usw.?
Wenn dir das nicht zu viel Arbeit ist natürlich - würd das gerne sehen Smile

Auch von mir gibt´s die 1 Wink

MfG
R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen


Bert
Member


Anmeldedatum: 19.06.2011
Beiträge: 162

BeitragVerfasst am: 26.05.2012, 20:26    Titel: Antworten mit Zitat

Wie hast du diese schönen Textboxen hinbekommen ?
Un who the fuck hat ne 6 gegeben ?
_________________
Nein ! nicht Bert !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


Krissel095
Member


Anmeldedatum: 21.12.2009
Beiträge: 97

BeitragVerfasst am: 27.05.2012, 19:19    Titel: Antworten mit Zitat

Die Textboxen werden über unser Graphics2D Objekt gerendert. Jedes Widget hat ein WidgetView, das vom aktuell geladenen Theme erstellt wird. Ein WidgetView enthält geometrische Formen, sowie Brushes und Pens, die die Darstellung des Widgets übernehmen. Im Fall der Textbox ist das ein abgerundetes Rechteck für den Hintergrund mit einem LinearGradientBrush und ein halbtransparenter, schwarzer Pen.

Falls du die Eingabe an sich meinst arbeiten wir mit einem NativeEventInput, der quasi die Systemevents aufgreift und dir in Abhängigkeit des aktuellen Keyboardlayouts die entsprechenden Character zurückgibt. Cursorposition, Selektion, Textscrolling usw. muss natürlich auch behandelt werden, allerdings ist das wiederverwendbar in den TextInputCore ausgelagert. Wink

MfG
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


Bert
Member


Anmeldedatum: 19.06.2011
Beiträge: 162

BeitragVerfasst am: 28.05.2012, 09:39    Titel: Antworten mit Zitat

Uuuuuh ;D
Also die Textboxen sind wirklich schön gemacht ;D
Ist das projekt open source ? Oder gibt es ein Tutorial dafür ?
in XNA habe ich noch nie schöne Textboxen hinbekommen...
_________________
Nein ! nicht Bert !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


MasterSoft
Member


Anmeldedatum: 26.05.2012
Beiträge: 27

BeitragVerfasst am: 28.05.2012, 10:52    Titel: Antworten mit Zitat

Also wenn es ein Tutorial dafür gibt, müsste das ziemlich lang sein Razz Ich denke da musst du dir noch ein wenig Gedanken machen... Ich habe damals auch lange gebraucht als ich Textboxen für mein Projekt entworfen habe. Smile
_________________
mfg
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden


Beiträge der letzten Zeit anzeigen:   
 
Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de