Rotanteil der Raumfarbe und aller Objekte/Charakter erhöhen!
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Rotanteil der Raumfarbe und aller Objekte/Charakter erhöhen!
Hallo Leute!
Meine Frage:
Ich habe einen Raum, in dem ich Rotlicht anschalten will. Damit das ansclhießend natürlich halbwegs echt aussieht, sollte dann das Hintergrundbild, die Objekte und der Charakter im Raum einen höheren Rotanteil in den Farben haben. Ist das irgendwie möglich?? Ich möchte nämlich nicht alle Charakteranimationsphasen mit nem höheren Rotanteil neu importieren. Das gleiche müßte ich ja auch bei den Objekten machen. Dazu kommt noch ein Haufen Scripting, da der Spieler ja fast alles bei angeschlatetem Licht auch machen kann. Deswegen wäre es praktisch, wenn man einfach eine Art Rotfilter drüberlegen könnte.
Weiß jemand, ob das geht???
Meine Frage:
Ich habe einen Raum, in dem ich Rotlicht anschalten will. Damit das ansclhießend natürlich halbwegs echt aussieht, sollte dann das Hintergrundbild, die Objekte und der Charakter im Raum einen höheren Rotanteil in den Farben haben. Ist das irgendwie möglich?? Ich möchte nämlich nicht alle Charakteranimationsphasen mit nem höheren Rotanteil neu importieren. Das gleiche müßte ich ja auch bei den Objekten machen. Dazu kommt noch ein Haufen Scripting, da der Spieler ja fast alles bei angeschlatetem Licht auch machen kann. Deswegen wäre es praktisch, wenn man einfach eine Art Rotfilter drüberlegen könnte.
Weiß jemand, ob das geht???
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Was wahrscheinlich auch gehen würde:Chris Jones hat geschrieben:TintScreen (int red, int green, int blue)
Tints the screen with the specified RGB values. RED, GREEN and BLUE range from 1 to 100.
Pass (0, 0, 0) to turn off the tinting and go back to how the screen normally looks.
NOTE: This command is currently experimental, since it causes a massive slowdown in the engine, especially at high resolutions. If you use it, you should provide an option for the player to turn it off.
NOTE: This feature only works in hi-colour games.
Example:
TintScreen (100, 50, 50);
will tint a heavy dose of red.
Ein Objekt, dass als Sprite ein rotes Rechteck in Screengröße hat, bei (0;0) plazieren, dessen Transparency auf irgendwas zwischen 30 und 50 setzen, es non-clickable machen und dann bei Bedarf ein- und ausschalten.
Use gopher repellent on funny little man
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
So. ICh hab jetzt folgendes Problem bei der Thematik.
Arbeite ich mit Tintscreen, ändert er den Farbanteil für alles. Also auch für den Mauszeiger, die Guis etc. Das sieht natürlich komishc aus.
MAch ich das ganze mit einem raumgroßen Objekt, überdeckt das alle anderne Objekte und Hotspots und ich kann diese nicht mehr anwählen.
Rein vom Handling her ist die Objektvariante an sich shcon besser, aber wenn ich dadurch alle anderen Objekte blockiere, ist das natürlich blöd.
Irgendwelche Ideen? Kann man ein Objekt vielleicht rein Programmtechnisch "unsichtbar" machen, daß es zwar auf dem Bildschirm angezeigt wird, aber von AGS nicht weiter beachtet wird???
Arbeite ich mit Tintscreen, ändert er den Farbanteil für alles. Also auch für den Mauszeiger, die Guis etc. Das sieht natürlich komishc aus.
MAch ich das ganze mit einem raumgroßen Objekt, überdeckt das alle anderne Objekte und Hotspots und ich kann diese nicht mehr anwählen.
Rein vom Handling her ist die Objektvariante an sich shcon besser, aber wenn ich dadurch alle anderen Objekte blockiere, ist das natürlich blöd.
Irgendwelche Ideen? Kann man ein Objekt vielleicht rein Programmtechnisch "unsichtbar" machen, daß es zwar auf dem Bildschirm angezeigt wird, aber von AGS nicht weiter beachtet wird???
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Als Alternative könntest Du folgendes machen:
1. Alle Objekte im Raum rot färben:
Object.Tint(int red, int green, int blue, int saturation, int luminance)
bzw.
SetObjectTint(int object, int red, int green, int blue, int saturation, int luminance)
bzw. zu Gunsten der Performance ein neues, rotes Sprite machen und zu diesem wechseln.
2: Genauso alle Charaktere im Raum rot färben.
3: Hintergrund:
Im Grafikprogramm transparente, rote Ebene drüberlegen, abspeichern, dann als background frame importieren:
SetBackgroundFrame (int frame)
Wenn Du nicht schon die background frames für eine Animation im Hintergrund benutzt, sollte das eigentlich alles funktonieren.
Dann hättest Du Rotlicht praktisch ohne Performanceeinbruch (bis auf die Charaktere).
Du musst dann wahrscheinlich nur bei der ein oder anderen Aktion bissl mehr skripten.
1. Alle Objekte im Raum rot färben:
Object.Tint(int red, int green, int blue, int saturation, int luminance)
bzw.
SetObjectTint(int object, int red, int green, int blue, int saturation, int luminance)
bzw. zu Gunsten der Performance ein neues, rotes Sprite machen und zu diesem wechseln.
2: Genauso alle Charaktere im Raum rot färben.
3: Hintergrund:
Im Grafikprogramm transparente, rote Ebene drüberlegen, abspeichern, dann als background frame importieren:
SetBackgroundFrame (int frame)
Wenn Du nicht schon die background frames für eine Animation im Hintergrund benutzt, sollte das eigentlich alles funktonieren.
Dann hättest Du Rotlicht praktisch ohne Performanceeinbruch (bis auf die Charaktere).
Du musst dann wahrscheinlich nur bei der ein oder anderen Aktion bissl mehr skripten.
Use gopher repellent on funny little man
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7308
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Ich werd mal was anderes ausprobieren. Es gibt glaub ich auch noch den Befehl SetAmbientTint oder so ähnlich. damit kann man den Rotanteil aller Objekte und Charaktere verändern. Dann brauch ich nur noch den Backgroundframe in nem Graphikprogramm röten und bei Bedarf einfach zwischen den Frames umschalten.
Sollte von der Performance her auch annehmbar sein.
Sollte von der Performance her auch annehmbar sein.
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
Ich hab zwar keine Ahnung, wovon du da redest, aber hier ist nicht der richtige Platz dafürAnonymous hat geschrieben:Free Anonymous proxy list download: ***
I don't know what you're talking of but this is not the right place for that
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet