Release 1.2.0

Release 1.2.0

Unser bisher stärkstes Release bringt erste Post-Processing-Funktionen wie Bloom und Tonemapping, HDR-Umgebungsunterstützung, Verbesserungen für bildbasierte Beleuchtung, Animationsmischung, Morph-Targets und eine auf JavaScript/Typescript basierende Editor-API, um eigene Tools zu erstellen.

Verbesserte Tests 

Wir haben ein Test-Framework erstellt, das die Render-Ergebnisse eines Projekts vergleichen kann, um automatisch unsere Beispiele zu testen.

Wir haben dieses Framework als Open Source veröffentlicht, um es Dir zu ermöglichen, Deine eigenen Projekte zu testen.

Unsichtbare Änderungen 

Dieses Release ist voller unsichtbarer Vorarbeiten, um sicherzustellen, dass die Architektur der Engine und des Editors mit zukünftigen Funktionen skalierbar ist:

  • Wir haben das interne Datenmodell für den Editor refaktoriert, um es wartbarer, schneller und fehlerärmer zu machen.
  • Das Animationssystem verwendet nun Animationsgrafen. Auch wenn sie Dir noch nicht zugänglich sind, ermöglichen sie bereits neue Funktionen wie die Animationsmischung.
  • Mehrere Szenen werden nun zur Laufzeit verarbeitet. Dies ist bereits beim Anhängen und Laden von Szenen über JavaScript nützlich, wird jedoch bald die effiziente Verwaltung von Ressourcen über mehrere Szenen und Ressourcenpakete hinweg aus dem Editor ermöglichen.
  • Das Serialisierungsformat für benutzerdefinierte Komponenten wurde geändert, um zukünftig viele weitere Eigenschaftstypen zu unterstützen.

Changelog 

Editor

  • “Animation tools” Ansicht hinzugefügt, um Ereignisspuren zu Animationen hinzuzufügen
  • JavaScript/Typescript basierte Editor Plugin API hinzugefügt, um eigene Ansichten und Werkzeuge zu erstellen
  • Unterstützung für 1D- und 2D-Mischung zur Animationskomponente hinzugefügt
  • Benutzeroberfläche neugestaltet, viele UX-Probleme behoben und den Fensterraum effektiver genutzt

Alt:

Release 1.2.0
Neu:
Release 1.2.0

  • Endlosschleife beim Packen behoben, wenn ein Objekt mit statischer physx-Komponente ausgewählt ist
  • Suchleiste hinzugefügt, um kürzlich verwendete Projekte im Projektassistenten zu suchen
  • JSON-Parser-Fehler hinzugefügt, wenn Projektdatei oder andere JSON-Dateien nicht geladen werden können
  • Lesen von JSON-Dateien mit nachgestellten Kommas erlaubt, um die Lösung von Zusammenführungskonflikten zu erleichtern
  • .tsx und .jsx als Skripterweiterungen erkannt
  • Unterstützung für das Laden von HDR-Bildern hinzugefügt
  • Szenenansicht: Shift kann nun mit Num7, Num1 und Num3 verwendet werden, um aus gegenüberliegenden achsenparallelen Richtungen zu sehen
  • Szenenansicht: Fix für nicht anklickbare Gizmo-Achse, wenn Achse senkrecht zur Ansicht steht
  • Szenenansicht: Mittlere Maustaste mit Alt + linker Maustaste emulieren
  • Szenenansicht: Fix für Darstellung des Netzvisualisierungsmodus
  • Szenenansicht: Umschalter für Lichtvisualisierung hinzugefügt
  • Projekteinstellungen: Sekundäre Texturkoordinaten auch in den Rendereinstellungen anzeigen
  • Warnung über iOS Safari bei unkomprimierter Atlas-Max-Einstellung hinzugefügt
  • Leistungsverbesserung des gesamten Editors erheblich verbessert
  • Ressourcenansicht: Kopieren & Einfügen von Materialressourcen hinzugefügt
  • Option hinzugefügt, um das Importieren von PBR-Materialien als Phong zu deaktivieren
  • Checkbox hinzugefügt, um das Projekt mit HTTPS zu starten, wenn SSL eingerichtet ist
  • Standardmäßig Vermeidung von Verpacken nicht referenzierter Meshes
  • Unterstützung für Szenendateien mit separaten Tangenten- und Bitangenten-Attributen hinzugefügt
  • Race Condition zwischen npm install und Upgrade des erforderlichen API-Pakets behoben
  • Texturatlas-Fehler während der Bildkomprimierung unterdrückt
  • Fix für Material-Thumbnails, die nicht bei erstem Projektladen gerendert werden
  • Alt+G, Alt+R und Alt+S hinzugefügt, um Position, Rotation und Skalierung von ausgewählten Objekten zurückzusetzen
  • “Physik simulieren” Tastenkombination zu Alt+Shift+S verschoben
  • Umstellung auf WEBP für unkomprimierte Bilder
  • importPhysicalAsPhong Projekteinstellung hinzugefügt, um es zu deaktivieren
  • Fix für --import Parameter, der die importierte Szene nicht richtig kompiliert
  • Unterstützung für das Importieren von EXR-Dateien hinzugefügt

