ГРНТИ 50.07 Теоретические основы вычислительной техники
ББК 3297 Вычислительная техника
Рендеринг динамических трехмерных сцен представляет сложность из-за невозможности выполнения предобработки для объединения и упрощения полигональных моделей, сохранения информации о видимости. При рендеринге сцен с большим количеством подвижных объектов производительность зачастую падает из-за перезаписи командных буферов, выполнения лишних проверок видимости. Предлагается модель производительности, согласно которой вычисляется требуемый объем памяти и выполняется оценка времени выполнения основных этапов прямого рендеринга. Предлагается адаптивный метод рендеринга динамических сцен, который выбирает наиболее эффективный метод использования командных буферов и количество аппаратных проверок видимости в зависимости от состояния сцены. В отличие от существующих методов рендеринга динамических сцен, предложенный метод учитывает затраты на составление и посылку командных буферов, вычисляет оптимальное количество проверок видимости, используя модель производительности рендеринга. Результаты тестирования предложенного адаптивного метода показали его эффективность при рендеринге динамических сцен с большим количеством объектов.
рендеринг, составление командных буферов, удаление невидимых поверхностей, модель производительности рендеринга
1. Черняк, А. А., Черняк, Ж. А., Метельский, Ю. М., Богданович, С. А. Методы оптимизации: теория и алгоритмы. 2-е-изд. М.: Юрайт, 2017. 357 с.
2. Bittner J., Wimmer M., Piringer H., Purgathofer W. Coherent Hierarchical Culling: Hardware Occlusion Queries Made Useful // Computer Graphics Forum. 2004. Vol. 23, No 3. pp. 615–624.
3. Blackert A. Evaluation of Multi-Threading in Vulkan. Linköping University, 2016.
4. Bucci J. and Doghramachi H. Deferred+: next-gen culling and rendering for dawn engine. URL: https://eidosmontreal.com/en/news/deferred-next-genculling-and-rendering-for-dawn-engine.
5. Cohen-Or D., Chrysanthou Y.L., Silva C.T., Durand F. A survey of visibility for walkthrough applications // IEEE Trans. Visual. Comput. Graphics. 2003. Vol. 9, No 3. pp. 412–431.
6. Funkhouser T.A., Séquin C.H. Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments // Proceedings of the 20th annual conference on Computer graphics and interactive techniques. ACM Press, 1993. pp. 247–254.
7. Gonakhchyan V. Efficient command buffer recording for accelerated rendering of large 3d scenes // Proceedings of the 12th International Conference on Computer Graphics, Visualization, Computer Vision and Image Processing. 2018. pp. 397–402.
8. Guthe M., Balázs Á., Klein R. Near Optimal Hierarchical Culling: Performance Driven Use of Hardware Occlusion Queries // Eurographics Symposium on Rendering. 2006. pp. 207–214.
9. History of OpenGL. URL: https://www.khronos.org/opengl/wiki/History_of_OpenGL #OpenGL_1.5_.282003.29.
10. Lorach T. Approaching Zero Driver Overhead // SIGGRAPH 2014.
11. Shiraef J. An exploratory study of high performance graphics application programming interfaces. University of Tennessee at Chattanooga, 2016.
12. Wimmer M., Wonka P. Rendering time estimation for realtime rendering // Proceedings of the 14th Eurographics workshop on Rendering. 2003. pp. 118–129.