Skip to content
Versunken

Games und Lyrik

Von Spielen inspiriert

  • Inhalt
  • Über uns
  • Shop
    • Mein Konto
    • Kasse
    • Warenkorb
  • Games & Lyrik Podcast
  • Pressezentrum und Media-Kit
  • Jobs
  • Impressum
    • AGBs
    • Datenschutzerklärung
    • Disclaimer
  • 0 Artikel0,00 €
  • Toggle search form
Unity Logo

Externe Dateien in Untiy

Posted on 16. Oktober 20269. Oktober 2026 By Claudia Wendt Keine Kommentare zu Externe Dateien in Untiy
Externe Dateien in Untiy

Der Umgang mit externen Dateien in Unity spielt sowohl während der Spieleentwicklung als auch im fertigen Spiel eine wichtige Rolle. Bilder, Audiodateien, Konfigurationen und Textdateien können aus unterschiedlichen Quellen stammen. Nicht jede Datei muss bereits beim Erstellen des Projekts fest eingebunden sein.

Unity unterscheidet zwischen Dateien, die der Editor als Assets importiert, und Daten, auf die ein Spiel während der Laufzeit zugreift. Diese Unterscheidung beeinflusst, welche Funktionen du verwenden kannst, wo Dateien gespeichert liegen und ob sie nach dem Erstellen eines Builds noch verändert werden dürfen.

Besonders bei Spielständen, benutzerdefinierten Einstellungen, zusätzlichen Inhalten oder externen Konfigurationsdateien benötigst du einen geeigneten Umgang mit Dateipfaden und Speicherorten.

Inhaltsverzeichnis

Toggle
  • Was sind externe Dateien in Unity?
  • Der Unterschied zwischen Asset-Import und Dateizugriff
  • Welche Speicherorte stellt Unity bereit?
  • Application.dataPath – Zugriff auf den Datenbereich der Anwendung
  • Application.persistentDataPath – Dateien dauerhaft speichern
  • Eine Textdatei mit C# speichern
  • Eine gespeicherte Textdatei wieder einlesen
  • JSON-Dateien für strukturierte Spieldaten
  • Spielstände als JSON speichern
  • JSON-Spielstände wieder laden
  • StreamingAssets – Dateien unverändert in den Build übernehmen
  • Dateien aus StreamingAssets laden
  • Eine Textdatei mit UnityWebRequest laden
  • Resources – Dateien über das Unity-Ressourcensystem laden
  • Eine Textdatei mit Resources.Load einlesen
  • Addressables für die Verwaltung zusätzlicher Inhalte
  • Externe Bilder zur Laufzeit laden
  • Ein PNG-Bild aus persistentDataPath laden
  • Externe Audiodateien laden
  • Eine externe WAV-Datei abspielen
  • Dateien aus dem Internet herunterladen
  • Externe Dateien und Benutzerberechtigungen
  • Dateidialoge für vom Spieler ausgewählte Dateien
  • Dateien auf ihre Gültigkeit überprüfen
  • Dateipfade plattformunabhängig zusammensetzen
  • Dateien sicher speichern und überschreiben
  • Temporäre Dateien und Cache-Daten
  • Externe Dateien und die Performance
  • Typische Fehler beim Umgang mit externen Dateien
  • Welche Methode eignet sich für welche Dateien?
  • Externe Dateien als Erweiterung des Spiels

Was sind externe Dateien in Unity?

Als externe Dateien lassen sich Daten bezeichnen, die außerhalb der unmittelbar im Spiel verwendeten Unity-Objekte vorliegen. Dazu gehören beispielsweise Textdateien, Bilder, Audiodateien, JSON-Dateien oder gespeicherte Spielstände.

Entscheidend ist, wie Unity auf diese Daten zugreift. Eine Bilddatei im Assets-Ordner wird normalerweise vom Unity Editor importiert und als Textur verarbeitet. Eine Bilddatei, die ein Spieler erst nach der Installation auswählt, benötigt dagegen eine eigene Ladefunktion zur Laufzeit.

Auch Dateien, die bereits im Projekt liegen, können auf unterschiedliche Weise behandelt werden. Der Speicherort bestimmt häufig, ob Unity die Datei importiert, unverändert in den Build übernimmt oder sie erst über ein Script einliest.

Der Unterschied zwischen Asset-Import und Dateizugriff

Beim gewöhnlichen Asset-Import erkennt Unity Dateien im Assets-Verzeichnis und verarbeitet sie über den zuständigen Importer. Daraus entstehen Ressourcen, die du beispielsweise in Szenen, Prefabs oder Scripts referenzieren kannst.

Beim Dateizugriff zur Laufzeit liest dein Spiel dagegen Daten aus einem erreichbaren Speicherort. Die vollständigen Importfunktionen des Unity Editors stehen dabei nicht automatisch zur Verfügung.

Ein extern geladenes Bild ist deshalb nicht unmittelbar mit einem im Editor importierten Sprite gleichzusetzen. Du musst die Bilddaten zunächst laden, daraus eine Textur erzeugen und bei Bedarf anschließend ein Sprite erstellen.

Die grundlegenden Importwege behandelt der Artikel über die Importfunktion von Unity. Beim Zugriff auf externe Dateien stehen dagegen die Speicherorte, Dateiformate und eigenen Ladefunktionen im Mittelpunkt.

Welche Speicherorte stellt Unity bereit?

Unity stellt verschiedene Pfade zur Verfügung, die du über die Klasse Application abrufen kannst. Dazu gehören insbesondere Application.dataPath, Application.streamingAssetsPath, Application.persistentDataPath und Application.temporaryCachePath.

Diese Pfade erfüllen unterschiedliche Aufgaben. Manche beziehen sich auf die installierten Spieldaten, andere auf Dateien, die dein Spiel selbst speichern oder später erneut laden soll.

Die tatsächlichen Verzeichnisse unterscheiden sich je nach Betriebssystem und Zielplattform. Deshalb solltest du die von Unity bereitgestellten Pfade verwenden, statt feste Verzeichnisnamen vorauszusetzen.

Application.dataPath – Zugriff auf den Datenbereich der Anwendung

Mit Application.dataPath erhältst du einen Pfad zum Datenbereich der Anwendung. Im Unity Editor verweist dieser auf den Assets-Ordner des Projekts.

In einem fertigen Build kann der Pfad dagegen auf einen anderen Speicherort zeigen. Seine genaue Bedeutung hängt von der Plattform ab.

Für eigene Spielstände oder dauerhaft veränderbare Konfigurationsdateien solltest du diesen Pfad normalerweise nicht verwenden. Installationsverzeichnisse können schreibgeschützt sein oder sich bei Updates verändern.

Für solche Daten ist Application.persistentDataPath die geeignetere Grundlage.

