Spoločnosť AMD nový otvorený rámec , poskytujúci prostriedky na rýchly vývoj prototypov hier a grafických aplikácií využívajúcich API Vulkan alebo DirectX12. Rámec bol pôvodne používaný vo vnútri spoločnosti na vývoj ukážok a príkladov pre SDK. Kód projektu je napísaný v jazyku C++11 a pod licenciou MIT.
Caudron sa prezentuje ako zjednodušený herný engine, ktorý je jednoduchý na štúdium a ktorý sa dá modifikovať počas vývoja za účelom vykonávania rôznych experimentov. Engine sa pripája k aplikácii vo forme staticky prepojiteľnej knižnice. Zložky enginu sú rozdelené do štyroch hlavných kategórií:
- Manažéri a načítače zdrojov. Podporuje sa načítavanie textúr vo formátoch DDS, PNG, JPG a pod. s možnosťou vytvárať zobrazenia obrázkov. Poskytuje sa niekoľko realizácií bufferov na uchovávanie vrcholov a indexov pre statické a dynamicky sa meniacich geometrických objektov, ako aj na uchovávanie textúr pred načítaním do video pamäte;
- Moduly renderovania, ktoré umožňujú načítať a vykresliť 3D modely vo formáte glTF 2.0 s podporou animácie pohybu kamery, kostrov a svetla, textúrovania, fyzicky správneho renderovania materiálov (PBR), bodovo smerovaného svetla a tieňov. Podporuje sa vykresľovanie 2D objektov vo formátoch PostProcPS/PS s použitím vlastného shaderu v fáze postprocessingu. Táto komponenta je na vytváranie GUI a súbor widgetov na vytvorenie súradnicovej mriežky a rámcového kocky (pre obmedzujúce rámce a kužeľ rozšírenia svetla/kamery);
- Séria pomocných spracovateľov a kódu pre konfiguráciu špecifickú pre API Vulkan;
- Typický kód pre rôzne operačné systémy na spracovanie operácií zmeny veľkosti, okien a celospoločenských režimov, spracovanie tokov správ medzi oknami a pod.
Do súboru sú zahrnuté aj ďalšie knižnice: AGS na získavanie informácií o GPU, VulkanMemoryAllocator na správu pamäte vo Vulkan aplikáciách, d3d12x na použitie API D3D12, dxc s kompilátorom shaderov pre DirectX, imgui s GUI knižnicou, json na manipuláciu s údajmi vo formáte JSON.
Zdroj: opennet.ru
