Получение информации о пикселе из игры - C#
Формулировка задачи:
Здравствуйте, у меня есть два вопроса, на которые я пытаюсь найти ответ, возможно вы мне поможете:
Вопрос первый: Существует ли способ получить информацию о пикселе (цвет) из игры, работающей в полноэкранном режиме (Direct3D)?
Вопрос второй: Существует ли способ получать эту информацию скажем 30 раз в секунду, не вызывая при этом значительное замедление работы игры?
В данный момент я худо-бедно разобрался лишь в одном способе, он работает лишь для оконного режима и увы вызывает тормоза:
Если я правильно понимаю (если не правильно - объясните пожалуйста) - в данном способе создаётся точечный рисунок размером 1*1 px и в него записываются данные о цвете пикселя, находящегося в месте курсора, которые затем выводятся на консоль. Вопрос - как с помощью данного способа запросить информацию о конкретном пикселе на экране - например x=500 y=500? Иными словами как в GetPixel(Point position) задать этот самый Point position вручную, а не с помощью Cursor.Position
----------
P.S. Нет, не бот. Просто автоматизация нажатия нужной клавиши, на основании полученной с экрана информации. Работает в связке с UserActivityHook.cs
Да, практически все темы касающиеся этого вопроса на этом форуме я прочёл, но не всё понял.
using System; using System.Drawing; using System.Windows.Forms; class Program { static Color GetPixel(Point position) { using (var bitmap = new Bitmap(1, 1)) { using (var graphics = Graphics.FromImage(bitmap)) { graphics.CopyFromScreen(position, new Point(0, 0), new Size(1, 1)); } return bitmap.GetPixel(0, 0); } } static void Main() { Console.WriteLine(GetPixel(Cursor.Position)); } }
Решение задачи: «Получение информации о пикселе из игры»
textual
Листинг программы
regsvr32.exe "полный путь к dllке\AutoItX3.dll"
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д