Squadron 42 Monthly Report: August 2020

Undefined Undefined Monthly Reports

Content

This is a cross-post of the report that was recently sent out via the monthly Squadron 42 newsletter. We’re publishing this a second time as a Comm-Link to make it easier for the community to reference back to.
Attention Recruits,

What you are about to read is the latest information on the continuing development of Squadron 42 (SCI des: SQ42).

As a result of our latest intel reports, we’ve learned about work towards creating the Xi’an race, responsive music to dynamic situations, and further work on the Vanduul combat AI and animation.
The information contained in this communication is extremely sensitive and it is of paramount importance that it does not fall into the wrong hands. Purge all records after reading.

UEE Naval High Command AI (Combat)
Though a significant portion of the AI Team’s work is relevant for both SQ42 and the PU, some ongoing tasks are exclusive to the single-player campaign. This includes continued iterations on Vanduul melee behavior, which now automatically evaluates the suitability of specific special actions (dodging, jump attacks, melee attacks, etc.).

Regarding melee attacks, damage is now triggered by collision with the weapon’s blade to enable timing and assets to be tweaked and adjusted. The Vanduul lance has several states that can be utilized by the behavior, including extending it when preparing for melee attacks or keeping it collapsed when firing or aiming. These weapon state modifications are triggered by the behavior based on general context. Vanduul health was also further developed to reflect the different skeleton and activate the correct damage when it receives hits to different areas.



AI (Social)
For social AI, the recently devised bridge crew behavior now uses operator seat functionalities. The team are currently using this scenario to extend the seated actor state to support some usable functionalities. For example, they have extended the idle/fidget system on top of operator seats to allow the animators more freedom to bring life to seated scenarios.

SQ42-specific behaviors and functionalities were set up for vendor characters as well. Work also started on usables for the mess hall that will allow NPCs to collect and consume food systemically. When complete, NPCs will be able to collect cutlery and plates, serve themselves food, and then occupy seats to eat and drink.



Animation
Animation spent the month working on object and grenade throwing, knockdowns and knockbacks, and several new weapons. They further developed the weapons master, capital ship seat interaction, the bartender, and AI ship inspections. They also made great inroads into the NPC ammo retrieval mentioned last month, Vanduul combat, and female player faces and emotes. Interrupts were added to several chapters as part of ongoing scene work too.

Art (Characters)
The Character Team revisited a few key heads, cleaning up skin textures, refining hair, and are currently working with tech animation and cinematics to address facial animations. Some of these revisions may impact other departments, so all changes are modular and easy to roll back. This work will inform the process of reviewing other SQ42 characters and updates in the future.

Aliens-wise, the character artists finished modeling and texturing the Vanduul armor and passed it to the tech artists for rigging.

“So far work on the Vanduul looks fantastic and we are very excited about it.” -The Character Team

They also began coordinating with Tech Animation on the Xi’an race, ironing out major anatomy and animation issues.

Art (Weapons)
Weapon Art’s SQ42 focus throughout August was on the Vanduul lance, which consisted of looking at the weapon’s materials. A new concept for a medical device used in some of the larger ships was completed too.

Audio
August saw a refactor to the footsteps system to improve the audio on different surfaces, making it more responsive to player movement. They’re also improving the granularity and structure of the music system to improve transitions between music content based on what’s happening in a gameplay context.

Time was dedicated to the Lombard effect; a newly developed system detects louder volumes and large amounts of noise in-game and makes dialogue louder automatically so that players don’t need to do it manually. Audio also supported the VFX Team on triggering sounds when particles are generated on the GPU. Currently, if a particle is generated on the GPU, audio cannot efficiently play or sync. This ongoing work will remedy that.



Cinematics
August saw work continue on the character lighting rig used by scenes that don’t require a full manual pass, with more rules defined and edge cases identified. They also began investigating how the automatic depth-of-field focus system chooses which character is of interest during conversations. For filmic scenes (where the cinematic designer directs the camera), focus is selected and controlled manually. However, conversational scenes (where the player can freely roam around) can move out of focus if the player looks past them. Careful consideration is taken to ensure this doesn’t happen due to another character being classed as a ‘higher priority.’

Several scenes moved past the ‘implementation complete’ phase and into production. Once production is complete, scenes are fully playable and deemed almost shippable, though a final pass is required to tweak and finalize lighting, VFX, UI, and animation.

Attention was also given to sequences that play out if the player reaches a ‘game over’ condition due to behavior not befitting a UEE naval officer.

Engineering
In August, the Engineering Team added support for SDF-based local physics grids and SDF sets, interior grid markup for SDFs in the resource compiler, and g-force calculation for all actor entities. They also added a separate g-force collision calculation to the actor entity, new visualization modes to help development, and ‘inspect’ and ‘modify’ properties of static and rigid entities. The option to export bit-voxel geometry via the mesh setup and save it inside CGF was added too.

Optimization-wise, they worked on multi-threaded RC bit-voxel baking, which saves a few hundred bytes on every CPhysicalEntity instance and improves cache locality by reordering members. They also saved four bytes per physical-placeholder instance, disabled debug validation in the final release, moved large geometry into a dedicated bucket during grid population, improved bit-voxel tree-box calculation by using blocks instead of individual voxels, and optimized tree traversals in grid checks

The Systems Team added an API to the crash handler that allows the dumping of cigprofile data. This will help them analyze what the system was doing shortly before running into a deadlock and watch dog time out and log memory usage at the time of the crash.

Deep analysis was done to resolve the disparity between tracked and system-reported memory use. Several improvements were made on both Windows and Linux to correctly track data moving forward, including low level allocator reserved pages and third-party allocations. They continued looking into the SIMD and memory layout code for zone partitions, implemented faster execution for scoped FPE enable and disable by eliminating linear search through all registered threads, and fixed several issues with ISPC integration. They also reduced the memory use of P4K system and changed the MemoryAddressRange to use CIG API instead of native OS API for memory tracking.

Work on the Gen12 renderer continued, with the team adding support for instancing and a ‘keep alive’ list so that GPUDevice objects are kept active until the end of a frame. Several refactors and optimizations were made too.

Cleanup in the shader system and renderer for thread safety continued, as did G12 brush rendering. They also started to look into DX11.1 API support (Windows 8.1 and up) for binding CBs using offsets for intermediate performance improvements until Vulkan ships. They also added support for custom texture views when using pass resources.

Volumetric fog to PassResource was ported to prevent the shader parser from stripping global symbols. Some severe Alpha 3.10 GPU memory leaks were fixed too.

For planet atmosphere unified raymarching, the team established a general atmosphere context to avoid accessing resources globally. This make it easier and safer to reuse shared code. All related shader code was refactored too. For temporal reprojection, they implemented options for: neighborhood clipping, refining color bbox using neighborhood variance, compression (based on scene luminance), and color space conversion of color data for tighter bbox to reduce errors introduce by clipping and clamping. The depth dilation code was futher developed too.

R&D into volumetric clouds continued and detailed plans for experiments and next steps were drafted. The initial set up for the volumetric cloud render environment was completed, code was restructured to allow it to be shared between planet atmosphere and volumetric cloud shaders, and the initial pass and injection of cloud raymarch results into the unified atmosphere raymarcher was implemented. The team made performance improvements to the terrain displacement mapping and optimized the shader parser to improve turnaround times when editing shader code.

Finally, Engineering implemented fast bicubic b-spline and Catmull Rom spline interpolation variants for two-to-four channel texture data, further bi-cubic spline evaluation optimizations, made a planet terrain shadow pass, and fixed time precision issue in cloud animation.

Gameplay Story
Gameplay Story continued to work thorough the key introduction of a ship early in the game, and two days of mo-cap was completed in the Derby studio.

“It was a little more challenging to work in a COVID-safe environment, but it was great to get back into the studio after such a long hiatus.” -The Gameplay Story Team

This has enabled the team to complete some long-standing tasks that could not be addressed through hand-keying alone.

Graphics
The Graphics Team predominantly focused on the Gen12 renderer last month, with time dedicated spcifically to the conversion process so that the old renderer code can be deprecated as quickly as possible. Various systems are currently being converted, including gas cloud rendering, shadow masking, and run-time environment probes. Improvements were also made to the rendering API to allow simpler and more robust client code that’s less prone to human error. Work on the Vulkan backend made good progress too. The shaders were cleaned up to remove all unnecessary reliance on CPU uploaded data; modern GPU performance means it’s more important to save the CPU work in the renderer and driver than a few tiny instructions on the GPU.

Work on the organic shader continued too, bringing tighter integration with the planets to enable the artists to use assets in a variety of biomes and have them automatically integrate into their surroundings.



Level Design
The Social Design Team continued to work on scenes, usables, and NPC behaviors. They moved ten scenes to the ‘gold standard’ level, where everything plays out as expected in the final game. These scenes vary in complexity to give the team an accurate representation of how long it will take to complete their tasks for the rest of the game.

The Level Design Team continued to polish the ground-based levels while maintaining a strong focus on AI behaviors and multiple traversal routes.

The development of important dogfight locations continued. This involved working closely with the Flight AI and Art teams for support on use cases and space-scaping respectively.

Narrative
Throughout August, the Narrative Team continued with the review sessions detailed last month. As more locations progress in development, the team generated additional environmental storytelling documents to give intrepid players more insight into the story, history, and character of the environments.

As part of these playthroughs, they started to call out potential moments that could benefit from additional content, such as filling in potential lulls or calling out gameplay mechanics. After scripting, the hope is to record placeholder versions of the audio to block into the game and see how it plays. This approach will allow them to field-test new lines in situ and iterate on them long before official capture. They also worked alongside the Audio Team to develop the Vanduul language, which involved a deeper dive into the alien race’s culture.



QA
QA continued to support Cinematics with recordings of each level to ensure scenes are working as intended and are of the intended quality. They also created test levels for different effects to enable them to be tested more quickly and efficiently.

User Interface (UI)
Most visual teams have embedded UI artists, all of who have been working on a variety of upcoming features. For the Actor Feature Team, the artists polished the Personal Inner Though system and external inventory, both of which will be used in the PU and SQ42. They also began looking at the various fonts used throughout the game with the goal of unifying and updating them.

The UI Tech Team worked on ‘canvas-slicing’ tech, which will give other teams more freedom to add 2D UI to 3D spaces (via Building Blocks). They also began looking into refactoring the color system. The aim is to aid developers by making it easier to adjust colors across various UIs using a stylesheet rather than adjusting RGB values in each element. It will also allow vector gradients to be used in UI.

