Выпуск спецификации OpenGL 4.5
Новый API будет предоставлять приложениям средства для явного управления состоянием GPU и CPU для обеспечения производительности или предсказуемости потребления ресурсов, будет адаптирован для применения в многопоточных приложениях с минимальными накладными расходами, предоставит общий промежуточный язык для шейдеров и средства для тщательного тестирования соответствия требованиям спецификации. В настоящее время новый API находится в состоянии разработки архитектуры и приёма предложений. Любая компания, заинтересованная в его развитии, может присоединиться к процессу разработки. Подробнее о новом API можно прочитать в отдельном анонсе.
Среди новых возможностей спецификации OpenGL 4.5, которая обратно совместима с предыдущими версиями:
- Механизмы эмуляции DX11, позволяющие упростить портирование на OpenGL программ, использующих Direct3D;
- Поддержка DSA (Direct State Access), нового метода доступа к состоянию объектов, позволяющего опросить и изменить состояние без привязки объектов к контекстам, что позволяет добиться увеличения эффективности и гибкости приложений и прослоек.
- Приложениям предоставлена возможность (Flush Control) для управления сбросом ожидающих выполнения команд до переключения контекста, что позволяет увеличить производительность в многопоточных приложениях;
- Предоставление средств изоляции для приложений, таких как web-браузеры с поддержкой WebGL, которые в том числе позволяют предотвратить влияние сброса GPU на другие выполняемые приложения;
- Режим совместимости с OpenGL ES 3.1, позволяющий упростить разработку и запуск новых приложений OpenGL ES на настольных системах.
В анонсе также упомянуто, что компания NVIDIA уже выпустила бета-версию драйвера с поддержкой OpenGL 4.5, предоставив разработчикам возможность сразу опробовать новую версию API на GPU NVIDIA для настольных ПК. В частности, поддержка OpenGL 4.5 доступна для GPU серий Quadro и GeForce 400-700. Из новых расширений OpenGL 4.5 отмечаются:
- ARB_clip_control
- ARB_conditional_render_inverted
- ARB_cull_distance
- ARB_derivative_control
- ARB_direct_state_access
- ARB_ES3_1_compatibility
- ARB_get_texture_subimage
- KHR_robust_buffer_access_behavior
- KHR_robustness
- ARB_shader_texture_image_samples
- ARB_texture_barrier
- KHR_context_flush_control
- ARB_pipeline_statistics_query
- ARB_sparse_buffer
- ARB_transform_feedback_overflow_query
- KHR_blend_equation_advanced
Источник: http://www.opennet.ru/opennews/art.shtml?num=40369
|
0 | Tweet | Нравится |
|