We kick off as usual with AI Combat, whose main focus was realistic firing and Vanduul combat behaviors. For AI firing, the ultimate aim is for NPC characters to appear real, with players understanding how they manage their ammunition.
To this end, they began using the “item provider approach” to create usables around ammo boxes. This will enable NPCs to find elements in the world that can provide them with magazines or other types of ammunition. They will also be able to run tactics that involve moving closer to sources of ammunition as they need to. The team also want to properly trigger reloads at the correct time in different conditions. For example, while advancing, NPCs will be allowed to shoot and automatically reload. However, the internal components will also notify the necessary behaviors when magazines are expended so that proper subactivities can be executed to handle the situation properly.
Regarding the Vanduul, their behavior is progressing, including iterations on unique actions and navigation traversal, such as special jumps that allow them to climb over large objects. The team are also refactoring the navigation link system to support some of the new flows in the usable code. This means they can rely on the same internal caching to understand animation offsets and the available options for different links.
The Social AI Team wrapped up the first iteration of the bartender. Alongside cleaning up animations and behaviors, they tweaked different portions of the overall system. For example, they fixed issues with moving between multiple usables using the shortest path between enter/exit locations.
They’re currently enabling patrons to order and consume various drinks and use the booths and different seats around the bar. Work on the bartender and wider vendor behaviors have helped the team bring more stability to slotting and routing functionalities, as these scenarios heavily stress the usable system on every functionality it offers.
For patrol tech, the team introduced an improved debug draw functionality to allow designers to investigate behaviors in-launcher or in-editor when paths are placed inside object containers. They also fixed several animation issues, including one causing ‘idle’ and ‘idle2move’ animations to be pushed between exit animations and locomotion states due to the wrong evaluation of the actor speed.
The refactored Tactical Point System (TPS) and new Tactical Target System (TTS) are now in the common development branch and on track for release in Alpha 3.10. During the upcoming sprints, the team will start replacing the legacy nodes for target selection with the new TTS system to give them finer control over NPC target choices, whether they’re on-foot or airborne.
Last month, the Animation Team assisted in the development of body dragging, throwing, and knockdowns. They also animated weapon reloads and malfunctions for spec-ops NPCs, completed Vanduul look-dev and locomotion, and animated actions to enable AI to undertake generic inspections, move crates, and complete hangar actions. Work continued on capital ship operator seats, bar patrons, bartender animations, and holo-globe actions too.
Foundational improvements were made to the mo-cap process, such as development of the motion-builder skeleton and the new Take Selection tool.
The Gameplay Story Team continued to develop narrative scenes and abandons.
The Audio Team continued supporting campaign locations with ambiance setup and music creation, as well as supporting various features for both SQ42 and the PU.
The Cinematics Team routinely work on various scenes from across the whole campaign, though May’s focus was on chapter 1. They started the month completing blockouts for the game’s opening, including gameplay, camera work, and animation for a large-scale turret battle and the introduction of a key character on the Javelin.
They also made updates to several scenes from chapter 2, experimented with single-camera shots for chapter 4, blocked out chapter 5, and set up the cameras for chapter 13.
Cinematic Design finished the initial interrupt setup for all chapter 4’s scenes and are currently awaiting Level Design’s implementation. Once complete, the animators can begin pose matching. Support was also provided for wider level design work.
Engineering worked on several tasks that affect both Squadron 42 and the Persistent Universe, including fixing issues with deep hierarchies, zone changes, and area-defining objects. For the entity component update scheduler, they submitted the first change that will add support for optional view ratios to the component aggregate streaming bounds update policy.
Physics-wise, optimizations to the inverse trigonometric function in C++ and HLSL were made and the physics profiler was modified to use thread IDs instead of ‘MAX_PHYS_THREADS’ to fight contention from external threads.
The team fixed performance regression in game-dev and continued to make improvements to body-dragging. They started looking into deformation and how to decouple the renderer and sim-mesh for physical damage and iterated on the damage TDD. They added a new physics runtime profiler in game-dev, enabled tri-mesh splitting, and optimized ‘remove isolated vertices’ in RC, and removed timestep adjustment in physics.
Engineering submitted the first version of Gen12 brush rendering, continued work on the render graph to schedule passes and bound resources, and unified handling and control over texture anisotropy. Shader items were moved to the resource container too. Shader parsing bug fixes were made and the vertex format reflection and setup were simplified.
They also fixed a jitter offset computation error with unified raymarching so that it works in harmony with the guided filter denoiser, and added transmittance-weighted depth-computation, which controls the width of the denoise kernel tin guided filtering and raymarching up-sampling results.
Specifically for SQ42, the UK Engineering Team started work on a new UI display item designed to consolidate the functionality required for displays into a single entity. When complete, it’ll manage multiple outputs and whether the display has power, is damaged, and emits light.
Support for cinematic requirements continued, with the team working on the weapon-firing track to give the designers fine control over when and how weapons fire. This includes everything from small arms to capital-ship turrets.
The Actor Team continued to develop body dragging, improving the visual sync between the player and the dragged body. They also continued work on force reactions, getting on-the-spot knockdowns implemented. Motion matching R&D is currently underway, which involves dynamic blendspaces and improvements to the stride adjustment via motion matching.
May saw the Gameplay Story Team begin work on previously untouched scenes from chapters 5 and 13.
“This means we have now implemented over 200 scenes, which is quite a milestone. Many of these scenes will still require additional work and support, but the majority of the animation work is now done, which is great!” – The Gameplay Story Team
They also continued to support the design teams with polish work on chapter 4 scenes and new abandons for chapter 8, including a complicated box-carrying scene.
The Graphics Team focused on performance in May, with several major issues resolved and several more in the process of being completed. Most performance fixes related to excess CPU use on specific frames that resulted in a “spikey” and inconsistent framerate. One important performance change was to adjust the texture resolutions on machines without enough video memory to run the game at full quality, especially at higher resolutions. Previously, more memory than would fit on the GPU would be allocated, which would produce serious performance issues due to memory paging.
The work on the Gen12 renderer continues, as do improvements to the automated testing framework and organic shader mentioned last month. The render-to-texture system was also integrated into the texture streaming system.
“This allows us to treat dynamically-created textures like any other texture in the game, such that we can calculate the required resolution for the current camera position, stream/create their content on demand, and cache previously created textures when we have spare memory to avoid redundant rendering. This feature is fundamental to the Canvas Manager, which is a feature that will be used by the art and game teams to create dynamic texture content such as signs, name badges, ship names, serial numbers, etc.” – The Graphics Team
The Social Design Team further developed usables and NPC behaviors alongside ongoing scene work. These systems were previously assigned to separate feature teams while the pipelines and technology were being developed.
Level Design continued to work alongside FPS AI to integrate more of the new behaviors that recently came online. They’re currently working closely with Art to build out some of the optional routes through levels.
The Space/Dogfight Team worked on the non-combat investigative behaviors prevalent across many of the early chapters. The “space scaping” of various patrol locations and points of interest continued too.
Last month, Narrative continued to support Design by providing notes and feedback during playthrough sessions. They also undertook dedicated playthroughs to identify where new dialogue lines could provide clearer guidance and explanation. This month, scripts will be created and the lines will be recorded using placeholder actors to get them in-game as soon as possible. By minimizing the turnaround time, future pickup sessions with actors will be much more efficient. Narrative provided set-dressing documents for a handful of updated locations to provide environmental storytelling and backstory for players to discover too.
The Props Team created an asset set for a scene with a frozen ship, which includes a new frost material and bespoke storytelling props.
QA were tasked with creating recorded client scene captures of individual chapters, as well as investigating issues hindering the Cinematic Team’s workflow. They also expanded their understanding of tools, such as the Subsumption Visualizer, to better debug the issues encountered. Alongside work on cinematics, focus was on the upkeep of testmaps to better help the development teams access features quickly and troubleshoot issues faster.
Tech Animation revisited existing assets to support recent code changes, retouching thousands of assets to ensure their quality and suitability. Specifically for SQ42, Tech Animation worked on the Vanduul warrior, as recent animation work highlighted the need to refine character deformation to enable more extreme posing.
User Interface (UI)
The UI Tech Team spent the month working on a new system to allow them to easily add 3D objects to screens, such as icons for the player visor and inventory. The concept artists finalized the look of the lens and scanning UI and are close to having final concepts for the style of the Gladius HUD – one of the key UIs in SQ42.
The team dedicated much of last month’s SQ42 work to finalizing concept art for a particularly complex scene early on in the game that involves a large amount of VFX work.
“As well as providing good visibility to all other departments on what we hope to achieve, having the concepts well laid out and detailed makes it a lot easier for the artists to actualize the effects” – The VFX Team
The Comms Array interior effects were completed, and a few older levels were reworked to bring them in line with the current design documents. Prototyping of the Vanduul kingship weapons made great progress too.