Application.persistentDataPath – Dateien dauerhaft speichern

Der Pfad Application.persistentDataPath bezeichnet einen Speicherort für Daten, die dein Spiel über mehrere Starts hinweg behalten soll.

Dazu gehören beispielsweise Spielstände, Einstellungen, freigeschaltete Inhalte oder vom Spieler erstellte Daten.

Unity stellt für unterstützte Plattformen einen geeigneten Speicherpfad bereit. Dadurch musst du nicht selbst entscheiden, in welchem Benutzerverzeichnis die Daten abgelegt werden sollen.

Die gespeicherten Dateien bleiben normalerweise auch nach dem Beenden des Spiels bestehen. Ob sie bei einer Deinstallation oder bestimmten Plattformaktionen erhalten bleiben, hängt allerdings von der jeweiligen Umgebung ab.

Eine Textdatei mit C# speichern

Für einfache Textdateien kannst du die Klassen aus System.IO verwenden. Das folgende Beispiel speichert einen Text innerhalb des persistenten Datenverzeichnisses:

using System.IO;
using UnityEngine;

public class TextFileSaver : MonoBehaviour
{
    public void SaveText()
    {
        string path = Path.Combine(
            Application.persistentDataPath,
            "example.txt"
        );

        string content = "Meine erste externe Datei";

        File.WriteAllText(path, content);

        Debug.Log("Datei gespeichert: " + path);
    }
}

Path.Combine() setzt den Speicherpfad und den Dateinamen zusammen. Dadurch vermeidest du, die Verzeichnistrennzeichen für unterschiedliche Betriebssysteme selbst festlegen zu müssen.

Mit File.WriteAllText() schreibt das Script den angegebenen Text in die Datei. Existiert sie bereits, überschreibt die Methode ihren bisherigen Inhalt.

Bei produktiven Anwendungen solltest du mögliche Schreibfehler abfangen. Dazu gehören beispielsweise fehlende Berechtigungen oder ein nicht verfügbarer Speicherort.

Eine gespeicherte Textdatei wieder einlesen

Mit File.ReadAllText() kannst du den Inhalt einer vorhandenen Textdatei auslesen. Vorher solltest du prüfen, ob die Datei tatsächlich existiert.

using System.IO;
using UnityEngine;

public class TextFileLoader : MonoBehaviour
{
    public void LoadText()
    {
        string path = Path.Combine(
            Application.persistentDataPath,
            "example.txt"
        );

        if (!File.Exists(path))
        {
            Debug.Log("Datei nicht gefunden.");
            return;
        }

        string content = File.ReadAllText(path);

        Debug.Log(content);
    }
}

Das Script prüft mit File.Exists(), ob die Datei vorhanden ist. Anschließend liest es den Text ein und gibt ihn in der Console aus.

Dieses Verfahren eignet sich für kleinere Textdateien. Bei sehr großen Dateien oder häufigen Dateizugriffen solltest du zusätzlich auf Speicherbedarf und mögliche Blockierungen des Hauptthreads achten.

JSON-Dateien für strukturierte Spieldaten

Das JSON-Format eignet sich für strukturierte Daten, die dein Spiel speichern oder laden soll. Dazu gehören beispielsweise Spielerpositionen, Einstellungen, Inventarinhalte oder andere Spielzustände.

Unity stellt mit JsonUtility eine einfache Möglichkeit bereit, geeignete C#-Datenobjekte in JSON umzuwandeln und anschließend wieder einzulesen.

JsonUtility unterstützt allerdings nicht sämtliche Möglichkeiten allgemeiner JSON-Bibliotheken. Die Datenstruktur muss zu den Serialisierungsregeln von Unity passen.

Spielstände als JSON speichern

Das folgende Beispiel speichert einen einfachen Spielstand mit Levelnummer und Punktestand.

using System;
using System.IO;
using UnityEngine;

[Serializable]
public class SaveData
{
    public int level = 1;
    public int score = 0;
}

public class SaveGame : MonoBehaviour
{
    public void Save()
    {
        SaveData data = new SaveData
        {
            level = 3,
            score = 250
        };

        string json = JsonUtility.ToJson(
            data,
            true
        );

        string path = Path.Combine(
            Application.persistentDataPath,
            "savegame.json"
        );

        File.WriteAllText(path, json);

        Debug.Log("Spielstand gespeichert.");
    }
}

Die Klasse SaveData enthält die Werte, die gespeichert werden sollen. Das Attribut [Serializable] ermöglicht die entsprechende Verarbeitung durch Unity.

JsonUtility.ToJson() wandelt die Daten in eine JSON-Zeichenfolge um. Mit dem zweiten Parameter true wird der Text übersichtlich formatiert.

Anschließend schreibt das Script die JSON-Daten in eine Datei innerhalb von persistentDataPath.

JSON-Spielstände wieder laden

Gespeicherte JSON-Daten kannst du mit JsonUtility.FromJson() wieder in ein passendes Datenobjekt umwandeln.

using System.IO;
using UnityEngine;

public class LoadGame : MonoBehaviour
{
    public void Load()
    {
        string path = Path.Combine(
            Application.persistentDataPath,
            "savegame.json"
        );

        if (!File.Exists(path))
        {
            Debug.Log("Kein Spielstand vorhanden.");
            return;
        }

        string json = File.ReadAllText(path);

        SaveData data =
            JsonUtility.FromJson<SaveData>(json);

        Debug.Log("Level: " + data.level);
        Debug.Log("Punkte: " + data.score);
    }
}

Das Beispiel verwendet die zuvor definierte Klasse SaveData. Beide Scripts müssen deshalb im selben Projekt vorhanden sein.

Bei einer vollständigen Speicherfunktion solltest du zusätzlich prüfen, ob die Datei gültige Daten enthält. Fehlerhafte oder unvollständige Spielstände dürfen nicht dazu führen, dass das gesamte Spiel unkontrolliert abbricht.

StreamingAssets – Dateien unverändert in den Build übernehmen

Der Ordner StreamingAssets ist für Dateien vorgesehen, die Unity beim Erstellen des Builds weitgehend unverändert übernehmen soll.

Du kannst ihn unter Assets/StreamingAssets anlegen. Die enthaltenen Dateien stehen anschließend über Application.streamingAssetsPath zur Verfügung.

StreamingAssets eignet sich beispielsweise für bestimmte Konfigurationsdateien, zusätzliche Datensammlungen oder Medien, die nicht über den gewöhnlichen Asset-Import verarbeitet werden sollen.

Der Ordner ist jedoch kein allgemeiner Speicherort für veränderbare Spielstände. In einem fertigen Build können seine Inhalte schreibgeschützt oder innerhalb eines Pakets gespeichert sein.

Dateien aus StreamingAssets laden

