Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 31.10.2012, 12:28
VoFF4eG VoFF4eG вне форума
Прохожий
 
Регистрация: 26.10.2012
Сообщения: 27
Репутация: 10
Сообщение Получить цвет пикселя (есть проблема)

Приветствую граждане
Пишу программку для распознавания скринов с игры. Игра - онлайн шутер. Скрины то я получаю а вот с распознаванием возникла сложность. Игра вроде работает через DirectDraw и имеет свою защиту. GetPixel при запущенной игре не работает и возвращает один цвет(видимо что то блочит). Может кто подскажет альтернативу GetPixel или еще какой способ обойти эту проблему т.к. в графике я ни как не шарю. Зарание спасибо.
Ответить с цитированием
  #2  
Старый 31.10.2012, 12:58
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от VoFF4eG
Пишу программку для распознавания скринов с игры. Игра - онлайн шутер. Скрины то я получаю а вот с распознаванием возникла сложность. Игра вроде работает через DirectDraw и имеет свою защиту. GetPixel при запущенной игре не работает и возвращает один цвет(видимо что то блочит).
Скрины ты в каком формате получаешь?
Ответить с цитированием
  #3  
Старый 31.10.2012, 13:03
VoFF4eG VoFF4eG вне форума
Прохожий
 
Регистрация: 26.10.2012
Сообщения: 27
Репутация: 10
По умолчанию

Bmp. Мне главное что бы делался скрин(любым способом) и я мог распознавать на нем пиксели. Остальное не важно, дальше уже разберусь.
Может как то по другому нужно выдергивать скрины?
__________________________________
Bmp := Tbitmap.Create;
Bmp.Height := HeightCF;
Bmp.Width := WidthCF;
DC := GetDC(Wnd);
Bitblt(Bmp.Canvas.Handle, 0, 0, WidthCF, HeightCF, DC, 0, 0, SRCCOPY);
_____________________________________
Если игруху закрыть то все норм, но смысл как раз в том что бы ее не закрывать.

Последний раз редактировалось VoFF4eG, 31.10.2012 в 13:10.
Ответить с цитированием
  #4  
Старый 31.10.2012, 13:09
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от VoFF4eG
Bmp. Мне главное что бы делался скрин(любым способом) и я мог распознавать на нем пиксели. Остальное не важно, дальше уже разберусь.
А из этого bmp цвет пикселя получает вот так?:
Код:
var
  bmp: TBitmap;
  Color: TColor;
begin
  Color := bmp.Canvas.Pixels[X, Y];
end;
Ответить с цитированием
  #5  
Старый 31.10.2012, 13:12
VoFF4eG VoFF4eG вне форума
Прохожий
 
Регистрация: 26.10.2012
Сообщения: 27
Репутация: 10
По умолчанию

Нет, то же самое что и при GetPixel
Ответить с цитированием
  #6  
Старый 31.10.2012, 13:15
VoFF4eG VoFF4eG вне форума
Прохожий
 
Регистрация: 26.10.2012
Сообщения: 27
Репутация: 10
По умолчанию

Я так думаю что система защиты игры (античит) что то мутит(блокирует).
Ответить с цитированием
  #7  
Старый 31.10.2012, 13:23
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от VoFF4eG
Нет, то же самое что и при GetPixel
Так значит всё же получить скрины с игры ты не можешь, а выше писал, что просто не получается из скринов получить цвет пикселя.
Цитата:
Сообщение от VoFF4eG
Я так думаю что система защиты игры (античит) что то мутит(блокирует).
Вряд ли. Думаю с помощью кнопки PrintScreen у тебя тоже будет копировать чёрный экран в буфер обмена.
Ответить с цитированием
  #8  
Старый 05.11.2012, 17:09
Anklav Anklav вне форума
Прохожий
 
Регистрация: 10.06.2011
Адрес: Харьков
Сообщения: 22
Версия Delphi: 7
Репутация: 10
По умолчанию

Удалил сообщение. (мой метод уже предлагали)

Последний раз редактировалось Anklav, 05.11.2012 в 17:14.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:54.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter