Матричная лаборатория MatLab

         

Управление работой средств OpenGL



Управление работой средств OpenGL

Как уже неоднократно отмечалось, одной из новинок системы MATLAB 6 является поддержка графических средств OpenGL. Эти средства обычно используются чаще всего при реализации трехмерной графики, например при осуществлении сло.жной функциональной окраски поверхностей и трехмерных фигур с учетом характера освещения и структуры материала (рендеринг), при осуществлении анимации для таких объектов, при построении поверхностей из многоугольников, осуществлении эффектов прозрачности и т. д. Целый ряд примеров этого уже приводился как в уроке 6, так и в данном уроке.

Средства OpenGL в MATLAB задействованы автоматически. Это значит, что они будут использованы, если видеокарта компьютера пользователя поддерживает их и если установлены соответствующие драйверы видеоадаптера. На уровне средств стандартной графики MATLAB никаких функций управления OpenGL нет. Однако дескрипторная графика такую возможность предоставляет с помощью команды opengl selectionjnode

Эта команда задает графические режимы осуществления рендеринга. Параметр selectl onjnode может принимать следующие значения:



  • autosel ect — задает автоматическое применение OpenGL и вводит в работу средства OpenGL при наличии возможностей для этого;

  • neverselect — отключает автоматическое применение OpenGL;

  • advise — выводит сообщение о возможности применения OpenGL, но режим рендеринга (RenderMode) устанавливается вручную.

Просто команда opengl выводит сообщение о текущем значении selectionjnode, например:

» opengl 

ans = 

AutoSelect

А команда opengl info выводит данные о средствах OpenGL ПК, на котором установлена система MATLAB, например:

» opengl info

Version = 1.1.0

Vendor = Microsoft Corporation

Renderer = GDI Generic

MaxTextureSize = 1024

Extensions = GL_WIN_swapJiint GL_EXT_bgra

GL_EXT_paletted_texture

Возможно также управление средствами рендеринга и OpenGL на уровне средств дескрипторной графики с помощью команды set, например: set(gcf.'Renderer','OpenGL')



Содержание раздела