Окно в DirectX

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Окно в DirectX

Сообщение Cytron » 17.02.2007 (Сб) 20:58

Здравствуйте!
Помогите, кто знает, пожалуйста! :D
Как отображать окно, как бы ето выразиться, поверх окна DirectX?
Ну например запущена игра, а я хочу отобразить в ней СВОЁ окно. Или хотя бы как рисовать в чужих директ x окнах?
Попробовал setwindowpos (HWND TOPMOST) не помогло- окно промелькивает, но редко. :?: :?: :?:

да и забыл добавить окно direct x - с direct 39 версии 9.

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 18.02.2007 (Вс) 1:05

Отоброзить форму поверх фуллскрин-окна ДХ нельзя. Только с глюками и мерцанием.

Нарисовать что то своё в ДиректХ приложении можно (но сложно).
Нужны как минимум дискрипторы всех устройств ДХ, используемых именно этой игрой.

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 18.02.2007 (Вс) 11:05

Спасибо.
А как их, эти дескрипторы, получить? :roll:
Да и хоть сложно, пожалуйста, обьясните КАК очень надо! :D

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 18.02.2007 (Вс) 21:28

Ну, что, никто не умеет? :cry:

d3drm
Астролог
Астролог
Аватара пользователя
 
Сообщения: 2873
Зарегистрирован: 29.05.2002 (Ср) 23:34
Откуда: МаСКвА

Сообщение d3drm » 18.02.2007 (Вс) 22:56

проблема неразрешима, так как даже зная все дескрипторы при попытке что-то нарисовать будет конфликт между программами, то есть ты не сможешь угадать в какой момент устройство готово рисовать, а в какой - оно закрыто для вывода графики. Так что забудь =)
ХЎ

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 19.02.2007 (Пн) 1:20

А тот же фрапс как рисует фпс?

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 19.02.2007 (Пн) 2:32

nekeda
Не окном - это точно!
Cytron
Рисуй через DX
2All
А вы говорили что ценность контролов на DX, позволяющий делать интерфейс как в винде = 0.
#define ROFL 0xDDDD

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 19.02.2007 (Пн) 8:26

Никто и не говорит, что окном. Ты вообще понял о чём речь? Причём тут контролы на DX, позволяющие делать интерфейс как в винде?

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 19.02.2007 (Пн) 14:39

Поймите вы, я в Direct X полный ноль! кто нибудь знает где найти материал, или, может, есть готовый пример? ЗАДАЧА РАЗРЕШИМА, Прога на VB это делала! :?

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 19.02.2007 (Пн) 23:47

nekeda
Я понял о чём речь. Я просто привел пример что такое нужно, причём уже чаще чем раньше.
Cytron
Покажи эту прогу. Как мы можем сказать, как она это делала, если даже не видим исходной программы(не кода).
#define ROFL 0xDDDD

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 20.02.2007 (Вт) 0:13

DirectXManiac
а может ты блондинко? у тебя как с логическими построениями?

Перечитай ещё раз первый пост, и подумаай зачем в этой теме писать про "контролы на DX, позволяющий делать интерфейс как в винде"

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 20.02.2007 (Вт) 14:51

Пересылаю прогу.
Да, вижу через Dependency Viewer что она подключена помимо MSVBVM60.DLL к DX8VB.DLL. Как подключить библиотеку так, чтобы она прикреплялась к приложению при старте? То есть чтоб в том же Dependency Viewer было видно эту библу?
Вот прога (SACAMHACK. там есть спидометр для игры GTA San Andreas и Камера хак для нее:
Вложения
sacamhack.zip
San Andreas Camera Hack With Speedometer
(77.38 Кб) Скачиваний: 106

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 20.02.2007 (Вт) 16:12

nekeda
а может ты блондинко?

Не, ЙА КРИВЕТКО! :lol:
Я конечно же ступил! :oops:
Cytron
через References вроде будет видно!
#define ROFL 0xDDDD

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 20.02.2007 (Вт) 16:57

ну ладно. 8)
А по САБЖУ кто мне поможет? :o

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 21.02.2007 (Ср) 5:32

Cytron
Кто тебе сказал что она рисует окно? Она рисует DX-ом скорее всего!
#define ROFL 0xDDDD

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 21.02.2007 (Ср) 19:32

Cytron писал(а):Поймите вы, я в Direct X полный ноль! кто нибудь знает где найти материал, или, может, есть готовый пример? ЗАДАЧА РАЗРЕШИМА, Прога на VB это делала! :?

Ну а как рисовать DX-ом? Я ноль в directx!!! :oops: :cry:

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 21.02.2007 (Ср) 19:53

DirectXManiac
Можешь дать пример как с помощью DX хотя бы текст писАть, дальше сам додумаю)))

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 22.02.2007 (Чт) 6:26

Cytron
Ок! Сделаю! Хотя можешь зайти сюда Точно получиться! Пример сворганю!
[Add]
Сделал пример.
[/Add]
Вложения
4Cytron.rar
Вот пример. Пишет текст. Рисует 3 линий с градиентом в окне!
(3.2 Кб) Скачиваний: 68
#define ROFL 0xDDDD

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 22.02.2007 (Чт) 9:00

DirectXManiac Спасибо огромное!
Да и еше: Можно как нибудь отобразить изображение: JPEG, там например, в DX? Чего то у меня не получается. Как то это вроде же делается с помощью указания изображения как текстуры? :roll:
ADD
ЗЫ Главный вопрос Как рисовать в чужом окне?
Когда я пытаюсь изменить hwnd на hwnd другого окна у меня вылетает automation error как только я пытаюсь переключиться на него :cry: Что нужно изменить?

X-hacker
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 26.08.2006 (Сб) 1:22
Откуда: Moldova

Сообщение X-hacker » 23.02.2007 (Пт) 18:37

Cytron
А ты как переключался?

Код: Выделить всё

Private Sub Timer1_Timer()
    Dim Ret as Long
    Ret=FindWindow(vbNullstring,"Диспетчер задач Windows")
    if Ret<>0 then call ShowWindow(Ret,1)  'Получится
    Form1.hWnd=Ret   'HEПолучится (Automation Error)
End Sub   


Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 23.02.2007 (Пт) 18:41

Я несколько лет знаю vb и практически с самого начала знал что такое hwnd для чего он нужен и является ли readonly :wink:
Да: приложение то, в котором мне хочется рисовать, полноэкранное. В примере DirectXManiac я включил полноэкранный режим теперь automation error не вылетает, но появляется черный экран на нем текст. почему текст появляется не в том приложении? :(

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 24.02.2007 (Сб) 14:59

Cytron
Надо рисовать 2 треугольника с текстурными координатами
00 10
10 11
и натягивать на них текстуру!
#define ROFL 0xDDDD


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26

    TopList