Кіріспе

Жоғары деңгейдегі API кітапханасы

Компьютерлік есептеулерде D3DX (Direct3D Extension) – Microsoft компаниясының Direct3D графикалық API-ін толықтыру мақсатымен жазылған жоғары деңгейдегі API кітапханасы. D3DX кітапханасы Direct3D 7 нұсқасында енгізілді және кейіннен Direct3D 9 нұсқасында жақсартылды. Ол векторлар, матрицалар және түстер бойынша жиі кездесетін есептеулер, қарау және проекция матрицаларын есептеу, сплайн интерполяциялары, сондай-ақ 3D графикалық бағдарламалау үшін қолданылатын шейдерлерді құрастыру немесе жинау, сығылған қаңқа анимациясын сақтау және матрицалық стектер сияқты бірнеше күрделі тапсырмалар үшін сыныптарды ұсынады. 3D торлармен күрделі операцияларды жүзеге асыруға арналған бірнеше функциялар бар, мысалы, жанама кеңістікті есептеу, торды жеңілдету, алдын ала есептелген сәулеленуді беру, төменгі деңгейдегі кэшті оңтайландыру және жолақтарды қайта реттеу, сондай-ақ 3D мәтін торларын жасауға арналған генераторлар. 2D мүмкіндіктеріне экран кеңістігіндегі сызықтарды, мәтінді және сприт негізіндегі бөлшектер жүйесін салуға арналған сыныптар кіреді. Ғарыштық функцияларға әртүрлі қиылысу алгоритмдері, барицентрлік координаттарға өту/олардан өту және шектеуші қораптар мен шарларды жасау кіреді. D3DX кітапханасы көптеген 2D/3D қолданбаларға, мысалы, ойындарға қатысты жиі қолданылатын алдын ала жазылған процедураларды қамтиды. Direct3D API салыстырмалы түрде төменгі деңгейде болғандықтан, D3DX кітапханасын пайдалану көбінесе әлдеқайда оңай. 2012 жылы Microsoft компаниясы Windows 8 SDK-да D3DX 9, D3DX 10 және D3DX 11 кітапханаларының, сондай-ақ XNA сияқты басқа да дамыту құралдарының қолданысын тоқтату туралы хабарлады. Шейдер эффектілері, текстураларды басқару, геометрияны оңтайландыру және тор үлгілері GitHub арқылы жеке көздер ретінде қолжетімді. D3DX математикалық құрылымдары, мысалы, векторлар мен матрицалар XNAMath-пен біріктіріліп, DirectXMath құралады, ал сфералық гармоника математикасы жеке көз ретінде ұсынылады. DirectX Tool Kit, DirectXTex, DirectXMesh және UVAtlas та қолжетімді. DXUT және Effects (FX11) орындалу ортасының ашық кодты нұсқалары да бар.

Direct3D12

DLL-ге негізделген D3DX12 қосымша кітапханасы жоқ. Дегенмен, Direct3D 12 үшін қарапайым көмекші функцияларды қамтитын D3DX12 пайдалылығы (барлық код C++ тілінде жазылған) Microsoft Docs құжаттарында сипатталған және GitHub-та жарияланған. Онда математикалық амалдар, спрайттар, қаріптерді көрсету, 3D нысандар, модельдер немесе текстураларды жүктеу сияқты мүмкіндіктер жоқ. Direct3D 12 үшін DirectX Tool Kit жиынтығы бар, ол қажетті мүмкіндіктерді ұсынады.