Seite 1 von 2

Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 13:43
von ReCon
Hallo zusammen,

da ich am letzten Humble Indie Bundle teilgenommen habe, hab ich natürlich wieder einen richtigen Stoß von nativen Linux Spielen vorliegen. Dazu gehört auch Trine, welches ich eigentlich bereits für Windows (5,-€) gekauft hatte und bis dato das Spiel bequem und absolut funktionstüchtig unter WINE laufen lies.
Aus diesem Grund war ich auch gewohnt mit ALT+TAB arbeiten zu können. D. h. ich spiele gerade Trine (oder ein anderes Spiel mit WINE) und jemand schreibt mich an ... also ALT+TAB schnell beantwortet und weiter gedaddelt. Gleiches gilt natürlich dann, wenn meinem Medienspieler die Playlist ausgeht. ALT+TAB, Medienspieler geöffnet, Musik ausgewählt und weiter gehts.

Um wieder auf den eigentlichen Punkt zurückzukommen, ich habe selbiges Prinzip auch mit der nativen Version von Trine durchführen wollen, aber leider ist das überhaupt nicht möglich. Selbst wenn ich das Spiel im Fenstermodus starte, fühle ich mich (dank X?) eingesperrt wie in einem Käfig. Die Maus geht nicht aus diesem Fenster raus und ebenso wenig will ALT+TAB mich aus dem "Schlamassel" rausholen!

Um noch zu diesem Thema eine spezifische Frage gestellt zu haben: Wie kann es sein, dass von Seitens X bzw. von Seitens des Spiels so "altmodisch" gehandelt wird? Das macht ein Multitasking unmöglich und ich kann mich ebenso wieder an meine Konsole setzen. Vor allem, wie hat WINE das realisiert? Oder hat das hier dann etwas mit dem DX <-> OpenGL Wrapper zu tun (unter Windows und DX ist das ja bekanntlich kein Problem mit dem minimieren eines Spiels).
Außerdem kündigten Ubuntu und Fedora an, sich künftig auf Wayland anstatt auf XOrg zu konzentrieren. Bietet vielleicht Wayland diesbezüglich künftig mehr komfortabilität als XOrg?

Ich hoffe man liest meine leichte Ernüchterung nicht so sehr raus ;)

Grüße
ReCon

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 14:38
von LinuxDonald
Ich weiß das mein Freund das selbe Problem mit Kubuntu hat und Wine wenn er EVE-Online spielt. Aber ich wieder rum habe das problem nicht mit Arch Linux und Xfce.... Also woran das liegt ka. Aber denke das das mit Waykand besser laufen wird weil Wayland wird an das jetzt angepasst und stammt nicht aus den 80/90er Jahren.... Da hat man sowas ja auch nicht gebraucht. Aber es könnte auch sein das das Game das vielleicht Supporten muss klingt komisch aber wer weiß....

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 15:10
von ChemicalBrother
ReCon hat geschrieben:... Vor allem, wie hat WINE das realisiert?...


Ich bin mir nich ganz sicher, aber ich dachte eigentlich, dass das Wine auch nicht immer zulässt. Mal abgesehen davon, dass ich kein Experte in der Sache mit Alt-Tab bin, habe ich öfter mal gelesen, dass X an der ganzen Sache Schuld ist. Ein Workaround wäre halt, das Spiel in einer seperaten X-Session zu starten.

Aber vielleicht weiß ja jemand anderes besser Bescheid.

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 17:32
von hiben
Also ich bin mir zu 99% sicher, dass das eher eine Freiheit der Programmierer ist, bzw. des verwendeten Toolkits. Ein Vollbildfenster ist unter X nichts anderes als ein großes Fenster ohne Deko. Ich kann z.B. Vollbilder von Wine teilweise verschieben und sehe dann mein Hintergrundbild... ;-) (Wine rechnet nicht damit, dass der Fenstermanager sowas böses macht.)

Es gibt im X Protokoll die Funktion GrabKeyboard, die - tada - das Keyboard komplett abfängt und alle Tastendrücke nur an die Anwendung weitergibt, die das Grabbing ausgelöst hat. Soweit ich weis, passiert das bei SDL standardmäßig und viele native Spiele (Nexuiz, bzFlag, ...) basieren darauf.

