• Jump to Content
Загрузка...
 
  • Об участниках
  • Контакты
  • Помочь сайту

Поверхность DirectDraw

Published At: 2021-02-27 09:06 - (161 Прочтений)
Печать
DirectDraw Surface. Поверхностью (surface) в DirectDraw называется прямоугольная область памяти, обычно содержащая графические данные. Блок памяти, изображающий поверхность, может находиться как в системной, так и в видеопамяти. Хранение поверхностей в видеопамяти обычно повышает скорость работы программы, поскольку большинство видеокарт не может обращаться к системной памяти напрямую. Поверхности делятся на несколько типов. Простейшими являются внеэкранные (off-screen) поверхности. Внеэкранная поверхность может находиться как в видеопамяти, так и в системной памяти, но не отображается на экране. Такие поверхности обычно используются для хранения спрайтов и фоновых изображений. Первичная (primary) поверхность, напротив, представляет собой участок видеопамяти, отображаемой на экране. Любая программа DirectDraw, обеспечивающая графический вывод, имеет первичные поверхности. Первичная поверхность должна находиться в видеопамяти. Первичные поверхности часто бывают составными (complex), или, что то же самое, переключаемыми (flippable). Переключаемая поверхность может участвовать в переключении страниц - операции, при которой содержимое всей поверхности мгновенно отображается на экране с помощью специальных аппаратных средств. Переключение страниц используется во многих графических программах как с поддержкой DirectDraw, так и без, поскольку оно обеспечивает очень гладкую анимацию и устраняет мерцание. Переключаемая первичная поверхность на самом деле состоит из двух поверхностей, одна из которых отображается на экране, а другая - нет. Невидимая поверхность называется вторичным буфером (back buffer). При переключении страниц поверхности меняются местами: та, которая была вторичным буфером, отображается на экране, а та, что ранее отображалась, превращается во вторичный буфер. Как внеэкранные, так и первичные поверхности делятся на две разновидности: палитровые (palettized) и беспалитровые (non-palettized). Палитровая поверхность вместо конкретных значений цветов содержит индексы в цветовой таблице, которая называется палитрой. В DirectDraw палитровыми являются только 8-битные поверхности. Поверхности с глубиной пикселей, равной 16, 24 и 32 битам, являются бес-палитровыми. Вместо индексов в них хранятся фактические значения цветов. Поскольку в каждом пикселе беспалитровой поверхности находятся реальные цветовые данные, необходимо знать, в каком формате хранятся отдельные пиксели поверхностей. Формат пикселя описывает способ хранения красной, зеленой и синей (RGB) составляющих. Он зависит от глубины пикселей, видеорежима и аппаратной архитектуры. Источник: https://www.helloworld.ru/texts/comp/games/directx/directx/read3.htm(external link)

  • Главная
  • Введение (общее)
    • Жанры компьютерных игр
    • Эволюция DirectX. От версии к версии (обзор)
    • Готовим дизайн-документ игры
    • Базовые понятия 3D-графики
  • Программируем RPG (Win32, Cpp, DirectX8)
    • Устанавливаем Microsoft Visual C plus plus 2010 Express
    • Настройка MS Visual C plus plus 2010 и DirectX SDK
    • Основы языка Cpp
    • Создание приложений (Cpp, Win32)
    • Технология COM (Component Object Model)
    • Программный поток (Program Flow)
    • Создание каркаса (framework) игры
    • Функция assert(). Отлов ошибок и вывод их на экран (Cpp)
    • DirectX Graphics (DirectX 8). Начало работы
    • DirectX Graphics. Библиотека D3DX (DirectX 8)
    • DirectX Graphics (DirectX 8). Создание и рендеринг объектов
    • DirectX Graphics (DirectX 8). Текстурирование
    • DirectX Graphics (DirectX 8). Освещение
    • DirectX Graphics (DirectX 8). Шрифты
    • DirectX Graphics (DirectX 8). Билборды (Billboards)
    • DirectX Graphics (DirectX 8). Частицы (Particles)
    • Оптимизация 3D-приложений
    • DirectX Graphics (DirectX 8). Работаем с вьюпортами
    • DirectX Graphics (DirectX 8). Меши (полигональные сетки)
    • Прогаем RPG - 1. Создаём ядро игры
  • Программируем 3D-шутер от первого лица (FPS) (Win32, Cpp, DirectX9)
    • Устанавливаем Microsoft Visual C plus plus 2010 Express
    • Настройка MS Visual C plus plus 2010 и DirectX SDK
    • Основы языка Cpp
    • Создание приложений (Cpp, Win32)
    • Технология COM (Component Object Model)
    • Программный поток (Program Flow)
    • DirectX Graphics (DirectX 9). Начало работы
    • DirectX Graphics (DirectX 9). Поверхности и растры
    • DirectX Graphics (DirectX 9). Анимированные спрайты
    • Программируем 3D FPS. Часть 1. Создание движка
      • Программируем 3D FPS. 1.1 Проектируем движок
      • Программируем 3D FPS. 1.2 Создаём фреймворк движка
      • Программируем 3D FPS. 1.3 Добавляем поддержку связных списков (LinkedList.h)
      • Программируем 3D FPS. 1.4 Добавляем поддержку менеджеров ресурсов (ResourceManagement.h)
      • Программируем 3D FPS. 1.5 Добавляем поддержку базовой геометрии (Geometry.h)
      • Программируем 3D FPS. 1.6 Тестируем фреймворк движка
      • Программируем 3D FPS. 1.7 Добавляем систему стейтов (State system)
      • Программируем 3D FPS. 1.8 Добавляем пользовательский ввод
      • Программируем 3D FPS. 1.9 Добавляем поддержку скриптов
      • Программируем 3D FPS. 1.10 Добавляем рендеринг
      • Программируем 3D FPS. 1.10 Добавляем рендеринг продолж
      • Программируем 3D FPS. 1.11 Добавляем поддержку шрифтов
      • Программируем 3D FPS. 1.12 Добавляем поддержку звука
      • Программируем 3D FPS. 1.13 Добавляем поддержку игры по сети
      • Программируем 3D FPS. 1.14 Полигональные сетки (меши) и материалы
      • Программируем 3D FPS. 1.16 Управление сценой (Scene Management)
  • Знакомство с XNA Framework и XNA Game Studio
    • Устанавливаем Microsoft Visual C# 2008 Express Edition 9.0
    • Настройка MS Visual C Sharp 2008 и XNA Framework
    • XNA - Оценка производительности
    • XNA - Управление памятью
    • XNA - Способы оптимизации
    • XNA - Создание 3D-объектов
    • XNA - Создание компонентов
  • OpenGL. Уч. курс
    • OpenGL - Библиотека GLUT
    • OpenGL - Библиотека GLH
  • 3D-МОДЕЛИРОВАНИЕ. Уроки
    • Gmax. Уроки
      • Gmax Установка и настройка экспорта .X-файлов
      • Gmax Наложение текстур и материалов
    • 3D Studio Max. Уроки
      • 3D Studio Max 7 Установка и настройка экспорта .X-файлов
    • Anim8or. Уроки
      • Anim8or. Моделируем автомобиль и экспортируем в .X-файл
  • Статьи
  • Книги
    • Игрокодинг
    • DirectX
    • C++
    • 3D Studio Max
    • AI (искусств. интеллект)
    • Игромоддинг
    • Game Design Document
    • OpenGL
    • XNA (PC + XBox 360)
  • Словарь
  • Софт
  • Ссылки
  • Форум

Последние комментарии

  1. Создание приложений (Cpp: Untitled Воскресенье 20 / Сентябрь, 2020 16:27:06 MSK
  2. Программируем 3D FPS. 1.2 Создаём фреймворк движка:
  3. Программируем 3D FPS. 1.2 Создаём фреймворк движка:
  4. Программируем 3D FPS. 1.16 Управление сценой (Scene Management): Untitled Пятница 15 / Май, 2020 14:11:34 MSK
  5. Программируем 3D FPS. 1.16 Управление сценой (Scene Management): Untitled Четверг 07 / Май, 2020 13:01:13 MSK
  6. Программируем 3D FPS. 1.16 Управление сценой (Scene Management): Untitled Среда 06 / Май, 2020 13:17:02 MSK
  7. Программируем 3D FPS. 1.16 Управление сценой (Scene Management):
  8. Об авторах: Untitled Пятница 09 / Август, 2019 20:45:10 MSK
  9. Программируем 3D FPS. 1.1 Проектируем движок: Еще раз спасибо)
  10. Программируем 3D FPS. 1.1 Проектируем движок: Пожалуйста.)

Облако тэгов

  • articles  
  • c++  
  • game  
  • programming  
  • state  
  • visualstudio  
  • windowsgdi  
  • игрокодинг  
  • статьи  

banner
banner
banner

Помочь проекту

yoomoney.ru (бывший Яндекс-деньги): 410011791055108

Поиск

Категории

  • 3D-моделирование
  • C++
  • CSharp
  • DirectX
  • .NET
  • OpenGL
  • XNA
  • ИГРОКОДИНГ: Учебный курс
  • Статьи

Новые статьи

  1. Поверхность DirectDraw
  2. T&L аппаратный
  3. Обёртка, оболочка (функция/структура/класс-*)
  4. Открылась наша группа ВКонтакте
  5. Depth Sorting
  6. Готова статья "DirectX Graphics. Освещение"
  7. Готова статья "DirectX Graphics. Шрифты (Using Fonts)"
  8. Готова статья "DirectX Graphics. Билборды (Billboards)"
  9. Готова статья DirectX Graphics. Частицы (Particles)
  10. Поток вершинный (Vertex stream)

Последние изменения

  1. DirectX Graphics (DirectX 9). Анимированные спрайты
  2. Ссылки
  3. DirectX Graphics (DirectX 9). Начало работы
  4. DirectX Graphics (DirectX 9). Поверхности и растры
  5. Создание приложений (Cpp, Win32)
  6. DirectX Graphics (DirectX 8). Начало работы
  7. Софт
  8. DirectX Graphics (DirectX 8). Шрифты
  9. DirectX Graphics (DirectX 8). Частицы (Particles)
  10. DirectX Graphics (DirectX 8). Билборды (Billboards)
...еще

Igrocoder.ru Концепция и разработка: Артем Томашкевич slymentat@mail.ru Since 2015. Возрастное ограничение: 12+. Все названия программных продуктов, компаний-разработчиков, а также торговые знаки (марки), упоминаемые на сайте, являются интеллектуальной собственностью их владельцев. Powered by Tiki Wiki CMS Groupware https://tiki.org