Auf manchen Plattformen kannst du Dateien aus StreamingAssets über gewöhnliche Dateifunktionen lesen. Das funktioniert jedoch nicht überall.

Insbesondere unter Android können StreamingAssets innerhalb des Anwendungspakets liegen. Dort ist ein direkter Zugriff über File.ReadAllText() nicht in derselben Weise möglich wie bei einer gewöhnlichen Datei auf dem PC.

Für einen plattformübergreifenden Lesezugriff kannst du UnityWebRequest verwenden. Die genaue Behandlung des Pfads hängt dabei von der Plattform ab.

Eine Textdatei mit UnityWebRequest laden

Das folgende Beispiel lädt eine Textdatei aus dem StreamingAssets-Ordner. Auf Plattformen, auf denen der Pfad bereits als URL bereitsteht, verwendet es diesen direkt. Andernfalls erzeugt es eine lokale Datei-URL.

using System;
using System.Collections;
using System.IO;
using UnityEngine;
using UnityEngine.Networking;

public class StreamingTextLoader : MonoBehaviour
{
    private IEnumerator Start()
    {
        string path = Path.Combine(
            Application.streamingAssetsPath,
            "example.txt"
        );

        string url = path;

        if (!path.Contains("://"))
        {
            url = new Uri(path).AbsoluteUri;
        }

        using (UnityWebRequest request =
            UnityWebRequest.Get(url))
        {
            yield return request.SendWebRequest();

            if (request.result !=
                UnityWebRequest.Result.Success)
            {
                Debug.LogError(request.error);
                yield break;
            }

            string content =
                request.downloadHandler.text;

            Debug.Log(content);
        }
    }
}

Das Script erwartet eine Datei namens example.txt im StreamingAssets-Ordner. Die Coroutine wartet, bis die Anfrage abgeschlossen ist, und liest anschließend den Text aus.

Bei einer Verwendung auf unterschiedlichen Zielplattformen solltest du den Zugriff jeweils im fertigen Build testen. Besonders WebGL und mobile Plattformen können zusätzliche Einschränkungen besitzen.

Resources – Dateien über das Unity-Ressourcensystem laden

Eine weitere Möglichkeit ist der Resources-Ordner. Dateien in einem entsprechend benannten Verzeichnis können über die Unity-API Resources.Load() geladen werden.

Anders als bei StreamingAssets verarbeitet Unity die unterstützten Dateien im Resources-Ordner als gewöhnliche Assets.

Du kannst beispielsweise eine Textdatei als TextAsset laden oder einen importierten Audio Clip über seinen Ressourcenpfad abrufen.

Für größere Projekte solltest du den Resources-Ordner bewusst einsetzen. Ressourcen in solchen Ordnern können den Buildumfang beeinflussen, auch wenn sie nicht direkt in einer Szene referenziert werden.

Eine Textdatei mit Resources.Load einlesen

Das folgende Beispiel lädt eine Textdatei aus einem Resources-Ordner:

using UnityEngine;

public class ResourceTextLoader : MonoBehaviour
{
    private void Start()
    {
        TextAsset textFile =
            Resources.Load<TextAsset>(
                "Data/example"
            );

        if (textFile == null)
        {
            Debug.LogError(
                "Textdatei nicht gefunden."
            );

            return;
        }

        Debug.Log(textFile.text);
    }
}

Das Script erwartet beispielsweise die Datei Assets/Resources/Data/example.txt.

Beim Aufruf von Resources.Load() gibst du den Pfad relativ zum Resources-Ordner an. Die Dateiendung wird dabei nicht mitgeschrieben.

Die Datei ist hier bereits Teil des Unity-Projekts und wird über das Ressourcensystem geladen. Es handelt sich deshalb nicht um den freien Zugriff auf eine beliebige externe Datei.

Addressables für die Verwaltung zusätzlicher Inhalte

Für größere Projekte bietet Unity das Addressables-System an. Es ermöglicht die Verwaltung und das asynchrone Laden entsprechend vorbereiteter Assets.

Addressables kann Ressourcen lokal bereitstellen oder über geeignete Konfigurationen aus entfernten Quellen laden.

Das System eignet sich beispielsweise für umfangreiche Spiele mit vielen Ressourcen, zusätzlichen Inhalten oder einer gezielten Speicherverwaltung.

Addressables ersetzt jedoch nicht automatisch einen allgemeinen Dateidialog. Die betreffenden Assets müssen zunächst entsprechend vorbereitet und in das System eingebunden werden.

Externe Bilder zur Laufzeit laden

Ein Spiel kann auch Bilder laden, die erst nach der Veröffentlichung verfügbar sind. Dazu musst du die Bilddaten einlesen und daraus eine Unity-Textur erzeugen.

Für unterstützte Bilddaten kannst du beispielsweise Texture2D.LoadImage() verwenden. Diese Methode dekodiert Bilddaten und übernimmt sie in eine Texture2D.

Die Methode eignet sich insbesondere für PNG- und JPG-Daten. Andere Formate benötigen gegebenenfalls zusätzliche Verarbeitung.

Ein PNG-Bild aus persistentDataPath laden

Das folgende Beispiel lädt eine PNG-Datei und weist die daraus erzeugte Textur einem SpriteRenderer zu:

using System.IO;
using UnityEngine;

public class ExternalImageLoader : MonoBehaviour
{
    [SerializeField] private SpriteRenderer targetRenderer;

    public void LoadImage()
    {
        string path = Path.Combine(
            Application.persistentDataPath,
            "picture.png"
        );

        if (!File.Exists(path))
        {
            Debug.LogError("Bild nicht gefunden.");
            return;
        }

        byte[] imageData = File.ReadAllBytes(path);

        Texture2D texture = new Texture2D(2, 2);

        if (!texture.LoadImage(imageData))
        {
            Destroy(texture);
            Debug.LogError("Bild konnte nicht geladen werden.");
            return;
        }

        Sprite sprite = Sprite.Create(
            texture,
            new Rect(
                0,
                0,
                texture.width,
                texture.height
            ),
            new Vector2(0.5f, 0.5f)
        );

        targetRenderer.sprite = sprite;
    }
}

Das Script liest die Bilddatei als Byte-Array ein. Anschließend erstellt es eine Texture2D und dekodiert die Bilddaten mit LoadImage().

Über Sprite.Create() entsteht ein Sprite, das der SpriteRenderer anzeigen kann. Im Inspector musst du dem Feld Target Renderer den gewünschten SpriteRenderer zuweisen.

Bei einer wiederholten Verwendung solltest du zusätzlich die Lebensdauer der erzeugten Texturen und Sprites verwalten. Andernfalls können sich ungenutzte Ressourcen im Speicher ansammeln.

Externe Audiodateien laden

Auch Musik und Soundeffekte können zur Laufzeit aus externen Quellen geladen werden. Dafür stellt Unity unter anderem UnityWebRequestMultimedia.GetAudioClip() bereit.

