VRender - программа для построения и визуализации трёхмерных скалярных полей. Построение производится с помощью пользовательской функции (для написания функции используется специальный язык построения). При построении можно указывать размер скалярного поля, а при визуализации - размер поля полигонизации, который влияет на детализацию объекта.
В сцене с объектом присутствует один источник света, его параметры, а также материал объекта, можно задавать на вкладке Освещение и цвет
.
Объект можно вращать при помощи мыши (при помощи виртуального трэкбола). С помощью колёсика мыши можно приближать\отдалять (zoom).
Есть возможность экспорта полученного объекта в файл формата Wavefront (.obj), при этом экспортируется объект полигонизированный с текущим изо-уровнем.
####Ссылки на скачивание #####Версия 0.9.2 ######Linux https://www.dropbox.com/s/s2n6vgkf7ydl5q1/vrender-0.9.2-linux.zip ######Windows https://www.dropbox.com/s/1kyyrmclkmfw9bf/vrender-0.9.2-win.zip
####Поддерживаемые платформы Linux, Windows
####Технические детали Программа разделена на два компонента: libvrender и vrender-gui.
libvrender это библиотека для визуализации, в ней расположены компоненты для организации загрузки и работы с шейдерами, текстурами, вводом с клавиатуры и мыши, камера, математическая библиотека (матрицы, вектора, кватернионы, шумы), реализация алгоритма Marching Cubes, парсер языка построения, организация многопоточности (OpenMP), экспорт в Wavefront. Библиотека написана на C. Требует OpenGL 2.1+. Линкуется с vrender-gui статически. Для сборки используется CMake.
Основным компонентом является реализация алгоритма Marching Cubes, которая позволяет, в реальном времени, полигонизировать скалярное поле. Расчёт нормалей производится внутри шейдера, а при экспорте в Wavefront расчёт производится на CPU.
vrender-gui графическая оболочка над libvrender. Написана на C++. Требует Qt4. Для сборки используются средства Qt.
####Почему libvrender написана на C, а не C++? Первоначально предполагалось написание другого проекта на C (тоже связанного с компьютерной графикой), из-за нехватки времени пришлось изменить тему разработки, но, так как оставалось много наработок на C, было решено продолжить разработку, а GUI часть написать на C++.
####Происхождение имени VRender -> Volume Render - визуализатор объёма.
Внимание! Так как программа использует OpenMP, то рекомендуется использовать компилятор GCC (так как в Clang пока нет поддержки OpenMP)
- Устанавливаем Qt4, QtOpenGL и OpenMP:
sudo apt-get install qt4-dev-tools libqt4-opengl-dev libgomp1
- Устанавливаем CMake:
sudo apt-get install cmake
- Кладём исходник в любую папку, например, в
~/vrender
и переходим в неё:cd ~/vrender/
- Создаём папку, куда скомпилится libvrender:
mkdir libvrender-build
(лучше использовать имяlibvrender-build
, иначе нужно правитьvrender-gui/vrender-gui.pro
) и переходим в неё:cd libvrender-build
- Создаём Makefile с помощью CMake:
cmake ../libvrender
- Компилируем libvrender:
make
- Переходим обратно в vrender:
cd ../
- Теперь создаём папку для vrender-gui:
mkdir vrender-gui-build
и переходим в неё:cd vrender-gui-build
- Создаём Makefile уже с помощью qmake:
qmake ../vrender-gui
- Компилируем vrender-gui:
make
- Готово! Теперь в папке
vrender-gui-build
лежит программаvrender-gui
. Приятного пользования!
- Качаем Qt4 SDK: http://www.developer.nokia.com/Develop/Qt/Tools/
- Качаем CMake: http://www.cmake.org/cmake/resources/software.html (Win32 Installer)
- Устанавливаем CMake и Qt4 SDK
- Кладём исходник в любую папку, например, в
C:/vrender/
- Запускаем Qt Creator
- Заходим в Инструменты -> Параметры... -> Сборка и Запуск -> CMake и указываем путь к
cmake.exe
(например,C:\Program Files\CMake 2.8\bin\cmake.exe
) - В Qt Creator открываем файл как проект:
C:/vrender/libvrender/CMakeLists.txt
(Файл - Открыть файл или проект...) - Откроется мастер, выбираем каталог сборки libvrender-build:
C:/vrender/libvrender-build
(папку нужно создать) и жмём Далее - Выбираем генератор:
Генератор для MinGW (Mingw as a GCC for Windows targets)
, жмём Запуск CMake и затем Завершить - Открываем файл как проект:
C:/vrender/vrender-gui/vrender-gui.pro
, в появившемся меню жмём Завершить - Заходим во вкладку Проекты, сверху выбираем vrender-gui, и потом Зависимости, здесь выбираем
vrender
- Жмём на значок компьютера и выбираем сборку Релиз (также должен быть установлен запуск vrender-gui)
- Жмём правой кнопкой мыши на проект
vrender-gui
и выбираем Пересобрать проект - После сборки, жмём на зелёную стрелку Запустить
- Готово! Приятного пользования!
- Не отображается текст ожидания (в MessageBox) при построении в Ubuntu