Game Maker - 3D Support verbessert

    • GM 8

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

    • Game Maker - 3D Support verbessert

      Achtung Community!

      Vor kurzem wurde im Yoyogames Glog folgendes gepostet:
      Glog - Go faster stripes!
      In diesem Artikel wurde eine neue 3D-Engine für den Game Maker vorgestellt,
      die die 4fache Leistung der Ultimate 3D Engine schafft:

      Test an meinem Laptop(3DCube):
      (2.4Ghz, 2GB Ram, 128 MB Intel HD Graphics Card, also absoluter Schrott)
      2xAntiAliasing (8xAA: Grafikkarte packts nicht)

      -U3D:
      27.000 Blöcke @ 21 FPS

      -GMK8.1
      27.000 Blöcke @ 0.5 FPS

      -Neue 3D-Engine
      27.000 Blöcke @ 56 FPS (?!)

      Der Autor des Artikels(Mike) schrieb, dass die Engine bereits in
      Game Maker 8.1.72 (derzeitig 8.1.71) beinhalten sein könnte.
    • Ahhrg, jetzt mal langsam.

      Erstens ist die Nachricht schon alt, nur erst jetzt im Glog veröffentlicht worden.

      Zweitens wurden nur teile der alten engine optimiert!
      Optimiert in dem Sinne, dass statische modelle jetzt wirklich statisch sind, und daher nicht konstant in den VRAM gesendet werden müssen, sondern nur bei der erstellung ein mal rein geladen werden. Dynamische modelle, also d3d primitives werden mit alter Geschwindigkeit gedrawt. Und auch Texturen, Lichter und alles andere behält seine alte Geschwindigkeit.

      Die orginalpost von Daillyist hier zu finden.


      MfG SDX
    • Nur eine Sache würde ich gerne wissen:

      Auf meiner HD 6950 läuft das neue Beispiel mit 2xAA mit 500 - 1000 fps (Durchschnitt ca. 600), das mit 8xAA bei 180 - 800 fps (Durchschnitt ca. 200 fps)
      Der Wert variiert mit der Seite, auf die man schaut.

      AABEER: Das alte Beispiel bringt es nur auf 4-5 fps. SO stark kann der Unterschied doch garnicht sein???


      --> Is mir eig. wurscht, ich verwend GMOgre, aber es interressiert mich.
    • Nun, der zugegeben sehr große unterschied erklärt Dailly eigentlich sehr gut.

      Die Grafikkarte hat einen speicher, das sollte uns ja bekannt sein. In diesem Speicher liegt normalerweise ziemlich viel von dem Spiel das gerade läuft. Sprich: Texturen, Modelle usw.

      Dass der GM seine Texturen im VRAM hat, ist seit GM8 absolut standard. Nutzer von Gm7 und früher werden sich noch dran erinnern, an den Preload Parameter in den Erstellungsfunktionen von Backgrounds und Sprites.

      Bei Modellen war das bis jetzt nicht so. Die wurden Step für Step an die Graka gesendet und dort dann verarbeitet. Dies dauert natürlich. Was dailly jetzt gemacht hat, ist, wie eigentlich auch vorgesehen, Modelle schon bei deren Erstellung, also bei d3d_model_create(), in den VRAM zu senden. Jetzt wird nur noch jedes mal drawen die Transformationsmatrix und die Id der Textur sowie die des Modelles in den VRAM gesendet. Diese paar Informationen sind natürlich nichts im Verhältnis zu denen des Modelles. Immerhin gibt es dort Vertices mit allen deren U und V Koordinaten, deren Normalvektoren und deren Positionen.

      Wenn man diesen Effekt noch auf die Spitze treiben will, lädt man am besten alles was man so an Modellen auftreiben kann als ein einziges, zusammengesetztes Modell in den VRAM. Der Effekt: statt dutzende Modelle jeden step zu Drawen, und jedes mal die Transformationsmatrix u.Ä. zu senden, welches ja auch ein bisschen Zeit nimmt, einfach nur ein mal senden. So kann man die Kommunikation zwischen Spiel und Vram auf wenige Bit per Step reduzieren. Wo es früher sicherlich viele, viele Kilobytes waren.


      Ein anderer, mich auch erfreuender Effekt ist, dass jetzt kein Limit mehr an Polygonen existiert.

      Und noch was anderes: Ich habe in den letzten Wochen viel versucht, mit der GMAPI und der DX8.1 SDK das 3D vom GM zu optimieren. Mir ist so einiges gelungen, aber am AA kam ich dann doch nicht weiter. Selbst gute Leute im gamedev Forum konnten mir da auch nicht mehr helfen. Wenn ich jetzt sehe, dass die nächste Version vllt. mit AA kommt, bin ich natürlich hoch erfreut :D

      MfG SDX
    • Was mich nur verwundert, ist das ich auf 4 bzw. 500 fps komme, andere Leute mit schlechteren Grafikkarten aber auf 17 - 200 fps.
      -> Warum ist bei denen der unterschied nicht so groß???

      Ganz einfach, weil eben durch diese Änderung weniger die Grafikkarte als eher die CPU entlastet wurde... lies SDX's posts...

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

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DragonGamer ()