Wenn ich z.B. mit Java in den Vollbildmodus schalte dann kann ich Alt-Tabben wie ich will und andere Anwendungen poppen in den Fullscreen. Ist also nicht zwangsmäßig bei Vollbild ein Problem.

Es wäre mal interessant zu wissen, ob man SDL per Environment vielleicht zu anderem Verhalten überreden kann. Aber das weis ich leider nicht...

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 19:53
von sixsixfive
ALT-TAB kommt nicht vom X-server sondern vom Fenstermanager (ist unter Windows übingens nicht anders, allerdings werden in Windows alle Programme über den Fenstermanager gestartet/verwaltet).

Native Spiele laufen oft im Vollbildmodus direkt über dem X-Server. Im Fenstermodus meist mit SDL welches alle Eingaben nicht an den Fenstermanager weiterleitet (übrigends ein Feature, da sich Tastenkombinationen sonst leicht überschneiden könnten), dafür kannst Du aber in das Menü wechseln worauf SDL ind den Schlaf-Modus geht und der Mauszeiger usw. freigegeben wird.

Es ist also keinesfalls "altmodisch" sondern very very usefull

edit:
ReCon hat geschrieben:Selbst wenn ich das Spiel im Fenstermodus starte, fühle ich mich (dank X?) eingesperrt wie in einem Käfig. Die Maus geht nicht aus diesem Fenster raus und ebenso wenig will ALT+TAB mich aus dem "Schlamassel" rausholen!


hupps, hab das wohl gestern übersehen versuch im Fenstermodus mal STRG+ALT+G

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 19.05.2011, 22:07
von hiben
sixsixfive hat geschrieben:Es ist also keinesfalls "altmodisch" sondern very very usefull

Ich bin zwar auch der Meinung, dass SDL nicht einfach Blind auf Alt+Tab horchen sollte, weil das 'der Standard' ist, aber das Problem ist eigentlich, dass nicht jedes Spiel so vernünftig ist und dem User eine Chance gibt zu 'entkommen'.
Es ist wie immer das alte Designer-Problem, dass man nicht davon ausgehen sollte, dass die eigene Applikation das Zentrum des Universums ist. (triviales Beispiel: bzFlag blockt komplett, da kommt man nicht mehr raus...)

Ich bin kurz davor einen kleinen LD_PRELOAD Hack zu schreiben, der einem zumindest bei SDL aus der Klemme hilft (habe schonmal sowas ähnliches gemacht, sollte ganz gut gehen). Es gab auch mal jemanden im Frictionalgames-Forum (Penumbra, Amnesia) der sowas geschrieben hatte, aber die Files sind nicht mehr online... :-/

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 24.05.2011, 10:08
von ReCon
Um hier nochmal auf das Thema zurückzukommen, ich finde es einfach nicht mehr zeitgemäß und in keinster Weiße nützlich. Sicherlich wird hier eine enstprechende "Portierbarkeit" geschaffen, bei System und Linux Distributionen, welche ebenfalls X11 einsetzen, allerdings möchte ich nun einmal Multitasking an meinem PC machen können und wenn ich jetzt nicht gerade entsprechend Ahnung habe als Benutzer, habe ich hier natürlich schlechte Karten ...

Für mich heißt es aktuell, dass ich als Workaround einfach einen zweiten XServer starte, jedoch könnte das, wie bereits oben erwähnt, eben nicht jeder.

Ich hab außerdem vor einigen Tagen mal das Spiel frogatto angetestet (wahnsinnig spaßig! Ich kann es nur jedem ans Herz legen) und hier wiederum gibt es keine Probleme das laufende Spiel zu verlassen. Ich kann sogar im Fenstermodus mit der Maus über das Bild gehen ohne Probleme ...

Grüße
ReCon

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 24.05.2011, 11:31
von ReCon
Ich durfte gerade etwas sehr nützliches feststellen. Mit der Tastenkombination STRG+G kann ich meine Maus aus dem Spiel "befreien" ... warum ist das nicht der Standard??

