Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Введение в DirectX  (Прочитано 13329 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Daniloff
Помогающий

ru
Offline Offline

« : 24-02-2010 13:24 » 

Здравствуйте, господа программисты.
Вопрос назрел: скачал DirectX SDK свеженький, а там - примеры на Direct3D, а на DirectDraw что-то не видно...
А мне нужно-то изображение плоское вывести и повращать его по возможности плавненько.

GDI не предлагать! Улыбаюсь
Записан
lapulya
Молодой специалист

ru
Offline Offline

« Ответ #1 : 24-02-2010 13:34 » 

нет в свеженькой версии дро (точнее он конечно же поддерживается, но является устаревшими,  поэтому и примеров нет).
« Последнее редактирование: 24-02-2010 13:37 от lapulya » Записан

С уважением Lapulya
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #2 : 25-02-2010 04:36 » 

Daniloff, https://forum.shelek.ru/index.php/board,44.0.html
тут по директиксу немало обсуждений было
Записан

Daniloff
Помогающий

ru
Offline Offline

« Ответ #3 : 25-02-2010 06:52 » 

Спасибо, я уже кое-что выяснил. Например, что последней версией DirectDraw была седьмая. Только что-то этого 7-го SDK нет нигде Жаль
Все ссылки ведут на microsoft, а там - опаньки Жаль
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 25-02-2010 06:59 » 

Daniloff, так в DirectX же входят множество компонентов, в том числе и DirectDraw. Т.ч. в твоем SDK оно быть должно.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Daniloff
Помогающий

ru
Offline Offline

« Ответ #5 : 25-02-2010 07:53 » 

Действительно, заглянув в ddraw.h обнаружил:
Код:
typedef struct IDirectDraw              FAR *LPDIRECTDRAW;
typedef struct IDirectDraw2             FAR *LPDIRECTDRAW2;
typedef struct IDirectDraw4             FAR *LPDIRECTDRAW4;
typedef struct IDirectDraw7             FAR *LPDIRECTDRAW7;

да и ddraw.lib оказывается, имеется. Еще бы примерчик надыбать Улыбаюсь

И всё-таки:
Цитата
Warning: Microsoft DirectDraw has been deprecated. Deprecated components of Microsoft DirectX 9.0 for Managed Code are considered obsolete. While these components are still supported in this release of DirectX 9.0 for Managed Code, they may be removed in the future. When writing new applications, you should avoid using these deprecated components. When modifying existing applications, you are strongly encouraged to remove any dependency on these components.

Хм, и хоть бы дали ссылку на библиотеку, призванную заменить устаревшую технологию!  Я зол!
« Последнее редактирование: 25-02-2010 08:27 от Daniloff » Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 25-02-2010 09:43 » 

По моему это очевидно — Direct3D.

С переходом от MSDOS к Win9x встал вопрос о быстром доступе к фреймбуферу (рисование через GDI жутко медленное, а машины тогда были слабыми). Для этого и придумали DD. Современные машины даже со встроенным видео неплохо справляются с 3D графикой — надобность в DD отпала.
« Последнее редактирование: 25-02-2010 09:47 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Daniloff
Помогающий

ru
Offline Offline

« Ответ #7 : 25-02-2010 09:56 » 

Эх, откопал пример direct3D, а он под DX8... Попытался восьмерки поменять на девятки - не тут-то было! Там стооолько отличий!  Я шокирован!
Никто не видел пример, как под direct3D v9 работать с плоской картинкой?
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 25-02-2010 10:12 » 

Daniloff, и не меняй - тебе же не требовались всякие там шейдеры...
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #9 : 25-02-2010 10:21 » 

Daniloff, в 9 нет просто плоской картинки вроде бы. Не используй координату Z и всё Улыбаюсь  (вернее, Z==0 всегда сделай)
Записан

lapulya
Молодой специалист

ru
Offline Offline

« Ответ #10 : 25-02-2010 11:16 » 

вот где бродит sss? Ага Короче DX это такая библиотека, что поддерживает (по идеологии) все старые интерфейсы, так что если у тебя есть пример для DD хоть для DX 7 версии, он будет работать, НЕ надо ничего менять! Оставь все как в примере и все будет работать.

Вообще лучше почитать про COM хотя бы асы...
Записан

С уважением Lapulya
Daniloff
Помогающий

ru
Offline Offline

« Ответ #11 : 25-02-2010 11:21 » 

Стал бы я что-то менять, если б пример компилировался без изменений!
Первой строчкой, вызвавшей возражения компилятора, стала #include <d3d8.h>!
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #12 : 25-02-2010 11:23 » 

Daniloff, может они инклуд по другому обозвали, попробуй поиском найти прототипы функций
Записан

Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #13 : 25-02-2010 16:25 » new

Daniloff, попробуй в среде разработки указать директории DirectX первыми для поиска инклюдов(include) и либов(llib).

Я свою batty писал под DirectX 8.0, при этом использовал интерфейсы DirectX 7.0. Сейчас пересобрал с DirectX 9.0 без проблем.
« Последнее редактирование: 25-02-2010 16:28 от Serg79 » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines