Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Výkon

Úvod

Godot se řídí filozofií vyváženého výkonu. Ve světě výkonu vždy existují kompromisy, které se skládají z prioritizace rychlosti versus použitelnosti a flexibility. Toto jsou některé praktické příklady:

  • Vykreslování velkého množství objektů je snadné, ale když je třeba vykreslit velkou scénu, může se to stát neefektivní. Pro zrychlení musí být do vykreslování přidán výpočet viditelnosti. Tím se vykreslování stává méně efektivní, ale zároveň se vykresluje méně objektů. V konečném důsledku se celková efektivita vykreslování zvýší.

  • Konfigurace vlastností každého materiálu pro každý objekt, který je třeba vykreslit, je také pomalá. Pro snížení nákladů jsou objekty tříděny podle materiálu, přestože třídění něco stojí.

  • Ve 3D fyzice nastává podobná situace. Nejlepší algoritmy pro zpracování velkého množství fyzikálních objektů (jako je SAP) jsou pomalé při vkládání/odebírání objektů a vrhání paprsků. Algoritmy, které umožňují rychlejší vkládání a vyjímání a také vrhání paprsků, zase nejsou schopny zpracovat tolik aktivních objektů.

A takových příkladů je mnohem více! Herní enginy se snaží být ve své podstatě univerzální. Vyvážené algoritmy jsou vždy upřednostňovány před algoritmy, které mohou být v některých situacích rychlé a v jiných pomalé, nebo před algoritmy, které jsou rychlé, ale obtížněji se používají.

Godot v tomto není výjimkou. Přestože je navržen tak, aby jeho backendy šlo vyměňovat různými algoritmy, výchozí backendy upřednostňují rovnováhu a flexibilitu před výkonem.

Cílem této sekce nívodu je vysvětlit, jak z Godotu získat maximální výkon. Byť lze tutoriály číst v libovolném pořadí, je dobré začít od Obecné tipy pro optimalizaci.

Obecné

CPU

GPU

3D

Vlákna