VFX
Working closely with the Design and Art teams, VFX Tech Art continued to support gas clouds, which is predominately now in the bug-fixing phase. They also continued to improve the texture sequence creation process, creating a faster, more streamlined workflow than the current one (which involves several different software packages). This is important to allow the artists to be more incremental with fluid sims (and exporting them as baked texture sequences), which will ultimately lead to higher-quality explosions, smokes, and fire effects. WE’LL SEE YOU NEXT MONTH…
Dies ist ein Cross-Post des Berichts, der kürzlich über den monatlichen Squadron 42 Newsletter verschickt wurde. Wir veröffentlichen ihn ein zweites Mal als Comm-Link, um es für die Community einfacher zu machen, darauf zurückzugreifen.
Achtung Rekruten,

Was ihr gleich lesen werdet, sind die neuesten Informationen über die Weiterentwicklung von Squadron 42 (SCI des: SQ42).

Als Ergebnis unserer letzten Geheimdienstberichte haben wir von der Arbeit an der Erschaffung der Xi'an-Rasse erfahren, von der Musik, die auf dynamische Situationen reagiert, und von der weiteren Arbeit an der Vanduul-Kampf-KI und der Animation.
Die in dieser Mitteilung enthaltenen Informationen sind äußerst sensibel und es ist von größter Wichtigkeit, dass sie nicht in die falschen Hände geraten. Säubere alle Aufzeichnungen nach dem Lesen.

UEE Marine-Oberkommando

KI (Kampf)
Obwohl ein bedeutender Teil der Arbeit des KI-Teams sowohl für SQ42 als auch für die PU relevant ist, sind einige laufende Aufgaben ausschließlich der Einzelspielerkampagne vorbehalten. Dazu gehören fortgesetzte Iterationen zum Vanduul-Nahkampfverhalten, das nun automatisch die Eignung bestimmter Spezialaktionen (Ausweichen, Sprungangangriffe, Nahkampfangriffe, etc.) bewertet.
Bei Nahkampfangriffen wird der Schaden nun durch den Zusammenprall mit der Klinge der Waffe ausgelöst, um das Timing und die Aktiva zu optimieren und anzupassen. Die Vanduul-Lanze hat mehrere Zustände, die durch das Verhalten ausgenutzt werden können, wie z.B. das Ausfahren der Lanze, wenn man sich auf Nahkampfangriffe vorbereitet, oder das Zusammenklappen der Lanze, wenn man schießt oder zielt. Diese Waffenzustandsmodifikationen werden durch das Verhalten ausgelöst, das auf dem allgemeinen Kontext basiert. Der Vanduul-Gesundheitszustand wurde ebenfalls weiterentwickelt, um das unterschiedliche Skelett widerzuspiegeln und den richtigen Schaden zu aktivieren, wenn er Treffer in verschiedenen Bereichen erhält.


KI (sozial)
Für die soziale KI nutzt das kürzlich entwickelte Verhalten der Brückenbesatzung nun die Funktionalitäten des Operator-Sitzes. Das Team verwendet dieses Szenario derzeit, um den Zustand des sitzenden Schauspielers zu erweitern, um einige nutzbare Funktionalitäten zu unterstützen. Zum Beispiel haben sie das Idle/Fidget-System auf den Operator-Sitzen erweitert, um den Animatoren mehr Freiheit zu geben, um sitzende Szenarien mit Leben zu erfüllen.
SQ42-spezifische Verhaltensweisen und Funktionalitäten wurden auch für Verkäufercharaktere eingerichtet. Es wurde auch mit der Arbeit an Benutzbarkeiten für den Speisesaal begonnen, die es den NSCs erlauben, Nahrung systemisch zu sammeln und zu konsumieren. Wenn die Arbeiten abgeschlossen sind, werden die NSCs in der Lage sein, Besteck und Teller einzusammeln, sich selbst Essen zu servieren und dann Plätze zum Essen und Trinken zu besetzen.


Animation
Die Animation hat den Monat damit verbracht, an Objekt- und Granatewerfen, Niederschlägen und Rückschlägen und einigen neuen Waffen zu arbeiten. Sie entwickelten den Waffenmeister, die Interaktion mit dem Kapitänssitz, den Barkeeper und die KI-Schiffsinspektionen weiter. Außerdem haben sie große Fortschritte bei der im letzten Monat erwähnten NSC-Munitionsbeschaffung, dem Vanduul-Kampf und den Gesichtern und Emotes der Spielerinnen gemacht. Als Teil der laufenden Szenenarbeit wurden auch Unterbrechungen in mehreren Kapiteln hinzugefügt.
Kunst (Charaktere)
Das Charakter-Team hat ein paar Schlüsselköpfe überarbeitet, Hauttexturen bereinigt, Haare verfeinert und arbeitet derzeit mit Tech-Animation und Cinematics, um Gesichtsanimationen zu behandeln. Einige dieser Überarbeitungen können sich auf andere Abteilungen auswirken, daher sind alle Änderungen modular und leicht rückgängig zu machen. Diese Arbeit wird in Zukunft in den Prozess der Überprüfung anderer SQ42-Charaktere und Updates einfließen.
Was die Aliens betrifft, so haben die Character Artists die Modellierung und Texturierung der Vanduul-Rüstung abgeschlossen und sie an die Tech Artists zum Rigging weitergegeben.
"Bis jetzt sieht die Arbeit am Vanduul fantastisch aus und wir sind sehr aufgeregt darüber". -Das Charakter-Team
Sie fingen auch an, sich mit der Tech-Animation der Xi'an-Rasse zu koordinieren, um wichtige Anatomie- und Animationsprobleme auszubügeln.
Kunst (Waffen)
Der Schwerpunkt von Weapon Art's SQ42 lag den ganzen August über auf der Vanduul Lanze, die darin bestand, sich die Materialien der Waffe anzusehen. Ein neues Konzept für ein medizinisches Gerät, das in einigen der größeren Schiffe verwendet wird, wurde ebenfalls fertiggestellt.
Audio
Im August wurde das Fußspursystem überarbeitet, um den Ton auf verschiedenen Oberflächen zu verbessern, damit es besser auf Spielerbewegungen reagiert. Außerdem wurde die Granularität und Struktur des Musiksystems verbessert, um die Übergänge zwischen den Musikinhalten basierend auf den Geschehnissen im Spielkontext zu verbessern.
Zeit wurde dem Lombardeffekt gewidmet; ein neu entwickeltes System erkennt lautere Lautstärken und große Mengen an Geräuschen im Spiel und macht Dialoge automatisch lauter, so dass die Spieler dies nicht mehr manuell tun müssen. Audio unterstützte das VFX-Team auch beim Auslösen von Sounds, wenn Partikel auf der GPU generiert werden. Derzeit kann Audio nicht effizient abgespielt oder synchronisiert werden, wenn ein Partikel auf der GPU erzeugt wird. Diese laufende Arbeit wird das beheben.


Cinematics
Im August wurde die Arbeit an der Charakterbeleuchtungsanlage fortgesetzt, die für Szenen verwendet wird, die keinen vollständigen manuellen Durchgang erfordern, wobei weitere Regeln definiert und Randfälle identifiziert wurden. Außerdem begannen sie damit, zu untersuchen, wie das automatische Tiefenschärfe-Fokussiersystem auswählt, welcher Charakter während der Gespräche von Interesse ist. Bei Filmszenen (bei denen der Filmdesigner die Kamera führt) wird der Fokus manuell ausgewählt und gesteuert. Konversationsszenen (in denen sich der Spieler frei bewegen kann) können jedoch aus dem Fokus geraten, wenn der Spieler an ihnen vorbei schaut. Es wird sorgfältig darauf geachtet, dass dies nicht dadurch geschieht, dass ein anderer Charakter als 'höhere Priorität' eingestuft wird.
Einige Szenen sind nach der Phase 'Implementierung abgeschlossen' in die Produktion übergegangen. Sobald die Produktion abgeschlossen ist, sind die Szenen vollständig spielbar und können fast versendet werden. Allerdings ist ein letzter Durchgang erforderlich, um die Beleuchtung, VFX, UI und Animation zu optimieren und abzuschließen.
Es wurde auch auf Sequenzen geachtet, die abgespielt werden, wenn der Spieler aufgrund eines Verhaltens, das nicht zu einem UEE-Marine-Offizier passt, einen 'Game over'-Zustand erreicht.
Technik
Im August fügte das Ingenieurteam Unterstützung für SDF-basierte lokale Physik-Grids und SDF-Sets, innere Gitterauszeichnung für SDFs im Ressourcen-Compiler und g-force-Berechnung für alle Akteur-Entitäten hinzu. Sie fügten auch eine separate G-Kraft-Kollisionsberechnung für die actor Entity hinzu, neue Visualisierungsmodi, um die Entwicklung zu unterstützen, und 'inspizieren' und 'modifizieren' Eigenschaften von statischen und starren Entities. Die Option, Bit-Voxel-Geometrie über das Mesh-Setup zu exportieren und im CGF zu speichern, wurde ebenfalls hinzugefügt.
Optimierungstechnisch arbeiteten sie am Multi-Threaded-RC-Bit-Voxel-Backing, das ein paar hundert Bytes auf jeder CPhysicalEntity-Instanz spart und die Cache-Lokalität durch die Neuordnung der Mitglieder verbessert. Außerdem haben sie vier Bytes pro physischer Platzhalter-Instanz eingespart, die Debug-Validierung in der finalen Version deaktiviert, große Geometrien während der Grid-Population in einen dedizierten Eimer verschoben, die Bit-Voxel-Baum-Box-Berechnung durch die Verwendung von Blöcken statt einzelner Voxel verbessert und die Baumdurchquerung bei Grid-Checks optimiert.
Das Systems Team hat dem Crashhandler eine API hinzugefügt, die das Dumpen von Zigprofildaten erlaubt. Dies wird ihnen helfen, zu analysieren, was das System kurz vor einem Deadlock gemacht hat, und das Timeout des Hundes zu beobachten und den Speicherverbrauch zum Zeitpunkt des Absturzes zu protokollieren.
Eine tiefgehende Analyse wurde durchgeführt, um die Diskrepanz zwischen dem verfolgten und dem vom System gemeldeten Speicherverbrauch aufzulösen. Sowohl unter Windows als auch unter Linux wurden mehrere Verbesserungen vorgenommen, um die Daten korrekt zu verfolgen, einschließlich der von Low-Level-Allokatoren reservierten Seiten und der Zuweisung von Drittanbietern. Sie setzten die Untersuchung des SIMD- und Speicher-Layout-Codes für Zonenpartitionen fort, implementierten eine schnellere Ausführung für scoped FPE aktivieren und deaktivieren, indem die lineare Suche durch alle registrierten Threads eliminiert wurde, und beendeten mehrere Probleme mit der ISPC-Integration. Sie reduzierten auch den Speicherverbrauch des P4K-Systems und änderten den MemoryAddressRange, um die CIG-API anstelle der nativen OS-API für die Speicherverfolgung zu verwenden.
Die Arbeit am Gen12-Renderer wurde fortgesetzt, wobei das Team Unterstützung für Instancing und eine 'keep alive'-Liste hinzufügte, so dass GPUDevice-Objekte bis zum Ende eines Frames aktiv bleiben. Verschiedene Refactors und Optimierungen wurden ebenfalls vorgenommen.
Aufräumarbeiten im Shader-System und Renderer für die Threadsicherheit wurden fortgesetzt, ebenso das G12-Pinsel-Rendering. Sie begannen auch, sich mit der DX11.1-API-Unterstützung (Windows 8.1 und höher) für das Binden von CBs unter Verwendung von Offsets für zwischenzeitliche Leistungsverbesserungen zu beschäftigen, bis Vulkan ausläuft. Sie fügten auch Unterstützung für benutzerdefinierte Texturansichten bei der Verwendung von Pass-Ressourcen hinzu.
Volumetrischer Nebel wurde auf PassResource portiert, um den Shader-Parser daran zu hindern, globale Symbole zu entfernen. Einige schwere Alpha 3.10 GPU-Speicherlecks wurden ebenfalls behoben.
Für das vereinheitlichte Raymarching der Planetenatmosphäre hat das Team einen allgemeinen Atmosphärenkontext erstellt, um den globalen Zugriff auf Ressourcen zu vermeiden. Dies macht es einfacher und sicherer, geteilten Code wiederzuverwenden. Der gesamte zugehörige Shader-Code wurde ebenfalls überarbeitet. Für die zeitliche Reprojektion implementierten sie Optionen für: Nachbarschaftsclipping, Verfeinerung der bbox-Farbdaten durch Nachbarschaftsvarianz, Kompression (basierend auf der Szenenluminanz) und Farbraumkonvertierung der Farbdaten für eine engere bbox, um Fehler zu reduzieren, die durch Clipping und Clamping entstehen. Der Code zur Tiefenausdehnung wurde ebenfalls weiterentwickelt.
Die Forschung und Entwicklung im Bereich der volumetrischen Wolken wurde fortgesetzt und detaillierte Pläne für Experimente und nächste Schritte wurden entworfen. Die anfängliche Einrichtung der volumetrischen Wolken-Rendering-Umgebung wurde abgeschlossen, der Code wurde umstrukturiert, damit er zwischen der Planetenatmosphäre und den volumetrischen Wolken-Shadern geteilt werden kann, und der anfängliche Durchlauf und die Injektion der Ergebnisse des Wolken-Raymarch in den einheitlichen Atmosphären-Raymarch wurde implementiert. Das Team nahm Leistungsverbesserungen an der Geländeverschiebungskartierung vor und optimierte den Shader-Parser, um die Umlaufzeiten beim Editieren des Shader-Codes zu verbessern.
Schließlich implementierte die Technik schnelle bikubische B-Spline- und Catmull-Rom-Spline-Interpolationsvarianten für Zwei-zu-Vier-Kanal-Texturdaten, weitere Optimierungen der bikubischen Spline-Bewertung, machte einen Planeten-Terrain-Schattenpass und behebt ein Zeitgenauigkeitsproblem in der Wolkenanimation.
Gameplay-Geschichte
Gameplay Story arbeitete weiterhin gründlich an der wichtigen Einführung eines Schiffes zu Beginn des Spiels, und zwei Tage mo-cap wurden im Derby-Studio fertiggestellt.
"Es war etwas schwieriger, in einer COVID-sicheren Umgebung zu arbeiten, aber es war toll, nach einer so langen Pause wieder ins Studio zu kommen. -Das Gameplay-Story-Team
Dies hat es dem Team ermöglicht, einige langjährige Aufgaben zu erledigen, die nicht allein durch Handtasten gelöst werden konnten.
Grafiken
Das Grafikteam konzentrierte sich letzten Monat hauptsächlich auf den Gen12-Renderer, wobei die Zeit speziell dem Konvertierungsprozess gewidmet wurde, damit der alte Renderer-Code so schnell wie möglich veraltet ist. Zurzeit werden verschiedene Systeme konvertiert, darunter Gaswolken-Rendering, Schattenmaskierung und Runtime Environment Probes. Verbesserungen wurden auch an der Rendering-API vorgenommen, um einfacheren und robusteren Clientcode zu ermöglichen, der weniger anfällig für menschliche Fehler ist. Die Arbeit am Vulkan-Backend machte ebenfalls gute Fortschritte. Die Shader wurden gesäubert, um alle unnötige Abhängigkeit von der CPU hochgeladenen Daten zu entfernen; moderne GPU-Leistung bedeutet, dass es wichtiger ist, die CPU-Arbeit im Renderer und Treiber zu sparen, als ein paar winzige Anweisungen auf der GPU.
Die Arbeit an den organischen Shadern wurde ebenfalls fortgesetzt, um eine engere Integration mit den Planeten zu erreichen, damit die Künstler in der Lage sind, Assets in einer Vielzahl von Biomen zu nutzen und sie automatisch in ihre Umgebung zu integrieren.


