Hud via 2 Views

    • GM 8

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Hud via 2 Views

      Servus Gm-d Community,
      Ich habe 2 Views, welche ich beide in das Spielfenster zeichnen lassen will, die sich jedoch nicht überschreiben.
      Daher habe ich die eine View per 'Port on Screen' Y ein stück tiefer zeichnen lassen und die zweite view nun in den Bereich darüber.
      Soweit funktioniert das alles, wenn ich jetzt jedoch versuche z.B per view_xview[1] etwas in die view zu drawen, bleibt die view einfach leer.

      MfG Marvin159
    • Also eigentlich sollte das nicht passieren sofern nicht das Studio einen merkwürdigen Bug hat.
      Bist du dir sicher dass du das richtige View (1) eingestellt hast und auch den korekten y-Wert benutzst?

      Bedenke auch dass in so einem Fall das Drawevent jeden step zweifach durchlaufen wird wobei beime rsten durchlaufen auf dem ersten View gedrawt wird und beim ZWeiten, auf dem zweiten View usw.
      Via view_current kannst du bestimmen in welchem View grad gezeichnet wird.

      Willst du auf diese Drachen und -eier klicken?
      Sie werden sich freuen ;)
    • also..
      ein HUD in einer zweiten view funktioniert weder besonders gut (zb falls man sie nicht viereckig, transparent oder sonst etwas erscheinen lassen will) noch ist das ganze sonderlich performant oder logisch. es ist wehsentlich einfacher und sauberer das ganze einfach oben auf die normale view zu zeichnen.
      hast du irgendwelche zwingenden gründe dafür das aufzusplitten?
    • DragonGamer schrieb:

      Also eigentlich sollte das nicht passieren sofern nicht das Studio einen merkwürdigen Bug hat.
      Bist du dir sicher dass du das richtige View (1) eingestellt hast und auch den korekten y-Wert benutzst?

      Bedenke auch dass in so einem Fall das Drawevent jeden step zweifach durchlaufen wird wobei beime rsten durchlaufen auf dem ersten View gedrawt wird und beim ZWeiten, auf dem zweiten View usw.
      Via view_current kannst du bestimmen in welchem View grad gezeichnet wird.
      Ich schätze genau hier lag mein Problem, da ich weder view_current benutzt habe, noch zweimal gedrawt habe, vielen Dank :)

      florpp schrieb:

      also..
      ein HUD in einer zweiten view funktioniert weder besonders gut (zb falls man sie nicht viereckig, transparent oder sonst etwas erscheinen lassen will) noch ist das ganze sonderlich performant oder logisch. es ist wehsentlich einfacher und sauberer das ganze einfach oben auf die normale view zu zeichnen.
      hast du irgendwelche zwingenden gründe dafür das aufzusplitten?
      Nunja, es ist nur ein kleines, 32 pixel hohes, quadratisches HUD, daher sollte es ganz gut funktionieren, allerdings werde ich wahrscheinlich wirklich auf ein normales HUD zurück greifen.. mal sehen, Vielen Dank euch beiden

      MfG Marvin159
    • florpp schrieb:

      also..
      ein HUD in einer zweiten view funktioniert weder besonders gut (zb falls man sie nicht viereckig, transparent oder sonst etwas erscheinen lassen will) noch ist das ganze sonderlich performant oder logisch. es ist wehsentlich einfacher und sauberer das ganze einfach oben auf die normale view zu zeichnen.
      hast du irgendwelche zwingenden gründe dafür das aufzusplitten?

      Ein Grund kann es zum Beispiel sein wenn man durch das verändern des windows-in-room eine Zoomfunktion einbauen will.
      Wenn man dies nämlich macht, dann ist es nahezu unmöglich weiterhin ein gleichaussehndes Hud auf den Bildschirm zu zeichnen...

      Willst du auf diese Drachen und -eier klicken?
      Sie werden sich freuen ;)
    • DragonGamer schrieb:

      florpp schrieb:

      also..
      ein HUD in einer zweiten view funktioniert weder besonders gut (zb falls man sie nicht viereckig, transparent oder sonst etwas erscheinen lassen will) noch ist das ganze sonderlich performant oder logisch. es ist wehsentlich einfacher und sauberer das ganze einfach oben auf die normale view zu zeichnen.
      hast du irgendwelche zwingenden gründe dafür das aufzusplitten?

      Ein Grund kann es zum Beispiel sein wenn man durch das verändern des windows-in-room eine Zoomfunktion einbauen will.
      Wenn man dies nämlich macht, dann ist es nahezu unmöglich weiterhin ein gleichaussehndes Hud auf den Bildschirm zu zeichnen...

      naja als "nahezu unmöglich" würde ich das jez nicht bezeichnen...
      eine einfache variable global.zoom, die jedes objekt beim zeichnen abfrägt, und auf die es zeichen-position und -scale anpasst würde ja schon reichen ;)
    • florpp schrieb:


      naja als "nahezu unmöglich" würde ich das jez nicht bezeichnen...
      eine einfache variable global.zoom, die jedes objekt beim zeichnen abfrägt, und auf die es zeichen-position und -scale anpasst würde ja schon reichen ;)

      Nicht wirklich.. dank GM's etwas merkwürdigem Renderer und Ungenauigkeit neigt das Verfahren dazu 1-pixelige Linien verschwommen bzw. usncharf darzustellen. Hab mich mit diesem Problem rumschlagen müssen bis ich festgestellt hab, dass zwei Views die akzeptablere Lösung waren.
      Außerdem muss man diesen Zoomfaktor auch auf jedes einzelne Element anwenden da ein Hud sehr selten nur aus einer einzigen Grafik besteht, was einen ziemlichen Aufwand bedeutet. Man könnte das ganze auch auf eine Surface zeichnen wobei man dann aber wiederum das doofe Problem mit der Transparenz hat...

      Willst du auf diese Drachen und -eier klicken?
      Sie werden sich freuen ;)