Die Methode lädt Audiodaten und stellt sie bei erfolgreicher Verarbeitung als Audio Clip bereit. Welche Formate unterstützt werden, hängt von der Plattform und dem angegebenen Audiotyp ab.

Ein extern geladener Audio Clip kann anschließend einer Audio Source zugewiesen und abgespielt werden.

Eine externe WAV-Datei abspielen

Das folgende Beispiel lädt eine WAV-Datei aus dem persistenten Datenverzeichnis und spielt sie über eine Audio Source ab:

using System;
using System.Collections;
using System.IO;
using UnityEngine;
using UnityEngine.Networking;

public class ExternalAudioLoader : MonoBehaviour
{
    [SerializeField] private AudioSource audioSource;

    private IEnumerator Start()
    {
        if (audioSource == null)
        {
            yield break;
        }

        string path = Path.Combine(
            Application.persistentDataPath,
            "music.wav"
        );

        if (!File.Exists(path))
        {
            Debug.LogError("Audiodatei nicht gefunden.");
            yield break;
        }

        string url = new Uri(path).AbsoluteUri;

        using (UnityWebRequest request =
            UnityWebRequestMultimedia.GetAudioClip(
                url,
                AudioType.WAV
            ))
        {
            yield return request.SendWebRequest();

            if (request.result !=
                UnityWebRequest.Result.Success)
            {
                Debug.LogError(request.error);
                yield break;
            }

            AudioClip clip =
                DownloadHandlerAudioClip.GetContent(
                    request
                );

            audioSource.clip = clip;
            audioSource.Play();
        }
    }
}

Das Script prüft zunächst, ob die Datei vorhanden ist. Anschließend erzeugt es eine lokale Datei-URL und lädt die Audiodaten über UnityWebRequest.

Nach erfolgreichem Laden erhält die Audio Source den erzeugten Audio Clip und beginnt mit der Wiedergabe.

Das Beispiel eignet sich für Plattformen mit entsprechendem lokalem Dateizugriff. Auf WebGL oder anderen eingeschränkten Plattformen benötigst du möglicherweise einen anderen Speicher- beziehungsweise Ladeweg.

Dateien aus dem Internet herunterladen

Unity kann externe Daten auch über HTTP- oder HTTPS-Verbindungen laden. Dafür steht die Klasse UnityWebRequest zur Verfügung.

Damit kannst du beispielsweise Konfigurationsdateien, Bilder oder andere unterstützte Daten von einem Server abrufen.

Bei Dateien aus dem Internet solltest du beachten, dass der Download fehlschlagen kann. Ursachen sind beispielsweise fehlende Netzwerkverbindungen, Serverfehler oder ungültige Adressen.

Auch die Größe der heruntergeladenen Datei ist wichtig. Besonders bei großen Dateien kann eine geeignete Zwischenspeicherung sinnvoll sein, damit sie nicht bei jedem Spielstart erneut übertragen werden müssen.

Externe Dateien und Benutzerberechtigungen

Der Zugriff auf Dateien hängt von der Zielplattform ab. Auf einem Desktop-System stehen häufig andere Möglichkeiten zur Verfügung als auf einem Smartphone oder innerhalb eines Webbrowsers.

Bei mobilen Betriebssystemen können zusätzliche Berechtigungen erforderlich sein, wenn eine Anwendung auf bestimmte Dateien außerhalb ihres eigenen Speicherbereichs zugreifen soll.

Auch WebGL-Anwendungen besitzen keinen uneingeschränkten Zugriff auf das Dateisystem des Computers. Sie laufen innerhalb der Sicherheitsbeschränkungen des Browsers.

Deshalb solltest du frühzeitig festlegen, auf welchen Plattformen dein Spiel externe Dateien laden oder speichern können soll.

Dateidialoge für vom Spieler ausgewählte Dateien

Manche Spiele oder Anwendungen sollen dem Benutzer ermöglichen, selbst eine Datei auszuwählen. Dazu gehören beispielsweise eigene Bilder, Musikstücke oder Konfigurationsdateien.

Unity stellt in seinem Editor entsprechende Dateidialoge bereit. Diese gehören jedoch zum Editor-System und stehen in einem fertigen Spiel nicht automatisch zur Verfügung.

Für einen Dateiauswahldialog zur Laufzeit benötigst du eine geeignete plattformspezifische Lösung oder ein entsprechendes Plugin.

Auf WebGL erfolgt die Dateiauswahl üblicherweise über die Möglichkeiten des Browsers. Auf Desktop- und Mobilplattformen können andere Verfahren erforderlich sein.

Dateien auf ihre Gültigkeit überprüfen

Wenn dein Spiel externe Dateien verarbeitet, solltest du nicht davon ausgehen, dass jede Datei korrekt aufgebaut ist.

Eine JSON-Datei kann ungültige Daten enthalten. Eine Bilddatei kann beschädigt sein oder ein unerwartetes Format besitzen. Auch eine Audiodatei muss nicht zwangsläufig von der verwendeten Ladefunktion unterstützt werden.

Deshalb solltest du Dateizugriffe mit geeigneten Prüfungen absichern. Dazu gehören das Kontrollieren vorhandener Dateien, die Begrenzung akzeptierter Dateigrößen und die Behandlung möglicher Fehler.

Bei Dateien aus unbekannten Quellen ist besondere Vorsicht sinnvoll. Externe Inhalte sollten nicht ungeprüft als vertrauenswürdige Daten behandelt werden.

Dateipfade plattformunabhängig zusammensetzen

Unterschiedliche Betriebssysteme verwenden teilweise verschiedene Regeln für Dateipfade. Deshalb solltest du Verzeichnisse und Dateinamen nicht unnötig durch fest eingetragene Trennzeichen verbinden.

Mit Path.Combine() stellt C# eine Funktion bereit, die Pfadbestandteile passend zusammensetzt.

string path = Path.Combine(
    Application.persistentDataPath,
    "Saves",
    "savegame.json"
);

Das Beispiel erzeugt einen Pfad zu einer Datei innerhalb eines Unterordners namens Saves.

Bevor du dort eine Datei speicherst, musst du sicherstellen, dass der Unterordner existiert. Falls erforderlich, kannst du ihn mit Directory.CreateDirectory() anlegen.

Dateien sicher speichern und überschreiben

Beim Speichern wichtiger Daten solltest du berücksichtigen, dass ein Schreibvorgang unterbrochen werden kann. Das kann beispielsweise durch einen Programmabsturz oder einen unerwarteten Systemfehler passieren.

Wenn ein bestehender Spielstand direkt überschrieben wird, besteht bei einem Fehler das Risiko einer beschädigten Datei.

