Compania AMD un nou cadru deschis , care oferă instrumente pentru dezvoltarea rapidă de prototipuri de jocuri și aplicații grafice ce utilizează API Vulkan sau DirectX12. Cadrele au fost utilizate inițial în cadrul companiei pentru dezvoltarea de demonstrații și exemple pentru SDK. Codul proiectului este scris în C++11 și sub licența MIT.
Caudron este prezentat ca un motor de jocuri simplificat, ușor de învățat și care poate fi modificat pe parcursul dezvoltării pentru a efectua diverse experimente. Motorul se leagă de aplicație sub forma unei biblioteci legate static. Componentele motorului sunt împărțite în patru categorii principale:
- Manageri și încărcătoare de resurse. Se suportă încărcarea texturilor în formate DDS, PNG, JPG etc., cu posibilitatea de a crea vederi ale imaginilor. Sunt oferite mai multe implementări de bufferi pentru stocarea vârfurilor și indicilor pentru obiecte geometrice statice și dinamic modificabile, precum și pentru stocarea texturilor înainte de încărcarea în memoria video;
- Module de redare, care permit încărcarea și redarea modelelor 3D în format glTF 2.0, cu suport pentru animația mișcării camerei, scheletelor și luminii, suprapunerii de texturi, redarea fizic corectă a materialelor (PBR), lumina direcționată punctiform și umbre. Este suportată redarea obiectelor 2D în formate PostProcPS/PS, utilizând un shader propriu în etapa de post-procesare. De asemenea, este disponibil un component pentru crearea interfetei grafice și un set de widget-uri pentru generarea unei rețele de coordonate și a unui cub cadru (pentru limite și conurile de răspândire a luminii/camerei);
- Un set de manipulatoare și coduri auxiliare pentru configurații specifice API Vulkan;
- Cod standard pentru diferite sisteme de operare pentru gestionarea operațiunilor de redimensionare, moduri feronice și pe ecran complet, gestionarea fluxului de mesaje între feronice etc.
De asemenea, sunt incluse biblioteci suplimentare: AGS pentru obținerea informațiilor despre GPU, VulkanMemoryAllocator pentru gestionarea memoriei în aplicațiile Vulkan, d3d12x pentru utilizarea API D3D12, dxc cu compilatorul de shaders pentru DirectX, imgui cu biblioteca GUI, json pentru manipularea datelor în format JSON.
Sursa: opennet.ro
