Alter : 30 Ort : Karlsruhe Anmeldedatum : 02.03.09
Thema: Re: Erstellung eines HUDs Sa Apr 03, 2010 12:52 pm
Tooles Tut! Da bekommt man echt lust viiele viele sinnlose HUDs zu machen! Ich werde den ganzen Bildschirm vollkleistern! Muhahahahaaaaa!
...Naja, ich werd erstmal nur EIN HUD versuchen xD
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Erstellung eines HUDs Sa Apr 03, 2010 2:57 pm
Du kannst ja eigentlich mehrere HUDs in eins stopfen. Also 1 Timer aber mehre Ausgaben und Grafiken auf dem Bildschirm. Spart gute Rechenleistung.
Tackleberry Leutnant
Anmeldedatum : 29.04.09
Thema: Re: Erstellung eines HUDs So Apr 04, 2010 5:22 am
Toastbrot schrieb:
Feinere Farbabstufungen sind natürlich möglich aber ich habe das hier eher einfach halten wollen.
Es geht sogar sehr genauer! Mit nahezu dynamischen Farbübergängen, und zwar ohne alle Farben einem Lebensenergiebereich zuzuordnen. Ich hab das Tutorial mal nachgebaut (ein sehr gutes Tutorial übrigens ) und mit dynamischen Farbübergängen siehts noch besser aus. Wer wissen will, wies geht, liest weiter:
Code:
func Farbe(object clonk) { var value; //eine neue Variable erstellen value = HSL((GetEnergy(clonk)*85)/(GetPhysical("Energy",0,clonk)/1000), 200 ,127); return(value); }
Also, was ist dieses Wunderteil HSL? HSL ist eine Funktion zum Erstellen eines 32-Bit-Farbwertes aus 3 Parametern. Ein 32-Bit-Farbwert ist auch das was bei RGB herauskommt, nur dass dort mit Rot-, Grün-, und Blauanteilen gearbeitet wird. Bei HSL dagegen wird mit dem Farbton (1. Parameter), der Sättigung (2. Parameter) und der Helligkeit (3. Parameter) gearbeitet.
Also, was passiert hier? Zur Übersichtlichkeit hab ich die 3 Parameter in unterschiedlichen Farben dargestellt. Wir fangen mit 2 und 3 an, da sie einfacher zu verstehen sind: 200 ist die Sättigung (255 ist max.) und 127 ist die Helligkeit (255 ist max.).
Nun zum ersten Parameter, das hat ein bisschen was mit Mathematik zu tun: (GetEnergy(clonk)*85)/(GetPhysical("Energy",0,clonk)/1000)
- Das ist der aktuelle Energiewert des Clonks, multipliziert mit 85. Warum 85? Siehe unten. - Das ist der Energywert des Clonks aus der DefCore, dividiert durch 1000. Wieso 1000? Siehe erster Post in diesem Thread
Die 85 hat mit dem Farbtonwert von HSL in Clonk zu tun, wer noch nicht dem Link in die Doku gefolgt ist: 85 ist reines Grün. Wer nun einmal nachrechnet: (Volle Energie des Clonks * 85) / Voller Energiewert aus der DefCore. Was bleibt übrig? Genau, die 85. Folglich ist bei voller Energie die Farbe grün. Passt halt. Wer nun weiterrechnet wird feststellen, dass die Werte bei sinkender Energie immer kleiner werden. Und kleinere Werte, die gegen 0 laufen haben den Farbton rot, passt also auch.
Das ist die gesamte Logik, die hinter dieser Zeile steckt. Wer ein bisschen mit den Farb-, Sättigungs- und Helligkeitswerten herumspielt und ein bisschen mathematisch denken kann, kann sich so selbst dynamische Farbübergänge in allen Farben machen! Wenns noch Fragen gibt, fragt nur! (;
Nebenbei: So kann man z.B. auch Helligkeitsübergänge machen, indem man statt dem Farbton die Helligkeit ändert!
Pitri Feldmarschall
Alter : 30 Ort : Karlsruhe Anmeldedatum : 02.03.09
Thema: Re: Erstellung eines HUDs Sa Apr 10, 2010 1:39 pm
OK das mit dem Farbübergang hätte ich auch gepostet, nur hätte ichs anders gemacht! Grün und rot als variable und je nach Stand verringern. Ich hätte kein HSL benötigt...
Spoiler:
Hier mein HUD Ergebnis: Waffenvorrat und Nachladezeit! (Grafisch ein wenig tollerer als deins und btw: Fähnrich Erster Klasse! xD)
Stephan Borgs Kadett
Alter : 29 Ort : Duisburg Meiderich Anmeldedatum : 09.03.10
Thema: Re: Erstellung eines HUDs Sa Apr 10, 2010 2:54 pm
Dein Hud gefällt mir, wirklich. Aber, über welche Waffe informiert dich das Hud?
Tackleberry Leutnant
Anmeldedatum : 29.04.09
Thema: Re: Erstellung eines HUDs Sa Apr 10, 2010 5:55 pm
@Pitri Nur mit RGB ist es ziemlich schwierig nicht die Farbwerte zu verlieren, oder wie hättest du das gemacht?
WarPig Leutnant
Alter : 30 Anmeldedatum : 16.04.10
Thema: Re: Erstellung eines HUDs Sa Apr 17, 2010 12:42 am
Hi, das tut is echt super, ABER: wenn ich versuche mir zwei Werte (energie und atem) mit einem Timer anzeigen zu lassen gibts immer massenweise errors. Ich habs auch schon mit zwei Timern versucht, aber dann zeigt er immer nur den Wert des zuerst aufgerufenen. Ich habs auch mit zwei Actions in der Actmap ausprobiert, hilft alles nix. Bitte helf mir! lg WarPig
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Erstellung eines HUDs Sa Apr 17, 2010 11:55 am
Kannst du uns den Script zeigen, pls?
WarPig Leutnant
Alter : 30 Anmeldedatum : 16.04.10
Thema: Re: Erstellung eines HUDs Sa Apr 17, 2010 11:53 pm
Thema: Re: Erstellung eines HUDs Mo Apr 19, 2010 6:30 pm
Afaik kann eine CustomMessage nur einmal über dem gleichen Objekt aufgerufen werden. Du brauchst also noch ein zweites Objekt, ein unsichtbares Hilfsobjekt, bei dem du die zweite Nachricht aufrufen kannst. Du erstellst also dieses Objekt, gibst ihm die gleiche Position, VIS_None und erstellst die Message.
Pitri Feldmarschall
Alter : 30 Ort : Karlsruhe Anmeldedatum : 02.03.09
Thema: Re: Erstellung eines HUDs Mo Apr 19, 2010 7:23 pm
Stephan Borgs schrieb:
Dein Hud gefällt mir, wirklich. Aber, über welche Waffe informiert dich das Hud?
Ich hab das Waffensystem von einem Adventureszenario geremaked! Ich kanns ja mal aufs CCAN laden!