Windows Mobile DirectX и Direct3D
Обновлен: Ноябрь 2007
Платформа .NET Compact Framework предоставляет два пространства имен для разработки управляемых приложений DirectX и Direct3D для устройств:
Оба пространства имен находятся в сборке Microsoft.WindowsMobile.DirectX в библиотеке Microsoft.WindowsMobile.DirectX.dll.
Примечание. |
---|
Управляемым мобильным приложениям Direct3D требуется программное обеспечение Windows Mobile версии 5.0 для карманных ПК и смартфонов. Дополнительные сведения о программном обеспечении Windows Mobile и пакетах SDK см. в разделе Внешние ресурсы для платформы .NET Compact Framework. |
Эти пространства имен в целом представляют собой подмножество управляемых классов DirectX 9, предназначенных для разработки приложений для персональных (настольных) компьютеров. Тем не менее, функциональные возможности мобильных устройств более соответствуют тому, что было доступно в DirectX версии 8. Различия заключаются в отсутствии поддержки построителей текстур и вершин, поскольку мобильные устройства в настоящее время не предоставляют такой возможности.
Обратите внимание, что платформа .NET Compact Framework не поддерживает многократные вызовы блокировки с использованием метода Lock для буфера IndexBuffer или метода Lock для буфера VertexBuffer.
Разработчики должны быть знакомы с разработкой управляемых приложений Direct3D для настольных компьютеров. Документация пакета DirectX 9 SDK может использоваться для разработки приложений для мобильных устройств. Документацию DirectX 9 для управляемых приложений (на настольных компьютерах) см. по ссылке Introducing DirectX 9.0 for Managed Code в MSDN Library.
Загрузите пакет DirectX SDK August 2006 (DirectX 9.0 SDK) из центра Microsoft DirectX Developer Center.
Уникальные классы
Некоторые устройства, например процессоры ARM, не имеют встроенных возможностей обработки данных с плавающей запятой, что приводит к большому различию характеристик производительности. Платформа .NET Compact Framework предоставляет классы форматов с фиксированной запятой для обеспечения более высокой производительности для случаев, в которых можно избежать множества математических операций с плавающей запятой.
Платформа .NET Compact Framework предоставляет следующие классы и структуры, свойственные только приложениям для мобильных устройств:
класс AlreadyLockedException;
структуру BlendOperationCaps;
структуру ColorValueFixed;
структуру CustomVertex.PositionNormalFixed;
класс DriverUnsupportedException;
структуру FixedPoint;
класс LightFixed;
класс LightsFixedCollection;
структуру MaterialFixed;
структуру MatrixFixed;
класс MemoryPoolEmptyException;
Структура SurfaceCaps
Структура Vector3Fixed
Вопросы, связанные с памятью
При разработке приложений для мобильных устройств разработчики должны учитывать низкую вычислительную производительность и небольшой объем оперативной памяти таких устройств, планируя использование ресурсов соответствующим образом. Вероятнее всего, что файлы и загружаемые ресурсы содержимого хранятся в оперативной памяти, а не на жестком диске или в специальной видеопамяти. Поэтому один и тот же объем содержимого на мобильном устройстве может занимать гораздо больший объем оперативной памяти, чем на настольном компьютере.
Дополнительные сведения о том, какие объекты необходимо повторно создавать при сбросе состояния устройства, см. в разделе Управление ресурсами устройства.
Примеры
В следующих примерах демонстрируется использование Windows Mobile Direct3D:
Managed Direct3D Mobile Samples
15 примеров и учебники.
Пример Direct3D Mobile UltimateGMan Game
Игра, демонстрирующая управляемые возможности Direct3D для мобильных устройств.
См. также
Другие ресурсы
Мобильное программирование Direct3D в .NET Compact Framework