Введение в шейдеры с Ogre3D

Сегодня хочу описать использование шейдеров в render-движке Ogre3d. Делается всё это через материалы. Есть в русском вики-сообществе статья на эту тему, но она довольно некачественная.

Для начала разберемся со структурой. Чтобы использовать шейдер в огре нам нужно 4 файла: пиксельный шейдер, вершинный шейдер, файл материала, файл программы.

Начнём с основ. Если вы ещё совсем незнакомы с шейдерами, есть хорошая книга — Shaders for game programming and artists (ISBN: 1-59200-092-4).

Читать далее >

Оверлеи в Ogre3D

Теперь я начну писать статьи по свободному render-движку Ogre3D. Сегодня мы разберёмся с оверлеями и рендером текста. Для начала разберёмся, что нам нужно будет сделать:

  1. Загрузить в ресурсы нужный шрифт
  2. Создать оверлей
  3. Создать текстовую область на оверлее
  4. Отрисовать оверлей

Читать далее >

data:URI картинки в PHP

Приветствие, сегодня мы с вами разберемся с выводом base64-закодированных картинок. Основывается все это на стандарте: data: URI.

Читать далее >

Восстановление runtime-файлов VIM

Vim LogoПриветствие. Думаю, ни для кого не секерет, что vim просто замечательный текстовый редактор. После очередного обновления, у меня удалилась папка с runtime-файлами (/usr/share/vim/vim72 — у меня). Просто копирование файлов из фтп не помогло.

В ходе поиска открыл файл README.txt по адресу: ftp://ftp.home.vim.org/pub/vim/runtime/. Вот его текст:

This directory contains the latest version of Vim runtime files.

To obtain those files that differ from your current files:
1. Make sure you have Python (version 1.5 or later).
2. Install Aap; see http://www.a-a-p.org/download.html
3. Change to the $VIMRUNTIME directory.  Use ":echo $VIMRUNTIME" in Vim to
   find out the right directory.
4. Run "aap" with the main.aap recipe from the ftp site.  It will download all
   the files that you don't have yet and those that are different from what's
   stored here.

For steps 3 and 4 you could type this:

        cd /usr/local/share/vim/vim70/
        aap -f ftp://ftp.vim.org/pub/vim/runtime/main.aap

You now have a complete set of the latest runtime files.

If you later want to obtain updated files, you can do:

        cd /usr/local/share/vim/vim70/
        aap update

Note: This only obtains new files, it does not delete files that are no
longer used.  It also is an effective way to erase any changes you made
to the files yourself!

The "main.aap" recipe was generated with the ":mkdownload" command in
"aap".

Читать далее >

Работаем с std::map

Думаю, многие из вас знают и используют Standard Template Library или STL. Эта библиотека даёт нам огромные возможности. Ознакомиться можно по этой ссылке.

Читать далее >

Программа управления звуком с помощью PyQT

Приветствие, давно не писал ничего. Сегодня займемся созданием лайт-виджета для регулировки уровня звука в системе. Таких программ достаточно много, но мне нужна была маленькая, быстрая и под стиль моей панели tint2.

Начнем с формулировки того, что мы хотим получить

  • у нас будет виджет, без панели управления и скрытый из таскбара;
  • координаты расположения крайний левый угол экрана;
  • на весь размер окна мы растягиваем иконку текущего положения звука. Всего будет 4 разных типа отображения: high, medium, low, mute;
  • регулировка звука по прокручиванию колесика мыши над виджетом;
  • дополнительная возможность: по нажатию правой кнопки мы запоминаем текущее значение уровня звука и выставляем его на 0 для системы, на последующее нажатие правой кнопки мы берем сохраненное значение и возобновляем его.

Читать далее >

INIT: no more processes left in this runlevel

Была раньше у меня проблема с моим Линуксом, не мог я нормально выключить/перезагрузить компьютер. После закрытия всех демонов получал:

INIT: no more processes left in this runlevel

Читать далее >

Настройка рабочего места в Gentoo

Приветствие. Сегодня поговорим о настройке рабочего места на вашем компьютере. Конечно, все это подойдет не только для Gentoo Linux, но и для других дистрибутивов. Чтобы не тянуть время, сразу покажу вам то, что получилось у меня. А читать ли далее решать вам.

Читать далее >

Настройка ADSL подключения в Gentoo

Приветствие, здесь хочу написать путь установки и настройки adsl-подключения в Linux Gentoo.

Читать далее >

Вступление в Gentoo для новичков

Gentoo LogoДа, я перешел на Gentoo. Этим все сказано. В этом посте хотел бы описать пару вещей, которые помогли мне в освоении этого прекрасного дистрибутива! Начнем из системных средств. Часто в Gentoo приходится бороться с блокированными пакетами и прочей нечистью, иногда это нелегко, особенно, при обновлении мира. Есть утилита — revdep-rebuild, которая автоматически просканирует систему на “битые” пакеты и исправит их. Находится она в пакете gentoolkit:

$ emerge gentoolkit

Читать далее >