Нови мотори за рендеровање за ОпенГЛ и Вулкан су додати ГТК-у

Програмери ГТК библиотеке су најавили доступност два нова механизма за рендеровање – „нгл“ и „вулкан“, користећи ОпенГЛ (ГЛ 3.3+ и ГЛЕС 3.0+) и Вулкан графичке АПИ-је. Нови мотори су укључени у експериментално издање ГТК 4.13.6. У експерименталној ГТК грани, нгл мотор се сада користи подразумевано, али ако се идентификују значајни проблеми у следећој стабилној грани 4.14, стари „гл“ механизам за рендеровање ће бити враћен.

Нови мотори су позиционирани као уједињени и састављени из једне базе кода. Суштина обједињавања је да се као основа користи Вулкан АПИ, поврх којег је креиран посебан ниво апстракције за ОпенГЛ, узимајући у обзир разлике између ОпенГЛ-а и Вулкана. Овај приступ је омогућио коришћење заједничке инфраструктуре у оба мотора за обраду графа сцене, трансформације, кеширање текстура и глифова. Унификација је такође значајно поједноставила одржавање базе кодова оба мотора и њихово ажурирање и синхронизацију.

За разлику од старог гл енгине-а, који је користио посебан једноставан схадер за сваки тип чвора за рендеровање и периодично је поново сортирао податке током приказивања ван екрана, нови мотори уместо рендеровања ван екрана користе сложени схадер (уберсхадер) који тумачи податке из бафера . У свом садашњем облику, нова имплементација и даље заостаје за старом по нивоу оптимизације, пошто је главни фокус у тренутној фази на исправном раду и једноставности одржавања.

Нове функције које недостају у старом гл мотору:

  • Изглађивање контура - омогућава вам да сачувате фине детаље и постигнете глаткије контуре.
    Нови мотори за рендеровање за ОпенГЛ и Вулкан су додати ГТК-у
  • Формирање произвољних градијената, који могу користити било који број боја и анти-алиасинг (у гл енгине-у су подржани само линеарни, радијални и конусни градијенти са 6 стоп боја).
    Нови мотори за рендеровање за ОпенГЛ и Вулкан су додати ГТК-у
  • Фракциона скала, која вам омогућава да поставите вредности скале које нису целобројне, на пример, када користите скалу од 125% за прозор од 1200к800, биће додељен бафер од 1500к1000, а не 2400к1600 као у старом мотору.
  • Подршка за ДМА-БУФ технологију за коришћење више ГПУ-а и пребацивање појединачних операција на други ГПУ.
  • Многи чворови за приказивање који су имали проблеме у старој имплементацији су исправно обрађени.

Ограничења нових мотора укључују недостатак подршке за позиционирање по нецелобројним вредностима (разломачка позиција) и чворовима глсхадер, који су били у великој мери везани за карактеристике старог мотора и који више нису били потребни након додавања подршке за чворови са маскама (маска) и текстуре са провидношћу. Такође се помиње да постоји могућност могућих проблема са графичким драјверима због промене начина рада са драјверима.

У будућности, на основу новог обједињеног модела, није искључено креирање машина за рендеровање користећи Метал у мацОС-у и ДирецтКс у Виндовс-у, али је креирање таквих машина компликовано употребом других језика за шејдере („нгл ” и „вулкан” мотори користе ГЛСЛ језик, тако да ће за Метал и Дирецт морати или да дуплирају сејдере или да користе слој заснован на СПИРВ-Цросс комплету алата).

Будући планови укључују обезбеђивање ХДР подршке и алата за правилно управљање бојама, подршку за приказивање путање на страни ГПУ-а, могућност рендеровања глифова, рендеровање ван струје и оптимизације перформанси за старије уређаје и уређаје мале потрошње. У свом садашњем облику, перформансе мотора „вулкан” су блиске перформансама старог „гл” мотора. "нгл" мотор је инфериоран у перформансама у односу на стари "гл" мотор, али су доступне перформансе довољне за рендеровање при 60 или 144 ФПС. Очекује се да ће се ситуација променити након оптимизације.

Извор: опеннет.ру

Додај коментар