| Зачем нужен DirectX 7 в VB? |
|
Какая новость! С ума сойти! Теперь программирование DirectX возможно на все более и более популярном языке программирования Visual Basic! И все благодаря тому, что корпорация Microsoft включила поддержку Visual Basic в очередную версию интерфеса программирования игр и мультимедиа приложений - DirectX 7 !!! Вот официальные улучшения, внесенные в DirectX7. Это относится ко всему DirectX, а не только к Visual Basic. Весь Copyleft на нижеследующие строки принадлежит Microsoft.
В полной мере все эти нововведения может испытать, пожалуй только Билл Гейтс со своей восьмикнопочной мышью, да еще программирующие на Си и скачавшие маааленькую DirectX SDK на 200 мегов с официального сайта Microsoft. Ну скачает обыкновенный российский программер на VB эту ихнюю SDK, и что там найдет? Кучу документации по Си, чуть чуть по VB, по которым все равно ничего не выучишь, несколько примеров, которые все равно непонятные и это не говоря о том, что надо будет в совершенстве владеть английским языком. А когда он обнаружит, что для любимого дела, то-есть для программирования на Visual Basic и использования DirectX ему будет нужна всего лишь маленькая библиотека, которая к тому же входит в состав обычной установки DirectX7, которая сейчас все чаще встречается на дисках с игрушками... Я бы не мешкая снес эту кучу мукулатуры с моего винчестера. Пусть лучше место под программы останется. Итак, для того, чтобы начать программировать DirectX 7 на VB вам нужно:
Как всегда, не посоветовавшись с коллективом трудящихся, Microsoft сделала все по своему. Не обратив внимание, что уже несколько лет программисты на VB прекрасно обходились библиотеками Patrice Scribe, Microsoft написала свои процедуры работы с DirectX и теперь тем, кто раньше уже работал с DX, придется немножко переучиться. После беглого просмотра, я отметил, что от техники, которая использовалась в DirectX 3-6 TLB, DirectX 7 отличает в главной степени инициализация. Все функции типа Блиттинга, переноса изображения и т. п. остались вроде как не тронутыми, поэтому далее я их не разбираю. Создание моего сайта пришлось на "переходный период", когда DX7 только появился, поэтому на настоящий момент все учебники по DirectDraw используют PS-TLB, а остальные DX7, поэтому я дам краткий обзор, как в DD перейти к DX7. Сравнение инициализации Scribe-DirectDraw и DirectDraw7:Объявления переменных: Практически аналогично в обоих случаях. Однако в DX7 кроме объекта DirectDraw, объектов поверхностей (буферов) и структуры описания поверхности надо объявить главный объект DirectX. Dim dd As DirectDraw В DirectX7 это делается так: Dim dx As DirectX7 Далее, надо создать объект DirectDraw, установить режим отношения программы с другими приложениями (Coopeartive Level) и режим экрана. В DirectDraw7 объект DirectDraw создается из объекта DirectX. Call DirectDrawCreate(ByVal 0&, dd, Nothing) 'Создаем DirectDraw Теперь, DirectX7 Set dd = dx.DirectDrawCreate("") 'Создаем DirectDraw Теперь надо задать описание главной поверхности, создать ее и получить задний буфер. 'Create a front surfaces DirectDraw7: 'Create a front surfaces Set Primary = dd.CreateSurface(ddsd) 'Retrieve BackBuffer После этого можно установить ColorKey и другие дополнительные параметры. Как видите, смысл один и тот же, а разница скорее в синтаксисе, что однако довольно неприятно. Так что, для какого DirectX программировать решать конечно же вам. По крайней мере уже целая толпа, пожав плечами отправилась юзать новое детище Microsoft... Автор:
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
|