Level-Design
Das Social Design Team arbeitete weiter an Szenen, Benutzbarkeit und NPC-Verhalten. Sie haben zehn Szenen auf das 'Goldstandard'-Niveau gebracht, wo alles wie erwartet im finalen Spiel abläuft. Diese Szenen variieren in ihrer Komplexität, um dem Team eine genaue Vorstellung davon zu geben, wie lange es dauern wird, ihre Aufgaben für den Rest des Spiels zu erledigen.
Das Leveldesign-Team fuhr damit fort, die bodengestützten Levels aufzupolieren, wobei der Schwerpunkt weiterhin auf dem KI-Verhalten und den verschiedenen Überquerungsrouten lag.
Die Entwicklung von wichtigen Dogfight-Orten wurde fortgesetzt. Dies beinhaltete eine enge Zusammenarbeit mit dem Flug-KI- und dem Kunst-Team für die Unterstützung bei Use Cases bzw. Space-Scaping.
Erzählung
Den ganzen August über setzte das Erzählteam die Rückblicke des letzten Monats fort. Da immer mehr Schauplätze in der Entwicklung voranschreiten, erstellte das Team zusätzliche Dokumente zum Geschichtenerzählen der Umgebung, um unerschrockenen Spielern mehr Einblick in die Geschichte, die Geschichte und den Charakter der Umgebungen zu geben.
Als Teil dieser Durchspielungen begannen sie damit, potenzielle Momente auszurufen, die von zusätzlichen Inhalten profitieren könnten, wie z.B. das Ausfüllen potenzieller Flauten oder das Herausrufen von Spielmechaniken. Nach der Erstellung des Skripts besteht die Hoffnung, Platzhalterversionen des Audios aufzuzeichnen, um sie in das Spiel einzubauen und zu sehen, wie es läuft. Diese Vorgehensweise wird es ihnen ermöglichen, neue Zeilen vor Ort zu testen und sie lange vor der offiziellen Aufnahme zu wiederholen. Sie arbeiteten auch mit dem Audio-Team zusammen, um die Vanduul-Sprache zu entwickeln, was ein tieferes Eintauchen in die Kultur der außerirdischen Rasse mit sich brachte.


