Discord: Start an Activity
Bringen Sie den Teamgeist in Ihrem Unternehmen auf das nächste Level!
Technologie
Dieser Artikel soll den Begriff Draw Calls erklären und die Arbeit in Unity erleichtern und verbessern.
Ein Draw Call wird vom Computer ausgerufen, um ein Mesh zu rendern. Dabei handelt es sich vielmehr um einen Befehl, der von der CPU an den Grafikprozessor GPU weitergeleitet wird. Erstellt man eine Szene in Unity mit mehreren Objekten, so wird für jedes Objekt ein Draw Call an die GPU gesendet. Hat ein Objekt beispielsweise zwei Materialien, so müssen zwei Draw Calls für dieses Objekt aufgerufen werden. Sind viele Objekte in einer Szene, so kann es vorkommen, dass die CPU überlastet ist und nicht alle Draw Calls weiterleiten kann. Die CPU funktioniert in dieser Hinsicht wie ein Trichter: Es kann immer nur ein Draw Call auf einmal hindurch. Das Ziel des Designers sollte es also sein, die Anzahl der Draw Calls zu minimieren.
Bist Du bereit, Deine Spielevision zum Leben zu erwecken? Setze Dich noch heute mit uns in Verbindung, um mehr darüber zu erfahren, wie wir Dir mit unseren Spieleentwicklungsdiensten dabei helfen können, deine Vorstellungen und Ideen erfolgreich zu verwirklichen!
Das erste, was getan werden kann, ist Meshes miteinander zu verbinden. Mit “Strg + J” können in Blender mehrere Objekte zusammengefügt werden. In Maya funktioniert dies unter “Mesh - Combine”. Diese fallen dann alle unter einen gemeinsamen Draw Call. Um die einzelnen Objekte weiterhin bearbeiten zu können, ist es sinnvoll, eine zweite Datei zu speichern, in der die Objekte voneinander getrennt sind. In Unity kann anschließend im “Play”-Fenster unter “Stats” die Anzahl der Draw Calls als “Batches” eingesehen werden.
Ein weiterer Tipp ist das Reduzieren von Materialien. Wie bereits oben erwähnt, benötigt jedes Material einen eigenen Draw Call. Besitzt ein Objekt also mehrere Materials, so können diese unter einem Material zusammengefasst werden.
Um die Anzahl der Objekte zu reduzieren, kann zusätzlich ein Vorgang namens “Batching” vorgenommen werden. Alle unbeweglichen Objekte können im Inspektor als “Static” betitelt werden. Dies verbessert die Performance deutlich. Um bewegliche Objekte zu “batchen” müssen diese das gleiche Mesh und dasselbe Material vorweisen. Im Inspektor des Materials kann dieses “Batching” mit der Checkbox “Enable GPU Instancing” ausgeführt werden.
Das Draw Call System von Unity kann selbst bei leistungsstarken Computern für Probleme sorgen. Mit einigen Tricks können diese Performance-Einbrüche jedoch beseitigt werden. Durch das Zusammenfügen von Objekten und “Batching” kann die Framerate merklich verbessert werden.
Wir hoffen, dass Dir unser Artikel gefällt und möchten Dich dazu einladen, uns Deine Gedanken und Fragen zu dem Thema mitzuteilen. Wenn Du Fragen, Kommentare oder Feedback zum Inhalt dieses Artikels hast, zögere bitte nicht, uns auch diese im Kommentarbereich anzuvertrauen. Wir freuen uns immer, von unseren Lesern zu hören und uns an sinnvollen Diskussionen über die Spieleentwicklung zu beteiligen.
Frage uns einfach alles was Du wissen willst und wir werden unser Bestes tun, um die Antworten zu geben, nach denen Du suchst. Vielen Dank für Deine Unterstützung und wir freuen uns darauf, von Dir zu hören!
No Comments
Bringen Sie den Teamgeist in Ihrem Unternehmen auf das nächste Level!
VR-Attraktionen sind spezielle Einrichtungen, in denen Besucher fesselnde Virtual-Reality-Erfahrungen machen können. In diesem Artikel konzentrieren…
Dieser Artikel soll den Begriff Fighting Game erklären und einige Beispiele von bekannten Fighting Games aufzählen.
Write comment