Project Austin — пример современного C ++


Project Austin воссоздает программу для ведения заметок на планшете Microsoft Courier. Однако что действительно интересно, так это то, что это демонстрационный пример современного C ++, предусмотренного Microsoft.

Проект документируется в удобочитаемой форме в блоге Visual C ++, и именно здесь вы найдете самые мелкие детали. В проекте используется WinRT, поэтому термин «современный» C ++ также применяется к типу создаваемого приложения.
Идея состоит в том, чтобы создать блокнот со свободным текстом, который работал бы так, как будто это бумага и ручка.
«Austin — это приложение для создания цифровых заметок для Windows 8. Вы можете добавлять страницы в записную книжку, удалять их или перемещать их. Вы можете использовать цифровые чернила, чтобы писать или рисовать на этих страницах. Вы можете добавлять фотографии со своего компьютера. , из SkyDrive или прямо с камеры вашего компьютера. Вы можете поделиться своими заметками с другими приложениями Windows 8, такими как электронная почта или SkyDrive ».
Вы можете увидеть это в действии на видео:

Что интересно в этом приложении с точки зрения программиста, так это то, что оно использует новые функции Visual Studio 2012 — автоматическую векторизацию кода и C ++ AMP. Поэтому возникает вопрос, что может дать распараллеливание графическому приложению? В теории это много, но какой ценой?
Приложение основано на использовании DirectX для графики и, хотя сцена по сути представляет собой 2D-страницу, она представлена в полном 3D-пространстве. Пользовательский интерфейс, конечно же, построен с использованием XAML. Особый интерес представляет способ визуализации штрихов пера с использованием 2D-сетки, а не, скажем, растрового изображения. Интересно, что первоначальное намерение состояло в том, чтобы создать геометрический шейдер для обработки сетки, но, по крайней мере, на данный момент, он обрабатывается центральным процессором и передается на графический процессор для рендеринга.

На данный момент единственной частью системы, которая использует C ++ AMP, является анимация поворота пейджера, но заявленного увеличения скорости достаточно, чтобы сделать привлекательным преобразование в нее других частей системы.
Вы можете скачать код с CodePlex и поиграть с ним. На данный момент нет ни слова о том, превратится ли это в настоящее приложение, доступное для конечных пользователей в Windows 8 или WinRT, но было бы позором, если бы такая большая работа не охватила более широкую аудиторию.
А пока следите за новостями в блоге C ++, чтобы следить за остальными пояснениями.


Добавить комментарий