QA
QA unterstützte Cinematics weiterhin mit Aufnahmen jedes Levels, um sicherzustellen, dass die Szenen wie beabsichtigt funktionieren und die beabsichtigte Qualität haben. Sie haben auch Testlevel für verschiedene Effekte erstellt, damit diese schneller und effizienter getestet werden können.
Benutzeroberfläche (UI)
Die meisten visuellen Teams haben eingebettete UI-Künstler, die alle an einer Vielzahl von kommenden Features gearbeitet haben. Für das Actor Feature Team haben die Künstler das Personal Inner Though System und das externe Inventar aufpoliert, die beide im PU und SQ42 verwendet werden. Sie begannen auch damit, sich die verschiedenen Schriftarten anzusehen, die im Spiel verwendet werden, mit dem Ziel, sie zu vereinheitlichen und zu aktualisieren.
Das UI Tech Team arbeitete an der 'Canvas-Slicing'-Technologie, die anderen Teams mehr Freiheit geben wird, 2D-UI zu 3D-Räumen hinzuzufügen (über Building Blocks). Sie begannen auch, sich mit dem Refactoring des Farbsystems zu beschäftigen. Das Ziel ist es, den Entwicklern zu helfen, indem man es einfacher macht, die Farben über verschiedene UIs mit Hilfe eines Stylesheets anzupassen, anstatt die RGB-Werte in jedem Element anzupassen. Es wird auch erlauben, Vektorgradienten in der UI zu verwenden.
VFX
In enger Zusammenarbeit mit den Design- und Art-Teams unterstützte VFX Tech Art weiterhin Gaswolken, was sich jetzt hauptsächlich in der Bugfixing-Phase befindet. Außerdem haben sie den Prozess zur Erstellung von Textursequenzen weiter verbessert und einen schnelleren und strafferen Arbeitsablauf als den jetzigen (der mehrere verschiedene Softwarepakete beinhaltet) geschaffen. Dies ist wichtig, um den Künstlern die Möglichkeit zu geben, mit flüssigen Sims inkrementeller zu arbeiten (und sie als gebackene Textursequenzen zu exportieren), was letztendlich zu qualitativ hochwertigeren Explosionen, Rauch und Feuereffekten führen wird. WIR SEHEN UNS NÄCHSTEN MONAT...
This is a cross-post of the report that was recently sent out via the monthly Squadron 42 newsletter. We’re publishing this a second time as a Comm-Link to make it easier for the community to reference back to.
Attention Recruits,

What you are about to read is the latest information on the continuing development of Squadron 42 (SCI des: SQ42).

As a result of our latest intel reports, we’ve learned about work towards creating the Xi’an race, responsive music to dynamic situations, and further work on the Vanduul combat AI and animation.
The information contained in this communication is extremely sensitive and it is of paramount importance that it does not fall into the wrong hands. Purge all records after reading.

UEE Naval High Command AI (Combat)
Though a significant portion of the AI Team’s work is relevant for both SQ42 and the PU, some ongoing tasks are exclusive to the single-player campaign. This includes continued iterations on Vanduul melee behavior, which now automatically evaluates the suitability of specific special actions (dodging, jump attacks, melee attacks, etc.).

Regarding melee attacks, damage is now triggered by collision with the weapon’s blade to enable timing and assets to be tweaked and adjusted. The Vanduul lance has several states that can be utilized by the behavior, including extending it when preparing for melee attacks or keeping it collapsed when firing or aiming. These weapon state modifications are triggered by the behavior based on general context. Vanduul health was also further developed to reflect the different skeleton and activate the correct damage when it receives hits to different areas.