Engine

  • Unterstützung für 1D- und 2D-Animationsmischung hinzugefügt

  • Unterstützung für Animation-Ereignisspuren hinzugefügt

  • Unterstützung für HDR-Umgebungen hinzugefügt

    Screenshot: PBR-Rendering mit HDRI-Umgebung in Wonderland Engine

  • Backen von spekulativen und diffusen GI-Sonden aus Himmel und HDR-Umgebung hinzugefügt

  • Unterstützung für sphärische Harmoniken von diffusen GI-Sonden hinzugefügt

  • Unterstützung für 16-Bit-Float-Parameter (“half float”) in benutzerdefinierten Materialien, erklärt mit mediump

  • Unterstützung für Morph-Targets (auch Blendshapes genannt) hinzugefügt

  • Unterstützung für Tonemapping mit ACES, angenähertem ACES, Reinhard oder exponentieller Methode hinzugefügt
  • Bloom mit äußerst effizientem, mobil-GPU-freundlichem Algorithmus neu implementiert
  • Fix für Shaderkompilierungsfehler bei deaktiviertem SHADOW_NORMAL_OFFSET_SLOPE_SCALE
  • Shader: Fix für Warnungen bei dynamischem Indexing
  • Internes Serialisierungsformat für benutzerdefinierte Komponentenparameter umgestellt, um in Zukunft mehr Typen zu unterstützen
  • Weitere GPU-Vertex-Fetch- und Überzeichnungsoptimierungen für Multi-Draw-Renderer implementiert
  • Windows: Probleme mit Projekten auf verschiedenen Speichervolumina behoben

Laufzeit

  • Unterstützung für das Laden und Ändern mehrerer Szenen über Szenen-Handles und das Umschalten der aktiven Szene hinzugefügt
  • Fix für Absturz beim Aktualisieren von Mesh-Daten über JavaScript-API
  • Fix für veraltete Transformation auf Wurzel von geklonten Objekten

JavaScript/TypeScript API

  • Dokumentation klären und verbessern
  • AnimationComponent.setParameterFloat und .getParameterFloat hinzugefügt, um Mischparameter zu steuern
  • MeshManager.create() und TextureManager.create() hinzugefügt, new Mesh() und new Texture() veraltet erklärt
  • AnimationComponent.onEvent hinzugefügt, um auf Ereignisse von Animationsereignisspuren zu reagieren
  • PhysXComponent.sleepOnActivate hinzugefügt
  • TextComponent.getBoundingBox hinzugefügt, um den Begrenzungsrahmen des gerenderten Textes abzurufen
  • Scene und Prefab hinzugefügt: Teile von Szenen, die aktiviert und instanziiert werden können
  • Property.vector2, Property.vector3 und Property.vector4 hinzugefügt
  • TextComponent.getBoundingBox und TextComponent.getBoundingBoxForText hinzugefügt
  • Fix für Object3D.clone(), das manchmal eine Komponente zweimal anstatt die richtige Komponente klont
  • Fix für Object3D und Component, die nicht als zerstört markiert werden, wenn sie von der Engine zerstört werden
  • .equals() auf Ressourcenklassen veraltet. Du kannst jetzt === oder == verwenden
  • TextComponent.justification veraltet und in TextComponent.verticalAlignment umbenannt

Komponenten

  • orbital-camera Komponente hinzugefügt
  • input-profile Komponente für die Integration mit webxr-input-profiles hinzugefügt
  • Spur: Deaktivierung ordnungsgemäß behandelt

Open Source Mitwirkende 

Ein besonderer Dank geht an die Community für die Open Source-Beiträge, insbesondere an:

Last Update: May 2, 2024

Bleiben Sie auf dem Laufenden.