Grüße
ReCon

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 24.05.2011, 21:47
von sixsixfive
ReCon hat geschrieben:... warum ist das nicht der Standard??


Weil das starten eines 2-,3-,...,10ten usw. X-Servers eine viel einfachere und universellere Methode ist?

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 25.05.2011, 08:38
von Bauer87
Man könnte es auch darauf schieben, dass der XServer uralt ist und nicht abzusehen war, dass irgendwelche Programme sich die Eingabegeräte mal grabben und nicht mehr loslassen wollen. Es ist ja auch so, dass Programme die relative Position der Maus teilweise auf eher umständliche Weise berechnen müssen.

Ne Tastenkombination festlegen, welche die Maus von einem Programm löst, ist auch mehr Hack als alles andere. Ich finde ja schon nervig, dass ich meine Tatstatur nicht mehr nutzen kann, wenn X einfriert. Muss dann X immer per ssh beenden… Aber Modernisierung ist ja auf dem Weg.

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 25.05.2011, 10:25
von ReCon
sixsixfive hat geschrieben:
ReCon hat geschrieben:... warum ist das nicht der Standard??


Weil das starten eines 2-,3-,...,10ten usw. X-Servers eine viel einfachere und universellere Methode ist?


Kein Kommentar ... vielleicht aber ein kleiner Tipp, immer aus der Sicht des Benutzers denken.

@Bauer87: Ja, sieht wohl wirklich eher nach einem Hack aus, aber interessant wars alle mal :D

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 25.05.2011, 20:43
von sixsixfive
ReCon hat geschrieben:
sixsixfive hat geschrieben:
ReCon hat geschrieben:vielleicht aber ein kleiner Tipp, immer aus der Sicht des Benutzers denken.


An den denke ich, aber wie oft soll ich dir noch erklären das dies überhaupt nichts mit dem X-Server zu tun hat.

Du hast eigentlich nur 2 Möglichkeiten. Du kannst einen Bugreport bei den SDL-Enwicklern erstellen, dass SDL dir die Shortcuts deines Fenstermanagers klaut oder einen Wunsch an die Entwickler deines Fenstermanagers schreiben, dass sie doch bitte das "Klauen" der Shortcuts verhindern sollen. Zudem könntest Du (wie eigentlich üblich) als User/Benutzer einmal in das Handbuch deines X-Servers/Fenstermanageres schauen und erfahren wie Du mehrere X-Server verwendest bzw. Wie Du Vollbildprogramme über den Fenstermanager starten/verwalten kannst... (Wenn Du dir einen Boiler kaufst schaust Du doch auch vorher in das Handbuch, oder?)

*nix war und wird hoffentlich auch in Zukunft immer modular aufgebaut sein, d.h. Der Fenstermanager verwaltet die Fenster und nicht der X-Server..

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 26.05.2011, 07:57
von ReCon
@sixsixfive: Hab ich (bis auf am Anfang dieser Frage) irgendwo geschrieben, dass es etwas mit dem XServer zu tun hat? Es war eine Vermutung! Außerdem möchte ich dich darauf hinweisen, dass du damit angefangen hast, dass es doch besser wäre mehrere XServer zu verwalten bzw. das es praktikabler wäre. Ich habe zu dieser Aussage aus Sicht der Benutzer Stellung bezogen. Dann kommt von dir eine Antwort, mit dem Inhalt, dass ich doch Bitte das Handbuch lesen soll , es hätte ja nichts mit dem XServer zu tun. - Du widersprichst dich quasi selbst. Glaube mir, ich befasse mich mit entsprechenden Dingen IMMER bis ans mögliche und für mich ist es auch (wie ich oben bereits erwähnt habe) kein Problem einen zweiten XServer zu starten (da ich Admin bin, zähle ich mich nicht (mehr) als Benutzer), mir ging es eher um einen DAU bzw. "quasi DAU". - Dieser Einer ist evtl. anderes gewöhnt und geht eben davon aus, dass dies unpraktikabel ist (ich habe schon die Erfahrung gemacht, dass mich Leute eben gefragt haben, warum das so ist).
Naja, lassen wir das. Es ging hier nicht darum eine Kritik meinerseits zu setzen oder etwa eine herangehensweiße in Frage zu stellen, sondern eher zu verstehen, warum dies so ist und das ist mir jetzt soweit klar und ich kann das eben entsprechend vermitteln.