Eine mögliche Gegenmaßnahme besteht darin, Daten zunächst in eine temporäre Datei zu schreiben und sie erst nach erfolgreichem Abschluss an die Stelle des bisherigen Spielstands zu setzen.

Für besonders wichtige Spielstände können zusätzliche Sicherungskopien und eine Prüfung der gespeicherten Daten sinnvoll sein. Die konkrete Umsetzung muss zur jeweiligen Zielplattform passen.

Temporäre Dateien und Cache-Daten

Nicht jede Datei muss dauerhaft gespeichert bleiben. Für vorübergehende Daten stellt Unity Application.temporaryCachePath bereit.

Dieser Speicherort eignet sich beispielsweise für temporäre Downloads oder Daten, die dein Spiel bei Bedarf erneut erzeugen kann.

Du solltest allerdings nicht davon ausgehen, dass Dateien dort dauerhaft erhalten bleiben. Das Betriebssystem kann temporäre Daten unter bestimmten Bedingungen entfernen.

Spielstände und wichtige Benutzereinstellungen gehören deshalb normalerweise nicht in das temporäre Cache-Verzeichnis.

Externe Dateien und die Performance

Das Laden und Speichern von Dateien benötigt Zeit. Besonders große Dateien können die Reaktionsfähigkeit eines Spiels beeinträchtigen, wenn ihre Verarbeitung den Hauptthread blockiert.

Für umfangreichere Ladevorgänge können asynchrone Verfahren sinnvoll sein. UnityWebRequest ermöglicht beispielsweise das Laden von Daten, ohne den gesamten Download als blockierenden Vorgang auf dem Hauptthread auszuführen.

Auch nach dem Laden kann die Verarbeitung zusätzlichen Aufwand verursachen. Das Dekodieren eines großen Bildes oder das Erzeugen einer Textur benötigt beispielsweise Ressourcen.

Bei häufig verwendeten Dateien kann es sinnvoll sein, bereits geladene Daten zwischenzuspeichern, statt sie bei jeder Verwendung erneut einzulesen.

Typische Fehler beim Umgang mit externen Dateien

Probleme entstehen häufig durch ungeeignete Speicherorte, fehlende Dateien oder Unterschiede zwischen dem Unity Editor und dem fertigen Build.

  • Datei nicht gefunden: Kontrolliere den vollständigen Pfad und die Schreibweise des Dateinamens.
  • Datei lässt sich nicht speichern: Prüfe, ob der gewählte Speicherort beschreibbar ist.
  • Funktioniert nur im Editor: Möglicherweise verwendet das Script eine Editor-API oder einen Pfad, der im Build anders aufgebaut ist.
  • StreamingAssets funktioniert nicht mit File.ReadAllText: Auf bestimmten Plattformen ist ein anderer Lesezugriff erforderlich.
  • JSON kann nicht verarbeitet werden: Prüfe das Format und die verwendete Datenklasse.
  • Bild wird nicht angezeigt: Kontrolliere, ob die Bilddaten erfolgreich dekodiert wurden und ein Sprite beziehungsweise eine Textur korrekt zugewiesen ist.
  • Audiodatei wird nicht abgespielt: Prüfe Dateiformat, Ladeergebnis und Audio Source.
  • Spiel friert beim Laden ein: Große oder häufige synchrone Dateizugriffe können den Hauptthread blockieren.

Für die Fehlersuche solltest du den tatsächlich verwendeten Dateipfad ausgeben und kontrollieren, ob er auf der jeweiligen Plattform erreichbar ist. Anschließend kannst du die Verarbeitung der geladenen Daten untersuchen.

Welche Methode eignet sich für welche Dateien?

Unity bietet verschiedene Wege für den Umgang mit Dateien. Die passende Methode hängt davon ab, ob die Ressource bereits während der Entwicklung bekannt ist oder erst zur Laufzeit entsteht.

  • Assets-Ordner: Für Ressourcen, die Unity während der Entwicklung importieren und verarbeiten soll.
  • Resources: Für entsprechend vorbereitete Unity-Assets, die du über Resources.Load abrufen möchtest.
  • StreamingAssets: Für Dateien, die möglichst unverändert mit dem Build ausgeliefert werden sollen.
  • persistentDataPath: Für Spielstände, Einstellungen und andere dauerhaft gespeicherte Benutzerdaten.
  • temporaryCachePath: Für vorübergehende Dateien und wiederherstellbare Cache-Daten.
  • UnityWebRequest: Für geeignete lokale oder entfernte Datenquellen, insbesondere bei asynchronen Ladevorgängen.
  • Addressables: Für die organisierte Bereitstellung und das Laden entsprechend vorbereiteter Assets.

Externe Dateien als Erweiterung des Spiels

Der Zugriff auf externe Dateien eröffnet zusätzliche Möglichkeiten für die Spieleentwicklung. Du kannst Spielstände speichern, Einstellungen dauerhaft verwalten, Inhalte aus Dateien laden oder Spielern die Verwendung eigener Ressourcen ermöglichen.

Entscheidend ist die Trennung zwischen dem Import im Unity Editor und dem Dateizugriff zur Laufzeit. Während der Editor viele Formate automatisch in Unity-Assets umwandelt, benötigt das fertige Spiel passende Lade- und Verarbeitungsfunktionen.

Mit den vorgesehenen Speicherpfaden, geeigneten Dateiformaten und einer zuverlässigen Fehlerbehandlung kannst du externe Daten in dein Spiel integrieren, ohne die Projektstruktur oder die vorhandenen Unity-Assets unnötig zu verändern.

Weitere technische Informationen findest du im Unity-Handbuch zu StreamingAssets.

Views: 12
Weitersagen:
Spieleprogrammierung

Beitragsnavigation

Previous Post: Die Importfunktion in Unity

Related Posts

  • Suspect Commit
    Suspect Commit – welche Änderung könnte den Fehler verursacht haben? Spieleprogrammierung
  • Unity Asset
    Die Universal Render Pipeline in Unity: Ein Gamechanger für Entwickler Spieleprogrammierung
  • Unity Logo
    Unity Camera Follow Script – die Kamera folgt dem Spieler Spieleprogrammierung
  • Freigestelltes Bild
    Das Freistellen von Grafiken Spieleprogrammierung
  • Unity Logo
    Unity Audio Source – Sounds und Musik in der Szene abspielen Spieleprogrammierung
  • Unity Logo
    Unity Layers – Objekte für Rendering und Physik ordnen Spieleprogrammierung

Schreibe einen Kommentar Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Unsere Besucher