AI (Social)
For social AI, the recently devised bridge crew behavior now uses operator seat functionalities. The team are currently using this scenario to extend the seated actor state to support some usable functionalities. For example, they have extended the idle/fidget system on top of operator seats to allow the animators more freedom to bring life to seated scenarios.

SQ42-specific behaviors and functionalities were set up for vendor characters as well. Work also started on usables for the mess hall that will allow NPCs to collect and consume food systemically. When complete, NPCs will be able to collect cutlery and plates, serve themselves food, and then occupy seats to eat and drink.



Animation
Animation spent the month working on object and grenade throwing, knockdowns and knockbacks, and several new weapons. They further developed the weapons master, capital ship seat interaction, the bartender, and AI ship inspections. They also made great inroads into the NPC ammo retrieval mentioned last month, Vanduul combat, and female player faces and emotes. Interrupts were added to several chapters as part of ongoing scene work too.

Art (Characters)
The Character Team revisited a few key heads, cleaning up skin textures, refining hair, and are currently working with tech animation and cinematics to address facial animations. Some of these revisions may impact other departments, so all changes are modular and easy to roll back. This work will inform the process of reviewing other SQ42 characters and updates in the future.

Aliens-wise, the character artists finished modeling and texturing the Vanduul armor and passed it to the tech artists for rigging.

“So far work on the Vanduul looks fantastic and we are very excited about it.” -The Character Team

They also began coordinating with Tech Animation on the Xi’an race, ironing out major anatomy and animation issues.

Art (Weapons)
Weapon Art’s SQ42 focus throughout August was on the Vanduul lance, which consisted of looking at the weapon’s materials. A new concept for a medical device used in some of the larger ships was completed too.

Audio
August saw a refactor to the footsteps system to improve the audio on different surfaces, making it more responsive to player movement. They’re also improving the granularity and structure of the music system to improve transitions between music content based on what’s happening in a gameplay context.

Time was dedicated to the Lombard effect; a newly developed system detects louder volumes and large amounts of noise in-game and makes dialogue louder automatically so that players don’t need to do it manually. Audio also supported the VFX Team on triggering sounds when particles are generated on the GPU. Currently, if a particle is generated on the GPU, audio cannot efficiently play or sync. This ongoing work will remedy that.



Cinematics
August saw work continue on the character lighting rig used by scenes that don’t require a full manual pass, with more rules defined and edge cases identified. They also began investigating how the automatic depth-of-field focus system chooses which character is of interest during conversations. For filmic scenes (where the cinematic designer directs the camera), focus is selected and controlled manually. However, conversational scenes (where the player can freely roam around) can move out of focus if the player looks past them. Careful consideration is taken to ensure this doesn’t happen due to another character being classed as a ‘higher priority.’

Several scenes moved past the ‘implementation complete’ phase and into production. Once production is complete, scenes are fully playable and deemed almost shippable, though a final pass is required to tweak and finalize lighting, VFX, UI, and animation.

Attention was also given to sequences that play out if the player reaches a ‘game over’ condition due to behavior not befitting a UEE naval officer.

Engineering
In August, the Engineering Team added support for SDF-based local physics grids and SDF sets, interior grid markup for SDFs in the resource compiler, and g-force calculation for all actor entities. They also added a separate g-force collision calculation to the actor entity, new visualization modes to help development, and ‘inspect’ and ‘modify’ properties of static and rigid entities. The option to export bit-voxel geometry via the mesh setup and save it inside CGF was added too.

Optimization-wise, they worked on multi-threaded RC bit-voxel baking, which saves a few hundred bytes on every CPhysicalEntity instance and improves cache locality by reordering members. They also saved four bytes per physical-placeholder instance, disabled debug validation in the final release, moved large geometry into a dedicated bucket during grid population, improved bit-voxel tree-box calculation by using blocks instead of individual voxels, and optimized tree traversals in grid checks

The Systems Team added an API to the crash handler that allows the dumping of cigprofile data. This will help them analyze what the system was doing shortly before running into a deadlock and watch dog time out and log memory usage at the time of the crash.

Deep analysis was done to resolve the disparity between tracked and system-reported memory use. Several improvements were made on both Windows and Linux to correctly track data moving forward, including low level allocator reserved pages and third-party allocations. They continued looking into the SIMD and memory layout code for zone partitions, implemented faster execution for scoped FPE enable and disable by eliminating linear search through all registered threads, and fixed several issues with ISPC integration. They also reduced the memory use of P4K system and changed the MemoryAddressRange to use CIG API instead of native OS API for memory tracking.

Work on the Gen12 renderer continued, with the team adding support for instancing and a ‘keep alive’ list so that GPUDevice objects are kept active until the end of a frame. Several refactors and optimizations were made too.

Cleanup in the shader system and renderer for thread safety continued, as did G12 brush rendering. They also started to look into DX11.1 API support (Windows 8.1 and up) for binding CBs using offsets for intermediate performance improvements until Vulkan ships. They also added support for custom texture views when using pass resources.

Volumetric fog to PassResource was ported to prevent the shader parser from stripping global symbols. Some severe Alpha 3.10 GPU memory leaks were fixed too.

For planet atmosphere unified raymarching, the team established a general atmosphere context to avoid accessing resources globally. This make it easier and safer to reuse shared code. All related shader code was refactored too. For temporal reprojection, they implemented options for: neighborhood clipping, refining color bbox using neighborhood variance, compression (based on scene luminance), and color space conversion of color data for tighter bbox to reduce errors introduce by clipping and clamping. The depth dilation code was futher developed too.

