Currently 0 A.D. performance is lower than that of similar RTS games, especially when playing with many units on a map. This page collects some tasks and suggestions to improve performance of pyrogenesis, the engine used by 0 A.D.. To discuss other performance related ideas you can use the [http://www.wildfiregames.com/forum/index.php?showtopic=16991 Performance Optimizations forum thread]. == Ongoing improvements == {{{#!table style="background: LightGoldenrodYellow" ||= Feature =||= Relevant link(s) =||= Performance impact =||= Status =|| ||Rewrite the renderer to require OpenGL 2.1||[http://www.wildfiregames.com/forum/index.php?showtopic=16734 forum thread]||Big||Stalled|| ||Threading to use more than one CPU core|| #1886 ||Big||Not started|| ||Long/Tile Pathfinder Rewrite||#1756||Big||Stalled|| ||Short/Vertex Pathfinder Rewrite||#1942||Big||Not started|| ||Memory allocation reduction|| #1995 ||Big||Work in progress|| ||Incremental update of pathfinder's passability grid||#930||Medium||Stalled, to do with new pathfinder|| ||Upgrade [https://developer.mozilla.org/en-US/docs/SpiderMonkey SpiderMonkey] from [https://developer.mozilla.org/en-US/docs/SpiderMonkey/1.8.5 1.8.5] to [https://developer.mozilla.org/en-US/docs/SpiderMonkey/24 24]||#1886 [http://www.wildfiregames.com/forum/index.php?showtopic=17289 forum thread]||Medium||Work in progress|| ||GUI code improvement||#885||Medium||Stalled|| ||CCmpRangeManager optimization||#1707||Medium||Work in progress|| ||ComponentManager optimization||#1860||Medium||Work in progress|| ||ModelRenderer.cpp optimization||#1859||Medium||Work in progress|| ||Implement caching of terrain normals||#2039||Medium||Work in progress|| ||UnitAI/UnitMotion repathing improvement||#1200||Medium||Not started|| ||Sim interpolation optimization (game and editor)||#1846 #1858 #1865 #1906 r13500||Medium||Landed in alpha13, reverted in alpha14|| ||Non behavior changing optimizations||#1923 [http://www.wildfiregames.com/forum/index.php?showtopic=17310 forum thread]||Small||Work in progress|| ||Other Kuranes patches||#2022 #2023 #2024 #2026||?||Work in progress|| ||Better terrain normal calculation||#1987||Small||Work in progress|| ||Other RedFox Patches||#2007 #2020 #2027 #2029||?||Work in progress|| ||Implement an Octree||[http://www.wildfiregames.com/forum/index.php?showtopic=16991 forum thread] #2016||?||Not started|| ||Rewrite the AI base system in C++||[http://www.wildfiregames.com/forum/index.php?showtopic=16991 forum thread]||?||Not started|| ||Benchmark mode||#837||n/a||Not started|| ||Graphic settings system||#475||n/a||Not started|| ||Implement profiling for any thread||#807||n/a||Not started|| }}} == Completed improvements == {{{#!table style="background: LightGreen" ||= Feature =||= Relevant link(s) =||= Performance impact =||= Status =|| ||GetPercentMapExplored optimization||#2012||Medium||Landed in alpha14|| ||Optimization for foam generation||r13555||Small||Landed in alpha14|| ||VBO support for minimap entity rendering||r13454||Small||Landed in alpha14|| ||Water improvement||r13374||Small||Landed in alpha14|| ||JS GUI code optimization||#1878||Small||Landed in alpha14|| ||AI API v3 and Aegis AI||[http://www.wildfiregames.com/forum/index.php?showtopic=17144 forum thread]||Medium||Landed in alpha13|| ||GetInterpolatedTransform math optimization||#1854||Small||Landed in alpha13|| }}} == Other related resources == * [http://www.wildfiregames.com/forum/index.php?showtopic=17274 Forum thread: (DISCUSS) Performance Improvements] * [[CodeAndMemoryPerformance]] * [[CodeQuality]] * [[Coding_Conventions]] * [[EngineProfiling]]