093610
Users Today : 15
Total views : 539517
Powered By WPS Visitor Counter
  • Games und Lyrik (2.782)
    • Action (86)
    • Adventure (472)
      • Point & Click-Adventure (16)
    • Deckbuilder (2)
    • Ecke der verlorenen Spiele (18)
    • Horror (37)
    • Kinderfreundliche Games (6)
    • Partyspiele (11)
    • Puzzle (17)
    • Rollenspiele (118)
    • Shooter (351)
    • Simulation (38)
    • Sport (115)
      • Fußball (5)
      • Rennspiele (7)
    • Strategie (205)
    • Survival (13)
    • Wimmelbild (8)
  • Hardware (2)
  • Jump & Run (4)
  • Lyrik (112)
  • Spieleentwickler (446)
  • Spieleentwicklung (3)
  • Spieleprogrammierung (78)

Action Adventure Capcom Daedalic Deck 13 Devcom 2020 Ecke der verlorenen Spiele Gamescom 2019 Gamescom 2020 Gamescom 2021 Gamescom 2023 Games from Spain GB GBA GBC Horror Indie Arena Booth 2022 Jump & Run Kalypso Media Mega Man N64 NDS NES Nintendo Switch PC PS1 PS2 PS3 PS4 PS5 PSP Rareware Rennspiel Sega Shooter SNES State of Play Strategie Switch Unity Visual Novel VR Windows Xbox XBox One

Cosplay-Schnittmuster

  • Raumdarstellung und Perspektive in der Spieleentwicklung Cover Raumdarstellung und Perspektive in der Spieleentwicklung 2,99 €
  • 181f3a7e0abfa8d37f1804ecbb1345a2 Gorgeous Carat Band 3 You Higuri Carlsen Verlag Manga 8,95 €
  • ed460bd4376c3e85444121bfde166eb5 Gorgeous Carat Band 2 You Higuri Carlsen Verlag Manga 8,95 €

RSS Lets-Plays.de

  • Nintendo Switch Zeitbegrenzung einrichten
  • Vom Hobbyprojekt zum erfolgreichen Indie-Spiel

Ezoic

RSS GameStar – News

  • YouTube - Ein Mann spielt Red Dead Redemption 2 mit 4 FPS – und je länger man seinen Kanal anschaut, desto weniger wirkt es wie ein Witz [Best of GameStar]
  • GTA 6 - Ein Playtest lief völlig aus dem Ruder: »Zwei Stunden später war ich meilenweit von der Mission entfernt«
  • »Wildwood« - 3.000 Charaktere, 400 Einstellungen: In diesem Film findet ihr die epischste Stop-Motion-Schlacht, die je gedreht wurde
TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste
blogwolke.de - Das Blog-Verzeichnis
  • Wanderful Cover
    Wanderful Adventure
  • Avatar Golf Cover
    Avatar Golf – Schwungvoller Spaß mit deinem Xbox-Avatar Simulation
  • Space Station
    Space Station Games und Lyrik
  • Dead Cells
    Dead Cells Games und Lyrik
  • FruitsAndVegetablesFromEurope 01
    Vegetables from Europe Games und Lyrik
  • OAA Logo
    OAA Inc.: Aufstrebender Stern am Spieleentwicklungshimmel Spieleentwickler
  • Captain America and the Avengers Cover
    Captain America and the Avengers Shooter
  • Blasphemous Cover
    Blasphemous Shooter

Copyright © 2026 Games und Lyrik.

Powered by PressBook News Dark theme

Cookie-Einstellungen
Diese Webseite benutzt Cookies um die Nutzererfahrung zu verbessern. Diese Cookies können Sie hier ausschalten.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.
Cookie-Einstellungen / Cookie settingsAkzeptieren / ACCEPT
Privatsphären- und Cookie-Einstellungen

Informationen zu Cookies / Privacy Overview

Informationen zu Cookies / Privacy Overview


Diese Webseite benutzt Cookies um die Funktion und die Nutzererfahrung zu verbessern. Es gibt zwei Arten von Cookies: Die notwendigen im Browser gespeichert und sind wichtig für die korrekte Funktion der Webseite. Die nicht notwendigen oder auch Drittanbieter-Cookies, die zum Einsatz kommen, dienen zur Analyse und zeigen uns die Benutzung dieser Webseite. Diese Cookies werden ebenfalls im Browser gespeichert aber nur, wenn Sie es ausdrücklich erlauben. Sie haben im Folgenden die Möglichkeit, diese Drittanbieter-Cookies zu verbieten. Das Abschalten dieser  Cookies kann das Verhalten der Webseite beeinflussen.


This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.