Danke an Alle für die Antworten :thumbup:

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 26.05.2011, 18:08
von sixsixfive
ReCon hat geschrieben:Außerdem möchte ich dich darauf hinweisen, dass du damit angefangen hast, dass es doch besser wäre mehrere XServer zu verwalten bzw. das es praktikabler wäre.


Ich wollte dich ledeglich darauf hinweisen das es somit eine viel mächtigere Methode gibt


Ich habe zu dieser Aussage aus Sicht der Benutzer Stellung bezogen. Dann kommt von dir eine Antwort, mit dem Inhalt, dass ich doch Bitte das Handbuch lesen soll , es hätte ja nichts mit dem XServer zu tun.


Weil es eben dort beschrieben ist, Ich gehe jetzt einfach mal davon aus, dass ein Benutzer sich mit seinem Betriebssystem auskennt, auch einmal die Handbücher liest und nicht erwartet, dass dieses OS genau wie Windows funktioniert. Solltest Du zu den ersteren gehören, dann hab ich da wohl was missverstanden.

Du widersprichst dich quasi selbst.


In wie weit? 5ter Beitrag = dass es nichts mit den Xserver zu tun hat, 9ter mit dem Hinweis auf verschiedene X-Server, 12ter praktisch eine Wdh. des 5ten da immernoch der X-Server dafür verantwortlich gemacht wird.

Glaube mir, ich befasse mich mit entsprechenden Dingen IMMER bis ans mögliche und für mich ist es auch (wie ich oben bereits erwähnt habe) kein Problem einen zweiten XServer zu starten (da ich Admin bin, zähle ich mich nicht (mehr) als Benutzer), mir ging es eher um einen DAU bzw. "quasi DAU". - Dieser Einer ist evtl. anderes gewöhnt und geht eben davon aus, dass dies unpraktikabel ist (ich habe schon die Erfahrung gemacht, dass mich Leute eben gefragt haben, warum das so ist).


Das ist schön, wenn Du dich damit befasst, sicher muss der Programmierer auch an den Nutzer denken, aber eben auch umgekehrt und dazu gehört eben auch das Lesen von den Handbüchern / Dokumentationen.

Es kann auch sein das ich in der Hinsicht etwas garstig reagiere da ich auf solche Themen alle paar Tage stoße, (zB. Also unter Windows geht das so warum nicht auch unter Linux/BSD/Solaris? oder Warum geht $NATIVEAPPXYZ nicht so wie $WINE/WINDOWSAPPZYX?) und es mir ehrlich bis zum Hals steht, und ich einfach nur sagen möchte RTFM!. Als diese Leute zum ersten mal mit Windows in Berührung gekommen sind wussten sie doch auch nicht alles und mussten sich ihr Wissen anarbeiten, Warum sollte es nun bei Linux anderst sein. ;)

Re: Native Spiele und die "Freiheiten" des X Servers

BeitragVerfasst: 26.05.2011, 23:35
von hiben
Bisher war bei mir der Leidensdruck noch nicht hoch genug um Spiele in einem separaten X-Server zu starten, daher ist folgendes nur eine Vermutung - bitte korrigiert mich ggf.

Wenn man nun aber, einen zweiten X-Server startet, dann geht einem ein sehr nützliches Feature verloren: Pop-Ups.
Ich meine damit die kleinen Nachrichten, die mir z.B. mein eMail/IM Client auf alle virtuellen Arbeitsflächen schmeißen kann, wenn etwas (mehr oder weniger) interessantes passiert.
Man mag das nun in einem Spiel als Stimmungskiller deuten - aber dann kann man's ja abschalten...

Wie geht die 'ZweitServer-Fraktion' damit um ? Oder ist dieser Wunsch ein spieltechnischer faux pas ? :)

Im Prinzip ist das für mich der eigentliche Grund, warum ich manchmal gern dem Spiel entkommen möchte; manchmal passiert etwas, was sofortiges Handeln erfordert - aber nicht unbedingt den Abbruch des Spiels.