Glorious Alpha Two Testers!

Alpha Two testing is currently taking place five days each week. More information about Phase II and Phase III testing schedule can be found here

If you have Alpha Two, you can download the game launcher here, and we encourage you to join us on our Official Discord Server for the most up to date testing news.

< Performance Optimization Suggestions > make you play smoothly

dkshawdkshaw Member, Alpha Two
edited April 17 in General Discussion
Resource Optimization
Model and Texture Optimization
Simplify Models: Use polygon counting tools to analyze models, remove unnecessary details, and reduce the number of polygons in the models. For models visible from a distance, use low-polygon versions.
Texture Compression: Utilize the texture compression function of Unreal Engine 5 to reduce the size of texture files while ensuring visual quality. For example, use efficient compression formats like BC7.
Texture Atlases: Combine multiple small textures into a large texture atlas to reduce the number of texture sampling times and improve rendering efficiency.

Resource Management
Resource Streaming Loading: According to the player's location and activity range, dynamically load and unload resources to reduce memory usage. Use the streaming level function of Unreal Engine 5 to load resources of specific areas only when needed.
Resource Reference Optimization: Avoid duplicate references of resources to ensure that each resource exists only once in memory. Use the resource reference analysis tool in Unreal to find and solve the problem of duplicate references.
Rendering Optimization

Lighting and Shadow Optimization
Static Lighting Baking: For fixed lighting and shadows in the scene, use the lighting baking technology to reduce the amount of real-time lighting calculation.
Adjustment of Shadow Distance and Resolution: Adjust the maximum distance and resolution of shadows according to the actual situation to avoid unnecessary shadow calculations.
Use of Lightmass Importance Volume: Reasonably set the Lightmass Importance Volume to ensure that the lighting baking has sufficient accuracy in key areas.

Post-processing Optimization
Reduce Post-processing Effects: Avoid using too many complex post-processing effects, such as depth of field, blurring, etc., as these effects will increase the rendering burden.
Post-processing Quality Grading: Provide different quality levels of post-processing options according to the performance of the player's device, allowing players to adjust according to their own devices.

Network Optimization
Server Optimization
Server Architecture Design: Adopt a distributed server architecture to distribute players to different server nodes and reduce the burden on a single server.
Server Load Balancing: Use a load balancer to dynamically allocate player requests according to the load situation of the servers, ensuring the load balance of each server.
Server Performance Monitoring: Monitor the performance indicators of the server in real time, such as CPU usage, memory usage, network bandwidth, etc., and promptly identify and solve performance bottlenecks.

Network Communication Optimization
Reduce Network Bandwidth Occupancy: Optimize the size and sending frequency of data packets to reduce unnecessary data transmission. For example, only send the player's location and status information when necessary.
Network Latency Optimization: Adopt prediction and compensation algorithms to reduce the impact of network latency on the player's gaming experience. For example, when the player performs a movement operation, the client first makes a predictive movement and then synchronizes after the server confirms it.

Code Optimization
Script Optimization
Reduce the Number of Script Executions: Avoid executing unnecessary script code in every frame, and execute some operations that do not need to be updated frequently at appropriate time intervals.
Optimize Script Logic: Use efficient algorithms and data structures to reduce the computational amount of the script. For example, use a hash table to quickly find data.

Engine Code Optimization
Use the Optimization Functions Provided by the Engine: Unreal Engine 5 provides many optimization tools and functions, such as Actor pools, object pools, etc. Reasonable use of these functions can improve game performance.
Avoid Frequent Garbage Collection: Reduce the creation of temporary objects and avoid frequently triggering the garbage collection mechanism, so as not to affect the smoothness of the game.
Performance Testing and Analysis

Performance Testing
Use Performance Testing Tools: Utilize the performance analysis tools provided by Unreal Engine 5, such as Session Frontend, Visual Studio Profiler, etc., to conduct a comprehensive performance test on the game.
Multi-platform Testing: Conduct tests on different hardware platforms and operating systems to ensure that the game can perform well on various devices.

Data Analysis and Optimization
Analyze Performance Data: According to the results of the performance test, analyze the performance bottlenecks of the game and identify the parts that need optimization.
Continuous Optimization: Performance optimization is a continuous process, which requires continuous testing, analysis, and optimization to ensure that the performance of the game always remains at a high level.

Comments

  • REHOCREHOC Member
    Wow, this is an incredibly thorough list, thanks for putting all this together, dkshaw.
    9ogtbxoqmpef.png
  • dkshawdkshaw Member, Alpha Two
    REHOC wrote: »
    Wow, this is an incredibly thorough list, thanks for putting all this together, dkshaw.

    I hope they can continue to optimize the game in the future so that players with low-end computers can also play this game smoothly.
  • NoaaniNoaani Member, Intrepid Pack, Alpha Two
    I am quite sure none of this occurred to the industry veterans making this game.
Sign In or Register to comment.