necessary
immer aktiv
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
CookieDauerBeschreibung
AWSALBCORS7 daysThis cookie is managed by Amazon Web Services and is used for load balancing.
client_id10 yearsThis cookie is used for passing authentication information.
cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analytics1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional1 yearThe cookie is set by the GDPR Cookie Consent plugin to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-non-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Non-necessary" category .
cookielawinfo-checkbox-others1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Performance".
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
CookieLawInfoConsent1 yearRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
CookieLawInfoConsent1 yearRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
ezCMPCCS1 yearEzoic sets this cookie to track when a user consents to statistics cookies.
PHPSESSIDsessionThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user session on the website. The cookie is a session cookies and is deleted when all the browser windows are closed.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Nicht notwendige
Alle Cookies, die für die korrekte Funktion der Webseite nicht unmittelbar notwendig sind und genutzt werden, um persönliche Nutzerdaten per Analyse, Werbung oder anderen eingebetteten Inhalt zu sammeln, werden als nicht notwendige Cookies bezeichnet. Es ist zwingend erforderlich die Zustimmung des Nutzers / der Nutzerin einzuholen, bevor diese Cookies zur Anwendung kommen. Wird die Einwilligung zur Nutzung der Cookies nicht erteilt, werden sie nicht angewendet und nur die notwendigen Cookies sind aktiv.
CookieDauerBeschreibung
__qca1 year 26 daysThe __qca cookie is associated with Quantcast. This anonymous data helps us to better understand users' needs and customize the website accordingly.
eudssessionThis cookie is set by Rocket Fuel for targeted advertising so that users are shown relevant ads.
i10 yearsThis cookie is set by OpenX to record anonymized user data, such as IP address, geographical location, websites visited, ads clicked by the user etc., for relevant advertising.
IDE1 year 24 daysGoogle DoubleClick IDE cookies are used to store information about how the user uses the website to present them with relevant ads and according to the user profile.
mc1 year 1 monthQuantserve sets the mc cookie to anonymously track user behaviour on the website.
rud1 year 24 daysThe rud cookie is owned by Rocketfuel and registers user data, such as IP address, location, etc. for the purpose of optimising ad display.
rudssessionThis cookie is owned by Rocketfuel and collects anonymous user data to target audiences and deliver personalized ads.
test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt.innertube::nextIdneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
yt.innertube::requestsneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
Funktionelle
Funktionelle Cookies werden benutzt, um bestimmte Funktionen wie die Teilung von Informationen auf Plattformen der sozialen Medien, Sammlung von Rückmeldungen und andre Drittanbieterfunktionen einsetzen zu können.
CookieDauerBeschreibung
__cf_bm30 minutesThis cookie, set by Cloudflare, is used to support Cloudflare Bot Management.
pll_language1 yearThe pll _language cookie is used by Polylang to remember the language selected by the user when returning to the website, and also to get the language information when not available in another way.
Leistungsanalyse
Leistungsanalyse-Cookies werden eingesetzt um die wichtigsten Leistungsaspekte zu analysieren und zu verstehen. Dies trägt dazu bei, die Webseite kontinuierlich zu verbessern und so den Besuchern eine gute Nutzererfahrung zu bieten.
CookieDauerBeschreibung
AWSALB7 daysAWSALB is an application load balancer cookie set by Amazon Web Services to map the session to the target.
ezds7 yearsThe ezds cookie is set by the provider Ezoic, and is used for storing the pixel size of the user's browser, to personalize user experience and ensure content fits.
ezoab_10342 hoursEzoic uses this cookie to split test different features and functionality.
ezohw7 yearsThe ezohw cookie is set by the provider Ezoic, and is used for storing the pixel size of the user's browser, to personalize user experience and ensure content fits.
ymex1 yearYandex sets this cookie to collect information about the user behaviour on the website. This information is used for website analysis and for website optimisation.
yuidss1 yearYandex stores this cookie in the user's browser in order to recognize the visitor.
Analytik
Analytische Cookies werden benutzt um zu verstehen, auf welche Art und Weise Besucher mit dieser Webseite interagieren. Diese Cookies helfen Informationen über Anzahl der Besucher, Absprungrate (Anzahl der Besucher,, die eine Webseite Besuchen und sie gleich wieder verlassen), Ursprungsland des Besuchers, usw. zu erhalten.
CookieDauerBeschreibung
__gads1 year 24 daysThe __gads cookie, set by Google, is stored under DoubleClick domain and tracks the number of times users see an advert, measures the success of the campaign and calculates its revenue. This cookie can only be read from the domain they are set on and will not track any data while browsing through other sites.
_gu1 monthThis cookie is set by the provider Getsitecontrol. This cookie is used to distinguish the users.
_ym_d1 yearYandex sets this cookie to store the date of the users first site session.
_ym_isad20 hoursYandex sets this cookie to determine if a visitor has ad blockers.
_ym_uid1 yearYandex sets this cookie to identify site users.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
eud1 year 24 daysThis cookie is owned by Rocketfuel and collects anonymous user data to target audiences and deliver personalized ads.
ezepvv1 dayThis cookie is set by the provider Ezoic to track what pages the user has viewed.
ezoadgid_103430 minutesEzoic uses this cookie to record an id for the user's age and gender category.
ezoref_10342 hoursEzoic uses this cookie to store the referring domain, i.e the website the user was on, before he came to the current website.
ezouspvasessionThe ezouspva cookie is set by the provider Ezoic and is used to track the number of pages a user has visited all time.
ezouspvvsessionThe ezouspvv cookie is set by the provider Ezoic and is used to track the number of pages a user has visited all time.
UserID13 monthsThis cookie is set by ADITION Technologies AG, as a unique and anonymous ID for the visitor of the website, to identify unique users across multiple sessions.
yabs-sidsessionYandex sets this cookie to store the session ID.
yandexuid1 yearYandex sets this cookie to identify site users.
Werbung
Werbungs-Cookies werden benutzt um Besuchern relevante Werbungen und Vermarktungskampanien anzuzeigen. Diese Cookies verfolgen die Besucher beim Besuch einer Webseite und sammeln Informationen mit deren Hilfe sie angepasste Werbungen einblenden.
CookieDauerBeschreibung
__qca1 year 26 daysThe __qca cookie is associated with Quantcast. This anonymous data helps us to better understand users' needs and customize the website accordingly.
eudssessionThis cookie is set by Rocket Fuel for targeted advertising so that users are shown relevant ads.
i10 yearsThis cookie is set by OpenX to record anonymized user data, such as IP address, geographical location, websites visited, ads clicked by the user etc., for relevant advertising.
IDE1 year 24 daysGoogle DoubleClick IDE cookies are used to store information about how the user uses the website to present them with relevant ads and according to the user profile.
mc1 year 1 monthQuantserve sets the mc cookie to anonymously track user behaviour on the website.
rud1 year 24 daysThe rud cookie is owned by Rocketfuel and registers user data, such as IP address, location, etc. for the purpose of optimising ad display.
rudssessionThis cookie is owned by Rocketfuel and collects anonymous user data to target audiences and deliver personalized ads.
test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt.innertube::nextIdneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
yt.innertube::requestsneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
Sonstige
Zu den sonstigen unkategorisierten Cookies zählen jene, die zwar analysiert wurden, aber noch keiner Kategorie zugeordnet werden konnten.
CookieDauerBeschreibung
_auid1 yearNo description available.
active_template::3326192 days

No description

appReleasesessionNo description available.
BACKENDIDsessionNo description available.
dspid1 yearNo description available.
ezoab_3326192 hoursNo description
ezoadgid_33261930 minutesNo description
ezopvc_33261930 minutesNo description
ezoref_3326192 hoursNo description
ezosuibasgeneris-11 yearNo description
ezovid_33261930 minutesNo description
ezovuuid_33261930 minutesNo description
ezovuuidtime_3326192 daysNo description
ezux_lpl_3326191 yearNo description
f_0013 monthsNo description
g_0011 dayNo description
gt_auto_switch1 monthNo description available.
lp_33261930 minutesNo description
mts_id9 years 10 months 8 daysNo description available.
mts_id_last_sync9 years 10 months 8 daysNo description available.
pvc_visits[0]1 yearThis cookie is created by post-views-counter. This cookie is used to count the number of visits to a post. It also helps in preventing repeat views of a post by a visitor.
srpsessionNo description available.
userId5 months 27 daysNo description
Notwendige
Notwendige Cookies sind für die korrekte Funktion der Webseite unerlässlich. Diese Kategorie enthält nur Cookies, die grundlegende Funktionalitäten und Sicherheitsfunktionen der Webseite ermöglichen. Diese Cookies speichern keine persönlichen Daten.
CookieDauerBeschreibung
AWSALBCORS7 daysThis cookie is managed by Amazon Web Services and is used for load balancing.
client_id10 yearsThis cookie is used for passing authentication information.
cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analytics1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
cookielawinfo-checkbox-functional1 yearThe cookie is set by the GDPR Cookie Consent plugin to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
cookielawinfo-checkbox-non-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Non-necessary" category .
cookielawinfo-checkbox-others1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others".
cookielawinfo-checkbox-performance1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Performance".
CookieLawInfoConsent1 yearRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
ezCMPCCS1 yearEzoic sets this cookie to track when a user consents to statistics cookies.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDauerBeschreibung
__qca1 year 26 daysThe __qca cookie is associated with Quantcast. This anonymous data helps us to better understand users' needs and customize the website accordingly.
eudssessionThis cookie is set by Rocket Fuel for targeted advertising so that users are shown relevant ads.
i10 yearsThis cookie is set by OpenX to record anonymized user data, such as IP address, geographical location, websites visited, ads clicked by the user etc., for relevant advertising.
IDE1 year 24 daysGoogle DoubleClick IDE cookies are used to store information about how the user uses the website to present them with relevant ads and according to the user profile.
loc1 year 1 monthAddThis sets this geolocation cookie to help understand the location of users who share the information.
mc1 year 1 monthQuantserve sets the mc cookie to anonymously track user behaviour on the website.
rud1 year 24 daysThe rud cookie is owned by Rocketfuel and registers user data, such as IP address, location, etc. for the purpose of optimising ad display.
rudssessionThis cookie is owned by Rocketfuel and collects anonymous user data to target audiences and deliver personalized ads.
test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt.innertube::nextIdneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
yt.innertube::requestsneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
non-necessary
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDauerBeschreibung
_auid1 yearNo description available.
active_template::3326192 days