R&D into volumetric clouds continued and detailed plans for experiments and next steps were drafted. The initial set up for the volumetric cloud render environment was completed, code was restructured to allow it to be shared between planet atmosphere and volumetric cloud shaders, and the initial pass and injection of cloud raymarch results into the unified atmosphere raymarcher was implemented. The team made performance improvements to the terrain displacement mapping and optimized the shader parser to improve turnaround times when editing shader code.

Finally, Engineering implemented fast bicubic b-spline and Catmull Rom spline interpolation variants for two-to-four channel texture data, further bi-cubic spline evaluation optimizations, made a planet terrain shadow pass, and fixed time precision issue in cloud animation.

Gameplay Story
Gameplay Story continued to work thorough the key introduction of a ship early in the game, and two days of mo-cap was completed in the Derby studio.

“It was a little more challenging to work in a COVID-safe environment, but it was great to get back into the studio after such a long hiatus.” -The Gameplay Story Team

This has enabled the team to complete some long-standing tasks that could not be addressed through hand-keying alone.

Graphics
The Graphics Team predominantly focused on the Gen12 renderer last month, with time dedicated spcifically to the conversion process so that the old renderer code can be deprecated as quickly as possible. Various systems are currently being converted, including gas cloud rendering, shadow masking, and run-time environment probes. Improvements were also made to the rendering API to allow simpler and more robust client code that’s less prone to human error. Work on the Vulkan backend made good progress too. The shaders were cleaned up to remove all unnecessary reliance on CPU uploaded data; modern GPU performance means it’s more important to save the CPU work in the renderer and driver than a few tiny instructions on the GPU.

Work on the organic shader continued too, bringing tighter integration with the planets to enable the artists to use assets in a variety of biomes and have them automatically integrate into their surroundings.



Level Design
The Social Design Team continued to work on scenes, usables, and NPC behaviors. They moved ten scenes to the ‘gold standard’ level, where everything plays out as expected in the final game. These scenes vary in complexity to give the team an accurate representation of how long it will take to complete their tasks for the rest of the game.

The Level Design Team continued to polish the ground-based levels while maintaining a strong focus on AI behaviors and multiple traversal routes.

The development of important dogfight locations continued. This involved working closely with the Flight AI and Art teams for support on use cases and space-scaping respectively.

Narrative
Throughout August, the Narrative Team continued with the review sessions detailed last month. As more locations progress in development, the team generated additional environmental storytelling documents to give intrepid players more insight into the story, history, and character of the environments.

As part of these playthroughs, they started to call out potential moments that could benefit from additional content, such as filling in potential lulls or calling out gameplay mechanics. After scripting, the hope is to record placeholder versions of the audio to block into the game and see how it plays. This approach will allow them to field-test new lines in situ and iterate on them long before official capture. They also worked alongside the Audio Team to develop the Vanduul language, which involved a deeper dive into the alien race’s culture.



QA
QA continued to support Cinematics with recordings of each level to ensure scenes are working as intended and are of the intended quality. They also created test levels for different effects to enable them to be tested more quickly and efficiently.

User Interface (UI)
Most visual teams have embedded UI artists, all of who have been working on a variety of upcoming features. For the Actor Feature Team, the artists polished the Personal Inner Though system and external inventory, both of which will be used in the PU and SQ42. They also began looking at the various fonts used throughout the game with the goal of unifying and updating them.

The UI Tech Team worked on ‘canvas-slicing’ tech, which will give other teams more freedom to add 2D UI to 3D spaces (via Building Blocks). They also began looking into refactoring the color system. The aim is to aid developers by making it easier to adjust colors across various UIs using a stylesheet rather than adjusting RGB values in each element. It will also allow vector gradients to be used in UI.

VFX
Working closely with the Design and Art teams, VFX Tech Art continued to support gas clouds, which is predominately now in the bug-fixing phase. They also continued to improve the texture sequence creation process, creating a faster, more streamlined workflow than the current one (which involves several different software packages). This is important to allow the artists to be more incremental with fluid sims (and exporting them as baked texture sequences), which will ultimately lead to higher-quality explosions, smokes, and fire effects. WE’LL SEE YOU NEXT MONTH…

Links

No links available.

Images

11
image/png
source.png
Details
Last Modified
3 years ago
Size
4.67 MB
image/png
source.png
Details
Last Modified
2 years ago
Size
3.65 MB
image/png
source.png
Details
Last Modified
2 years ago
Size
2.88 MB
image/png
source.png
Details
Last Modified
2 years ago
Size
3.37 MB
image/png
source.png
Details
Last Modified
2 years ago
Size
3.07 MB
image/png
source.png
Details
Last Modified
2 years ago
Size
4.54 MB
image/jpeg
source.jpg
Details
Last Modified
2 years ago
Size
571.04 KB
image/jpeg
source.jpg
Details
Last Modified
1 year ago
Size
1.13 MB
image/jpeg
source.jpg
Details
Last Modified
1 year ago
Size
1.69 MB
image/jpeg
source.jpg
Details
Last Modified
1 year ago
Size
1.99 MB
image/png
source.png
Details
Last Modified
10 months ago
Size
5.29 MB

Metadata

CIG ID
17759
Channel
Undefined
Category
Undefined
Series
Monthly Reports
Comments
12
Published
5 years ago (2020-09-09T00:00:00+00:00)