Star Citizen Monthly Report: July 2022
PU Monthly Report
July 2022
Welcome to July’s PU Monthly Report! With Alpha 3.17.2 making it to the live servers at the end of July, most teams shifted focus to tasks for the next patch release and beyond.
So, this month, you’ll see progress on various dependencies for persistent streaming, Pyro, the economy, and more. Read on for all the details!
AI (Content)
Last month, AI Content dedicated time to bug-fixing existing features. They identified the top 20 usables that the AI interact with and set out to fix as many issues as possible in two weeks. The issues were triaged and arranged into three categories:
Bugs that the AI designers could solve
Bugs that AI animators could solve
Code issues not solvable by AI Content
By the end, approximately 50 issues had been solved before the team returned to feature work.
July’s feature work included supporting the weapons vendor setup by creating weapon pickup and place animations, progressing with the locomotion polish mentioned last month, and retargeting overlay animations to the female skeleton.
The AI designers continued implementing the dynamic conversations feature, expanding it to the eat-and-drink behavior. Now, NPCs can have conversations between bites or drinks.
“We are pleased with the result, as it makes the AI feel less individual and more connected with other NPCs.” - AI Content Team
AI engineers will now also seek out colleagues at wall panels and work zones (e.g. broken pipes) to start conversations. They’re currently working on implementing chatter for AI in bunk beds and arcade machines too.
AI (Features)
For human combat, AI Features continued to work on tactic selection, including implementing a more data-driven approach to setting up the scoring factors in Data-Forge. This will allow the designers to quickly tweak values to produce the best possible range of combat behaviors for the situation, including with multiple combatants with different setups and ranges. This solution extends the ‘function selection’ in Subsumption to allow the game code to register a custom probability calculator, which will provide benefits in general, not just for combat behaviors.
They also began aligning the existing perception systems to a new design where the perception meter rises depending on different stimuli (hearing footsteps or gunfire, seeing a target, etc.) and falls over time. Once different threshold levels on the meter are hit, they trigger different alertness levels that determine specific reaction animations and behaviors. For example, at the lowest level, the AI will react by simply turning their head toward the stimulus. At the middle level, they will investigate the stimulus and, at the highest, they will enter combat. Stimuli can also impact the meter in different ways based on the conditions of the target, including whether they’re crouched or standing and the location’s lighting.
Work also started on the investigation behavior, with the devs implementing a system to allow NPCs to determine potential enemy hiding spots, check them, and keep track of which ones they’ve seen. The next stage is for NPCs to share information so they can cover a level together.
They’re also working to improve the consistency of cover selection using the automatic cover generation system. They’re also planning to improve the quality of cover and provide more information to the AI so that less decision making has to be made at runtime.
They also blocked out animations for human-AI mantling and vaulting to give NPCs more locomotion options when moving around the environment. Clean-up and timing tasks were also completed for the spec-ops animation sets.
AI (Tech)
During July, AI Tech focused on extending the functionalities required to traverse navigation islands using special actions. This included implementing new adapters for navigation links to include mantling, jumping down, and vaulting.
“The basic idea is that, using all the existing markup, we want to allow NPCs to perform similar actions to the player in the environment. For example, we adjusted the ledge objects to include specifications that evaluate the navmesh and link multiple islands correctly.” - AI Tech Team
They also continued R&D on seamless transitions into usables. This time, they implemented a cleaner and more reliable system for sharp-turn animations, giving more natural movement to NPCs following paths around corners. This allows helps NPCs feel ‘heavier’ and show weight balancing when moving over sharp corners.
Progress was also made on the locomotion refactor. Last month, the team began improving how AI actors process movement, which will allow them to decouple movement requests from what processes it. This is an important change to better support multiple path-followers used in different contexts. For example, actors, creatures, or NPCs driving a vehicle or pushing a trolley. They’re currently preparing to integrate into the Squadron 42 branch and verify that everything works as expected.
For the Subsumption editor within the sandbox tool, AI Tech implemented new functionality and stabilized the tool to finally open up the usage to all the designers.
A better AI-debug UI using imGUI is currently being implemented to allow the devs to select and inspect NPC behaviors. The tool can split the NPCs present in each zone, select multiple NPCs, and inspect their properties.
Progress was also made on ship reinforcements for Alpha 3.17.2. The team made the feature more robust by adding better monitoring of the disembarking process from the pilot’s perspective. They also added an abort phase for the dropship in case the drop location is occupied, and the pilot can now monitor the presence of a player inside the cargo area.
They also fixed several bugs relating to slow reaction time and desyncs/teleports. These issues are mostly caused by a low server framerate but the devs optimized the code and implemented tweaks to allow the code to better handle some of those situations.
AI (Vehicles)
In July, the AI Vehicle Team finished enabling AI to use different ship modes; AI is now fully integrated with the ability to swap modes when required by the task they want to perform. The designers will also soon be able to give AI access to higher SCM speeds when designing behaviors.
Bug fixes were also made throughout the month, including an issue with the ‘FlyTo’ not computing an efficient path and dive attacks not ignoring driverless space ships.
Animation
Last month, the Facial Animation team further developed female vendors, outlaws, rescue and transport, and continued burning down emotes.
The Motion Capture team is currently building their new studio, which should be live by mid-August.
Art (Characters)
The Character Art team continued work on the frontier and high-fashion outfits for upcoming releases. They also progressed with marketing items for both the Subscriber program and upcoming holiday events.
Art (Ships)
Throughout July, the UK Ship Art team continued the greybox pass on the Argo SRV, finishing the exterior work before moving on to the interior.
Development of an unannounced ship continued, which is currently moving from greybox to final art. July saw the greybox pass complete on the cockpit, dashboard, habitation, and cargo hold. The team also progressed the exterior hull to final art.
The final art pass on an unannounced ground vehicle was finalized. The artists then moved on to a pass of the MISC Hull C.
The whitebox pass began on an unannounced variant of an existing ship, with modifications to the exterior nearing completion.
A resource-management pass on the Aegis Hammerhead also began. This includes adding relays and modifications to the existing component bays to make them all functional, with some tweaks to their placement for balance.
In the US, Art transitioned to their final pass on the Drake Corsair while supporting System Design on the greybox, taking the main, retro, and MAV thrusters to the final stage. The port wings were also detailed and are almost ready to hand off. On the exterior, the nose was further detailed and modifications were made to the decal texture to standardize the official Drake font. The team also took the interior cargo hold through to final art, with an initial lighting pass being completed throughout the interior.
Community
Expanding on last month’s content, the team released two more Alpha 3.17.2 Patch Watch posts. Patch Watch #2 dealt with the quality-of-life improvements coming with Siege of Orison, while Patch Watch #3 detailed the new racing track, the Snake Pit.
The team also supported the Foundation Festival, a month-long celebration of the Star Citizen community that featured a Free Fly and the Tales Of Camaraderie contest.
Alongside the Eve Online community team, they held the Battle of the Bricks stream, raising money for the Extra Life charity.
“We hope that everyone watching had a great time as we celebrated our shared passion for space games. And don't forget that Donations for Extra Life are still open until late December!” - Community Team
The team also progressed with the new Community Hub and are currently preparing for the launch of Ship Showdown in August.
Engine
In July, the Physics team made several optimizations to the code. Ray/box overlap checks were implemented in ISPC and are now also used in ray world intersections (RWI) to quickly skip entity parts if there's no overlap of a ray and an entity's local bounds. Further optimizations include using a box pruner to process vehicle wheels and all of their possible colliders (and their parts) more quickly, as well as SSE and AVX2 optimizations in the code that searches parts of a physical entity. Additionally, support for successive pulley attachments to rope entities was added, and the spatial configuration of interior grid types was changed to use more layers of internal nodes that are smaller in dimension. This, for instance, helped in Port Olisar, where a lot of time was spent maintaining thunk lists, which is completely removed by this change.
On the renderer, the Gen12 transition continued. For example, Gen12 Scaleform (UI) rendering was enabled by default, support for MIP map generation passes was added, and material overrides for render nodes are now supported, including for multi materials. The depth pre-pass submission is now skipped if motion vectors are rendered. Thread synchronization code in pipeline state object (PSO) cache refreshing as well as in the shader system was improved, and unnecessary stencil tests for the shadow map stage were removed. The render loading thread was replaced by a video rendering thread, which is needed for the sole purpose of rendering UI while the game is loading. Lastly, a bug that was crashing the video driver was fixed and the entire render code was changed to successfully compile via Include-What-You-Use (IWYU). Various issues in the form of buffer overruns in low-level VFX render code were also fixed.
The Gen12 ports of atmospheric and volumetric cloud rendering continued as look-up table generation for atmosphere, as well as volumetric cloud preprocessing steps, were successfully moved over to execute through the new APIs. The rendering of legacy (spherical) clouds was moved to Gen12 too and can now also render as part of the deferred pipeline’s forward stage (which will be enabled soon). This recent progress also resulted in various suggestions (some of which have already been implemented) to refine the Gen12 APIs for special cases so they can be ported straightforwardly and integrate better. Lastly, work on porting the remaining passes for atmospheric and volumetric clouds will commence in August.
On the core engine, entity lifetime code was adjusted for the new needs of server meshing with the goal of it being easier to use as well as creating a more refined feeling of persistence. A time-sliced entity density manager was implemented as a part of the reworked entity lifetime for server meshing. The background job manager was changed to better cope with very long-running preempted background jobs to reduce runtime stalls. For example, stalls during shader compilation. Furthermore, component lifetime now uses a cheaper custom weak pointer approach that the current std::shared_ptr cannot provide. Moreover, StarHash bind culling of sub-zones was significantly optimized. The ability to set hardware (data) breakpoints from code was fixed and, lastly, Linux thread priority changed to use real-time FIFO scheduling.
The remainder of the time was spent supporting Alpha 3.18 and bug fixing 3.17.x; especially analyzing the impact of 100-player servers.
Features (Arena Commander)
Last month, the Arena Commander Feature team fixed issues in both Arena Commander (AC) and Star Marine (SM), including some with map- and game-mode selection, scoreboards, level geometry, respawning, and AI spawning.
“Our community has been very helpful in identifying such issues as they appear, which we greatly appreciate!” - Arena Commander Feature Team
Additionally, ongoing improvements were made to how quickly and easily players get into sessions. Investigation into getting PU-based locations as environments in AC and SM also continued.
Some changes to scanning/ping/radar design were implemented for both vehicles and FPS gameplay to allow players to find and identify contacts with greater ease.
Finally, bugs were fixed to give the community as stable an experience as possible.
Features (Characters & Weapons)
With the new actor movement synchronization enabled for the PTU, July saw the team focus on fixing issues, specifically with extrapolation (when a local machine tries to predict what another player will be doing). Extrapolation is necessary when network latency prevents data from arriving regularly. Incorrect prediction results in the player appearing to teleport, or rubber band, when up-to-date data arrives from the server. The team will continue to refine the algorithm over the coming releases and are specifically looking at improving the handling of look-input synchronization for the next patch.
In July, the team also started laying the groundwork for FPS devices. There are already some examples of these in the game, such as grenades and mining gadgets. But, as the list of devices expands, the team wants to take a more systemic approach to ensure the setup and flow are consistent across the board.
Earlier in the year, the team reported work on ‘Code Driven IK.’ This system has now been combined with the dynamic hand placement feature mentioned last month. Together, this ensures that animators have control over when to use hand placement or not, as well as tweaking some of its settings directly in individual assets. This has allowed the Maya-side interface of this new IK-system to mature further, with several quality-of-life improvements.
Features (Gameplay)
The Features team continued to develop life-support and engineering gameplay. This included work on the MISC Hull A, as it’s the first ship with interactable relay points that control resource distribution. The power plant and fuel tanks now power the system using the new tech, and UI work was extended to allow players to control the temperature per room.
Hull scraping is progressing well, with the team focusing on creating the commodity boxes and repair ammunition at the dedicated filler station in the Reclaimer and Vulture.
Graphics, VFX Programming & Planet Tech
July saw the implementation of a dynamic bitset data structure, which replaces the TJointBitSet, as well as the investigation and testing of offline damage maps with persistence. The team also worked on separating CPU & GPU implementation, ensuring they result in the same damage map.
The team finished porting Gas Clouds to Gen12 and fixed several issues, including a GPU crash related to this feature. Work began on Vulkan scaleform functionality and particle mesh rendering in Gen12. Progress was also made on porting refraction and light beams to Gen12.
Canvas decal texture streaming was sped up and image testing now waits for it to complete. Support for silhouettes on editor entity objects was added alongside improvements to render-item sorting to make it consistent at different runs.
Hair color and specular improvements were finished for the hair shader. There were also updates to tessellation and displacement on the organic shader. For jump points, the team focused on branching tunnels, which included fixing situations where the connecting segments self-intersect.
The Planet Tech team made improvements to the world and biome builder by moving mesh building to background jobs, substantially reducing stutters in-editor. There were also fixes for mismatching physics meshes on servers as well as a refactor of procedural entities, which improved planet loading time. Four-point Bezier curves were also added to river generation alongside general improvements to the river placement tool. Collision detection was added to RaStar to prevent modules from being placed when they overlap with geometry too.
Lighting
Last month, Lighting’s primary task was making headway into their backlog of tech and dev debt. This is a list of tasks or bugs that have built up that they either didn’t have time to work on or weren’t high enough priority to tackle immediately. For the most part, this work entailed minor polish notes for Orison and fixing minor bugs across other locations.
They then moved on to supporting the new sand cave location archetype. Compared to rocky caves, sand caves feature more natural dappled light filtering in from the surface above to create a very different mood and atmosphere.
They also completed a lighting pass on the upcoming Origin 600i and Crusader Mercury derelict crash sites, integrating the nearby settlements into the landscape and stripping out the lighting from the ships.
Lastly, they worked on a full lighting pass of the upcoming racing circuit being added to the Orison convention hall.
Narrative
Over the past month, Narrative tackled tasks ranging from mission content to lore. On the mission front, the team generated text for the latest Reclaimer missions as well as a variety of new delivery missions while working with the Design teams in Montreal and the UK. July continued several other ongoing conversations into the development of new mission types, one of which presents a unique fusion of narrative and design. So, the team began figuring out how much content would be necessary to incorporate it into the game and whether it will be scalable to provide enough variety to keep it interesting.
The team met with the Environment and Design teams to talk over Pyro’s shops and overall economy to help differentiate the player experience from Stanton. To help support this, the team continued to work through the mo-cap data for the frontier vendors captured at the end of June to get it into the pipeline.
Two new narrative designers recently joined the team, who have initially been tasked to other teams to learn the setup and software. These roles will ultimately provide narrative support in the technical areas of design setup and voice packs to make the characters and locations feel closer to the intended vision and tone.
Meetings were also held with the new In-Game Branding team in Montreal to review the various in-game corporations and manufacturers to standardize their looks, themes, and colors. Since so much of our marketing exists as in-fiction content, this will establish a consistent tone and voice for the companies whether they’re appearing in-game or out.
They also published another edition of Shubin’s employee newsletters, Mining Rocks, a Portfolio on Nine Tails, an original Untold Tales about a shocking discovery in Sol, and another batch of Galactapedia entries.
Tech Animation
The Tech Animation team continued to invest time into the tools codebase. Years of development and quick fixes are being triaged, consolidated, and revamped to fully conform to their coding standards and modularize the codebase to be more accessible to the technical animators. This will expedite the creation of tools and the pipeline that rely on core processes.
Alongside this, they’re currently developing and integrating several new tool chains: CGA and SKIN loading in Maya, RBF solver development, and SSD & Alembic animation pipeline support. Their future development roadmap is also in planning.
Online services (Montreal)
The Online Services team worked on performance improvements to the entity graph service in July, unlocking substantial performance gains (in some cases double-digit percentages).
Bug fixing and character reset testing were done for the new login flow. They then moved on to phase two of the refactor, Ledger and Wallet, which will change how currency is handled in-game.
The team also completed the new Chrono service, which offers a programmatic API for distributed timers and alarms. For example, in the expiry of rental entitlements.
Lastly, the team completed the first refactor of the new inventory management system, which is needed for persistent streaming. This is currently in internal testing with the Actor Feature team and affects almost all inventories in the game (though is invisible to the player).
Live Tools (Montreal)
The Live Tools team implemented a new way to log into Hex 3.0’s Network Operation Center (NOC) and manage the different roles and permissions. Because usability of the tool is crucial, a survey is currently open among its frequent users. The team has analyzed the feedback collected so far and is working on different solutions to improve the NOC’s design and usability.
Turbulent (Web Platform)
Last month, Turbulent’s Web Platform team worked on cleanup of the MISC and Crusader skins in the CMS tool, making integration cleaner. They then designed a wire-framing page to better communicate patch status.
In the Pledge Store, the team worked on creating clearer disclaimers around Warbond SKUs, concept standalone ships, and buy-back rules relating to discounts.
The Community team continued to work on new features for the Community Hub, adding moderation and an honor system in July.
Finally for Turbulent, the Backend Infrastructure team upgraded PHP, making the backend more efficient and organized in adhering to code standards.
UI
Last month, the UI team continued development of the new Starmap, improving labeling and concepting how to display space clouds in a way that looks great and performs well.
Bugs were also fixed for the Siege of Orison update, and adjustments were made to the loadout systems in support of persistent streaming.
VFX
July saw the VFX team collaborating with the Art and Lighting teams on modular sand cave locations. With these modules being used by Design to lay out the cave interiors, the VFX artists needed to be creative in how they placed their effects to cut down on repetition.
Finally, VFX Concept kickstarted pre-production on the quantum travel experience and a general quantum-travel visual overhaul.
July 2022
Welcome to July’s PU Monthly Report! With Alpha 3.17.2 making it to the live servers at the end of July, most teams shifted focus to tasks for the next patch release and beyond.
So, this month, you’ll see progress on various dependencies for persistent streaming, Pyro, the economy, and more. Read on for all the details!
AI (Content)
Last month, AI Content dedicated time to bug-fixing existing features. They identified the top 20 usables that the AI interact with and set out to fix as many issues as possible in two weeks. The issues were triaged and arranged into three categories:
Bugs that the AI designers could solve
Bugs that AI animators could solve
Code issues not solvable by AI Content
By the end, approximately 50 issues had been solved before the team returned to feature work.
July’s feature work included supporting the weapons vendor setup by creating weapon pickup and place animations, progressing with the locomotion polish mentioned last month, and retargeting overlay animations to the female skeleton.
The AI designers continued implementing the dynamic conversations feature, expanding it to the eat-and-drink behavior. Now, NPCs can have conversations between bites or drinks.
“We are pleased with the result, as it makes the AI feel less individual and more connected with other NPCs.” - AI Content Team
AI engineers will now also seek out colleagues at wall panels and work zones (e.g. broken pipes) to start conversations. They’re currently working on implementing chatter for AI in bunk beds and arcade machines too.
AI (Features)
For human combat, AI Features continued to work on tactic selection, including implementing a more data-driven approach to setting up the scoring factors in Data-Forge. This will allow the designers to quickly tweak values to produce the best possible range of combat behaviors for the situation, including with multiple combatants with different setups and ranges. This solution extends the ‘function selection’ in Subsumption to allow the game code to register a custom probability calculator, which will provide benefits in general, not just for combat behaviors.
They also began aligning the existing perception systems to a new design where the perception meter rises depending on different stimuli (hearing footsteps or gunfire, seeing a target, etc.) and falls over time. Once different threshold levels on the meter are hit, they trigger different alertness levels that determine specific reaction animations and behaviors. For example, at the lowest level, the AI will react by simply turning their head toward the stimulus. At the middle level, they will investigate the stimulus and, at the highest, they will enter combat. Stimuli can also impact the meter in different ways based on the conditions of the target, including whether they’re crouched or standing and the location’s lighting.
Work also started on the investigation behavior, with the devs implementing a system to allow NPCs to determine potential enemy hiding spots, check them, and keep track of which ones they’ve seen. The next stage is for NPCs to share information so they can cover a level together.
They’re also working to improve the consistency of cover selection using the automatic cover generation system. They’re also planning to improve the quality of cover and provide more information to the AI so that less decision making has to be made at runtime.
They also blocked out animations for human-AI mantling and vaulting to give NPCs more locomotion options when moving around the environment. Clean-up and timing tasks were also completed for the spec-ops animation sets.
AI (Tech)
During July, AI Tech focused on extending the functionalities required to traverse navigation islands using special actions. This included implementing new adapters for navigation links to include mantling, jumping down, and vaulting.
“The basic idea is that, using all the existing markup, we want to allow NPCs to perform similar actions to the player in the environment. For example, we adjusted the ledge objects to include specifications that evaluate the navmesh and link multiple islands correctly.” - AI Tech Team
They also continued R&D on seamless transitions into usables. This time, they implemented a cleaner and more reliable system for sharp-turn animations, giving more natural movement to NPCs following paths around corners. This allows helps NPCs feel ‘heavier’ and show weight balancing when moving over sharp corners.
Progress was also made on the locomotion refactor. Last month, the team began improving how AI actors process movement, which will allow them to decouple movement requests from what processes it. This is an important change to better support multiple path-followers used in different contexts. For example, actors, creatures, or NPCs driving a vehicle or pushing a trolley. They’re currently preparing to integrate into the Squadron 42 branch and verify that everything works as expected.
For the Subsumption editor within the sandbox tool, AI Tech implemented new functionality and stabilized the tool to finally open up the usage to all the designers.
A better AI-debug UI using imGUI is currently being implemented to allow the devs to select and inspect NPC behaviors. The tool can split the NPCs present in each zone, select multiple NPCs, and inspect their properties.
Progress was also made on ship reinforcements for Alpha 3.17.2. The team made the feature more robust by adding better monitoring of the disembarking process from the pilot’s perspective. They also added an abort phase for the dropship in case the drop location is occupied, and the pilot can now monitor the presence of a player inside the cargo area.
They also fixed several bugs relating to slow reaction time and desyncs/teleports. These issues are mostly caused by a low server framerate but the devs optimized the code and implemented tweaks to allow the code to better handle some of those situations.
AI (Vehicles)
In July, the AI Vehicle Team finished enabling AI to use different ship modes; AI is now fully integrated with the ability to swap modes when required by the task they want to perform. The designers will also soon be able to give AI access to higher SCM speeds when designing behaviors.
Bug fixes were also made throughout the month, including an issue with the ‘FlyTo’ not computing an efficient path and dive attacks not ignoring driverless space ships.
Animation
Last month, the Facial Animation team further developed female vendors, outlaws, rescue and transport, and continued burning down emotes.
The Motion Capture team is currently building their new studio, which should be live by mid-August.
Art (Characters)
The Character Art team continued work on the frontier and high-fashion outfits for upcoming releases. They also progressed with marketing items for both the Subscriber program and upcoming holiday events.
Art (Ships)
Throughout July, the UK Ship Art team continued the greybox pass on the Argo SRV, finishing the exterior work before moving on to the interior.
Development of an unannounced ship continued, which is currently moving from greybox to final art. July saw the greybox pass complete on the cockpit, dashboard, habitation, and cargo hold. The team also progressed the exterior hull to final art.
The final art pass on an unannounced ground vehicle was finalized. The artists then moved on to a pass of the MISC Hull C.
The whitebox pass began on an unannounced variant of an existing ship, with modifications to the exterior nearing completion.
A resource-management pass on the Aegis Hammerhead also began. This includes adding relays and modifications to the existing component bays to make them all functional, with some tweaks to their placement for balance.
In the US, Art transitioned to their final pass on the Drake Corsair while supporting System Design on the greybox, taking the main, retro, and MAV thrusters to the final stage. The port wings were also detailed and are almost ready to hand off. On the exterior, the nose was further detailed and modifications were made to the decal texture to standardize the official Drake font. The team also took the interior cargo hold through to final art, with an initial lighting pass being completed throughout the interior.
Community
Expanding on last month’s content, the team released two more Alpha 3.17.2 Patch Watch posts. Patch Watch #2 dealt with the quality-of-life improvements coming with Siege of Orison, while Patch Watch #3 detailed the new racing track, the Snake Pit.
The team also supported the Foundation Festival, a month-long celebration of the Star Citizen community that featured a Free Fly and the Tales Of Camaraderie contest.
Alongside the Eve Online community team, they held the Battle of the Bricks stream, raising money for the Extra Life charity.
“We hope that everyone watching had a great time as we celebrated our shared passion for space games. And don't forget that Donations for Extra Life are still open until late December!” - Community Team
The team also progressed with the new Community Hub and are currently preparing for the launch of Ship Showdown in August.
Engine
In July, the Physics team made several optimizations to the code. Ray/box overlap checks were implemented in ISPC and are now also used in ray world intersections (RWI) to quickly skip entity parts if there's no overlap of a ray and an entity's local bounds. Further optimizations include using a box pruner to process vehicle wheels and all of their possible colliders (and their parts) more quickly, as well as SSE and AVX2 optimizations in the code that searches parts of a physical entity. Additionally, support for successive pulley attachments to rope entities was added, and the spatial configuration of interior grid types was changed to use more layers of internal nodes that are smaller in dimension. This, for instance, helped in Port Olisar, where a lot of time was spent maintaining thunk lists, which is completely removed by this change.
On the renderer, the Gen12 transition continued. For example, Gen12 Scaleform (UI) rendering was enabled by default, support for MIP map generation passes was added, and material overrides for render nodes are now supported, including for multi materials. The depth pre-pass submission is now skipped if motion vectors are rendered. Thread synchronization code in pipeline state object (PSO) cache refreshing as well as in the shader system was improved, and unnecessary stencil tests for the shadow map stage were removed. The render loading thread was replaced by a video rendering thread, which is needed for the sole purpose of rendering UI while the game is loading. Lastly, a bug that was crashing the video driver was fixed and the entire render code was changed to successfully compile via Include-What-You-Use (IWYU). Various issues in the form of buffer overruns in low-level VFX render code were also fixed.
The Gen12 ports of atmospheric and volumetric cloud rendering continued as look-up table generation for atmosphere, as well as volumetric cloud preprocessing steps, were successfully moved over to execute through the new APIs. The rendering of legacy (spherical) clouds was moved to Gen12 too and can now also render as part of the deferred pipeline’s forward stage (which will be enabled soon). This recent progress also resulted in various suggestions (some of which have already been implemented) to refine the Gen12 APIs for special cases so they can be ported straightforwardly and integrate better. Lastly, work on porting the remaining passes for atmospheric and volumetric clouds will commence in August.
On the core engine, entity lifetime code was adjusted for the new needs of server meshing with the goal of it being easier to use as well as creating a more refined feeling of persistence. A time-sliced entity density manager was implemented as a part of the reworked entity lifetime for server meshing. The background job manager was changed to better cope with very long-running preempted background jobs to reduce runtime stalls. For example, stalls during shader compilation. Furthermore, component lifetime now uses a cheaper custom weak pointer approach that the current std::shared_ptr cannot provide. Moreover, StarHash bind culling of sub-zones was significantly optimized. The ability to set hardware (data) breakpoints from code was fixed and, lastly, Linux thread priority changed to use real-time FIFO scheduling.
The remainder of the time was spent supporting Alpha 3.18 and bug fixing 3.17.x; especially analyzing the impact of 100-player servers.
Features (Arena Commander)
Last month, the Arena Commander Feature team fixed issues in both Arena Commander (AC) and Star Marine (SM), including some with map- and game-mode selection, scoreboards, level geometry, respawning, and AI spawning.
“Our community has been very helpful in identifying such issues as they appear, which we greatly appreciate!” - Arena Commander Feature Team
Additionally, ongoing improvements were made to how quickly and easily players get into sessions. Investigation into getting PU-based locations as environments in AC and SM also continued.
Some changes to scanning/ping/radar design were implemented for both vehicles and FPS gameplay to allow players to find and identify contacts with greater ease.
Finally, bugs were fixed to give the community as stable an experience as possible.
Features (Characters & Weapons)
With the new actor movement synchronization enabled for the PTU, July saw the team focus on fixing issues, specifically with extrapolation (when a local machine tries to predict what another player will be doing). Extrapolation is necessary when network latency prevents data from arriving regularly. Incorrect prediction results in the player appearing to teleport, or rubber band, when up-to-date data arrives from the server. The team will continue to refine the algorithm over the coming releases and are specifically looking at improving the handling of look-input synchronization for the next patch.
In July, the team also started laying the groundwork for FPS devices. There are already some examples of these in the game, such as grenades and mining gadgets. But, as the list of devices expands, the team wants to take a more systemic approach to ensure the setup and flow are consistent across the board.
Earlier in the year, the team reported work on ‘Code Driven IK.’ This system has now been combined with the dynamic hand placement feature mentioned last month. Together, this ensures that animators have control over when to use hand placement or not, as well as tweaking some of its settings directly in individual assets. This has allowed the Maya-side interface of this new IK-system to mature further, with several quality-of-life improvements.
Features (Gameplay)
The Features team continued to develop life-support and engineering gameplay. This included work on the MISC Hull A, as it’s the first ship with interactable relay points that control resource distribution. The power plant and fuel tanks now power the system using the new tech, and UI work was extended to allow players to control the temperature per room.
Hull scraping is progressing well, with the team focusing on creating the commodity boxes and repair ammunition at the dedicated filler station in the Reclaimer and Vulture.
Graphics, VFX Programming & Planet Tech
July saw the implementation of a dynamic bitset data structure, which replaces the TJointBitSet, as well as the investigation and testing of offline damage maps with persistence. The team also worked on separating CPU & GPU implementation, ensuring they result in the same damage map.
The team finished porting Gas Clouds to Gen12 and fixed several issues, including a GPU crash related to this feature. Work began on Vulkan scaleform functionality and particle mesh rendering in Gen12. Progress was also made on porting refraction and light beams to Gen12.
Canvas decal texture streaming was sped up and image testing now waits for it to complete. Support for silhouettes on editor entity objects was added alongside improvements to render-item sorting to make it consistent at different runs.
Hair color and specular improvements were finished for the hair shader. There were also updates to tessellation and displacement on the organic shader. For jump points, the team focused on branching tunnels, which included fixing situations where the connecting segments self-intersect.
The Planet Tech team made improvements to the world and biome builder by moving mesh building to background jobs, substantially reducing stutters in-editor. There were also fixes for mismatching physics meshes on servers as well as a refactor of procedural entities, which improved planet loading time. Four-point Bezier curves were also added to river generation alongside general improvements to the river placement tool. Collision detection was added to RaStar to prevent modules from being placed when they overlap with geometry too.
Lighting
Last month, Lighting’s primary task was making headway into their backlog of tech and dev debt. This is a list of tasks or bugs that have built up that they either didn’t have time to work on or weren’t high enough priority to tackle immediately. For the most part, this work entailed minor polish notes for Orison and fixing minor bugs across other locations.
They then moved on to supporting the new sand cave location archetype. Compared to rocky caves, sand caves feature more natural dappled light filtering in from the surface above to create a very different mood and atmosphere.
They also completed a lighting pass on the upcoming Origin 600i and Crusader Mercury derelict crash sites, integrating the nearby settlements into the landscape and stripping out the lighting from the ships.
Lastly, they worked on a full lighting pass of the upcoming racing circuit being added to the Orison convention hall.
Narrative
Over the past month, Narrative tackled tasks ranging from mission content to lore. On the mission front, the team generated text for the latest Reclaimer missions as well as a variety of new delivery missions while working with the Design teams in Montreal and the UK. July continued several other ongoing conversations into the development of new mission types, one of which presents a unique fusion of narrative and design. So, the team began figuring out how much content would be necessary to incorporate it into the game and whether it will be scalable to provide enough variety to keep it interesting.
The team met with the Environment and Design teams to talk over Pyro’s shops and overall economy to help differentiate the player experience from Stanton. To help support this, the team continued to work through the mo-cap data for the frontier vendors captured at the end of June to get it into the pipeline.
Two new narrative designers recently joined the team, who have initially been tasked to other teams to learn the setup and software. These roles will ultimately provide narrative support in the technical areas of design setup and voice packs to make the characters and locations feel closer to the intended vision and tone.
Meetings were also held with the new In-Game Branding team in Montreal to review the various in-game corporations and manufacturers to standardize their looks, themes, and colors. Since so much of our marketing exists as in-fiction content, this will establish a consistent tone and voice for the companies whether they’re appearing in-game or out.
They also published another edition of Shubin’s employee newsletters, Mining Rocks, a Portfolio on Nine Tails, an original Untold Tales about a shocking discovery in Sol, and another batch of Galactapedia entries.
Tech Animation
The Tech Animation team continued to invest time into the tools codebase. Years of development and quick fixes are being triaged, consolidated, and revamped to fully conform to their coding standards and modularize the codebase to be more accessible to the technical animators. This will expedite the creation of tools and the pipeline that rely on core processes.
Alongside this, they’re currently developing and integrating several new tool chains: CGA and SKIN loading in Maya, RBF solver development, and SSD & Alembic animation pipeline support. Their future development roadmap is also in planning.
Online services (Montreal)
The Online Services team worked on performance improvements to the entity graph service in July, unlocking substantial performance gains (in some cases double-digit percentages).
Bug fixing and character reset testing were done for the new login flow. They then moved on to phase two of the refactor, Ledger and Wallet, which will change how currency is handled in-game.
The team also completed the new Chrono service, which offers a programmatic API for distributed timers and alarms. For example, in the expiry of rental entitlements.
Lastly, the team completed the first refactor of the new inventory management system, which is needed for persistent streaming. This is currently in internal testing with the Actor Feature team and affects almost all inventories in the game (though is invisible to the player).
Live Tools (Montreal)
The Live Tools team implemented a new way to log into Hex 3.0’s Network Operation Center (NOC) and manage the different roles and permissions. Because usability of the tool is crucial, a survey is currently open among its frequent users. The team has analyzed the feedback collected so far and is working on different solutions to improve the NOC’s design and usability.
Turbulent (Web Platform)
Last month, Turbulent’s Web Platform team worked on cleanup of the MISC and Crusader skins in the CMS tool, making integration cleaner. They then designed a wire-framing page to better communicate patch status.
In the Pledge Store, the team worked on creating clearer disclaimers around Warbond SKUs, concept standalone ships, and buy-back rules relating to discounts.
The Community team continued to work on new features for the Community Hub, adding moderation and an honor system in July.
Finally for Turbulent, the Backend Infrastructure team upgraded PHP, making the backend more efficient and organized in adhering to code standards.
UI
Last month, the UI team continued development of the new Starmap, improving labeling and concepting how to display space clouds in a way that looks great and performs well.
Bugs were also fixed for the Siege of Orison update, and adjustments were made to the loadout systems in support of persistent streaming.
VFX
July saw the VFX team collaborating with the Art and Lighting teams on modular sand cave locations. With these modules being used by Design to lay out the cave interiors, the VFX artists needed to be creative in how they placed their effects to cut down on repetition.
Finally, VFX Concept kickstarted pre-production on the quantum travel experience and a general quantum-travel visual overhaul.
- Keine Links vorhanden
Name: STARCITIZEN_WHITE.png
Zuletzt geändert:
03.02.2021 06:54:29Größe:
0.07 MBComm-Links:
Name: battleofthebricks.png
Beschreibung: g-illustration
Zuletzt geändert:
28.04.2023 10:27:59Größe:
0.67 MBDuplikate
Comm-Links:
Name: battleofthebricks.webp
Beschreibung: g-illustration
Zuletzt geändert:
28.04.2023 10:27:59Größe:
0.16 MBComm-Links:
Name: sand-caves-lighting-pass.jpg
Beschreibung: g-illustration
Zuletzt geändert:
28.04.2023 10:27:59Größe:
3.67 MBDuplikate
Comm-Links:
Name: sand-caves-lighting-pass.webp
Beschreibung: g-illustration
Zuletzt geändert:
28.04.2023 10:27:59Größe:
1.02 MBComm-Links:
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 3 Wochen - 03.03.2024 03:16
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Monat - 03.02.2024 03:15
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 2 Monaten - 03.01.2024 03:16
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 3 Monaten - 03.12.2023 03:15
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 5 Monaten - 03.10.2023 03:51
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 6 Monaten - 03.09.2023 03:15
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 7 Monaten - 03.08.2023 03:15
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 8 Monaten - 03.07.2023 03:15
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 9 Monaten - 03.06.2023 03:39
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 10 Monaten - 03.05.2023 10:01
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 11 Monaten - 28.04.2023 10:24
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 11 Monaten - 01.04.2023 00:24
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 01.03.2023 00:24
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 18.12.2022 16:28
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 01.12.2022 00:55
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 01.11.2022 00:46
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 01.10.2022 00:55
- Comm-Link aktualisiert durch Star Citizen Wiki Api vor 1 Jahr - 01.09.2022 00:46
- Übersetzung Deutsch erstellt durch Star Citizen Wiki Api vor 1 Jahr - 04.08.2022 02:08
- Übersetzung Englisch erstellt durch Star Citizen Wiki Api vor 1 Jahr - 04.08.2022 02:08
Keine Textänderungen vorhanden
ID | 18811 |
---|---|
Veröffentlichung | 04.08.2022 |
Kategorie | Undefined |
Channel | Feedback |
Serie | None |
URL | /comm-link/transmission/18811-Star-Citizen-Monthly-Report-July-2022 |
Kommentare | 0 |