No description

appReleasesessionNo description available.
BACKENDIDsessionNo description available.
dspid1 yearNo description available.
ezoab_3326192 hoursNo description
ezoadgid_33261930 minutesNo description
ezopvc_33261930 minutesNo description
ezoref_3326192 hoursNo description
ezosuibasgeneris-11 yearNo description
ezovid_33261930 minutesNo description
ezovuuid_33261930 minutesNo description
ezovuuidtime_3326192 daysNo description
ezux_lpl_3326191 yearNo description
f_0013 monthsNo description
g_0011 dayNo description
gt_auto_switch1 monthNo description available.
lp_33261930 minutesNo description
mts_id9 years 10 months 8 daysNo description available.
mts_id_last_sync9 years 10 months 8 daysNo description available.
pvc_visits[0]1 yearThis cookie is created by post-views-counter. This cookie is used to count the number of visits to a post. It also helps in preventing repeat views of a post by a visitor.
srpsessionNo description available.
srpsessionNo description available.
userId5 months 27 daysNo description
xtc1 year 1 monthNo description
performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
CookieDauerBeschreibung
AWSALB7 daysAWSALB is an application load balancer cookie set by Amazon Web Services to map the session to the target.
ezds7 yearsThe ezds cookie is set by the provider Ezoic, and is used for storing the pixel size of the user's browser, to personalize user experience and ensure content fits.
ezoab_10342 hoursEzoic uses this cookie to split test different features and functionality.
ezohw7 yearsThe ezohw cookie is set by the provider Ezoic, and is used for storing the pixel size of the user's browser, to personalize user experience and ensure content fits.
ymex1 yearYandex sets this cookie to collect information about the user behaviour on the website. This information is used for website analysis and for website optimisation.
yuidss1 yearYandex stores this cookie in the user's browser in order to recognize the visitor.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDauerBeschreibung
_auid1 yearNo description available.
active_template::3326192 days

No description

appReleasesessionNo description available.
BACKENDIDsessionNo description available.
dspid1 yearNo description available.
ezoab_3326192 hoursNo description
ezoadgid_33261930 minutesNo description
ezopvc_33261930 minutesNo description
ezoref_3326192 hoursNo description
ezosuibasgeneris-11 yearNo description
ezovid_33261930 minutesNo description
ezovuuid_33261930 minutesNo description
ezovuuidtime_3326192 daysNo description
ezux_lpl_3326191 yearNo description
f_0013 monthsNo description
g_0011 dayNo description
gt_auto_switch1 monthNo description available.
lp_33261930 minutesNo description
mts_id9 years 10 months 8 daysNo description available.
mts_id_last_sync9 years 10 months 8 daysNo description available.
pvc_visits[0]1 yearThis cookie is created by post-views-counter. This cookie is used to count the number of visits to a post. It also helps in preventing repeat views of a post by a visitor.
srpsessionNo description available.
srpsessionNo description available.
userId5 months 27 daysNo description
xtc1 year 1 monthNo description
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDauerBeschreibung
__gads1 year 24 daysThe __gads cookie, set by Google, is stored under DoubleClick domain and tracks the number of times users see an advert, measures the success of the campaign and calculates its revenue. This cookie can only be read from the domain they are set on and will not track any data while browsing through other sites.
_gu1 monthThis cookie is set by the provider Getsitecontrol. This cookie is used to distinguish the users.
_ym_d1 yearYandex sets this cookie to store the date of the users first site session.
_ym_isad20 hoursYandex sets this cookie to determine if a visitor has ad blockers.
_ym_uid1 yearYandex sets this cookie to identify site users.
at-randneverAddThis sets this cookie to track page visits, sources of traffic and share counts.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
eud1 year 24 daysThis cookie is owned by Rocketfuel and collects anonymous user data to target audiences and deliver personalized ads.
ezepvv1 dayThis cookie is set by the provider Ezoic to track what pages the user has viewed.
ezoadgid_103430 minutesEzoic uses this cookie to record an id for the user's age and gender category.
ezoref_10342 hoursEzoic uses this cookie to store the referring domain, i.e the website the user was on, before he came to the current website.
ezouspvasessionThe ezouspva cookie is set by the provider Ezoic and is used to track the number of pages a user has visited all time.
ezouspvvsessionThe ezouspvv cookie is set by the provider Ezoic and is used to track the number of pages a user has visited all time.
UserID13 monthsThis cookie is set by ADITION Technologies AG, as a unique and anonymous ID for the visitor of the website, to identify unique users across multiple sessions.
uvc1 year 1 monthSet by addthis.com to determine the usage of addthis.com service.
yabs-sidsessionYandex sets this cookie to store the session ID.
yandexuid1 yearYandex sets this cookie to identify site users.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDauerBeschreibung
__atuvc1 year 1 monthAddThis sets this cookie to ensure that the updated count is seen when one shares a page and returns to it, before the share count cache is updated.
__atuvs30 minutesAddThis sets this cookie to ensure that the updated count is seen when one shares a page and returns to it, before the share count cache is updated.
__cf_bm30 minutesThis cookie, set by Cloudflare, is used to support Cloudflare Bot Management.
pll_language1 yearThe pll _language cookie is used by Polylang to remember the language selected by the user when returning to the website, and also to get the language information when not available in another way.
pll_language1 yearThe pll _language cookie is used by Polylang to remember the language selected by the user when returning to the website, and also to get the language information when not available in another way.
SPEICHERN & AKZEPTIEREN
Präsentiert von CookieYes Logo