Pull to refresh

Comments 32

Пока сильно не вчитывался (оставлю на потом), больше пролистал, но результат впечатляет. Моё уважение Автору.
Спасибо! Надеюсь после вчитывания станет только интересней.
Все ждал, когда же, наконец, текст вернется к использованию трекера, но увы. Молодцы, что сделали проект, но название интриговало, а все закончилось на выделении юнитов в первом прототипе, жаль
Полностью вас понимаю, сам ждал, когда же повествование вернется к нему. Но, увы, продолжить исследование применения айтрекинга не было возможности.
После знакомства с научным методом стало понятно, что нельзя сделать всю технологию целиком и оценивать её эффективность, так как количество отличий слишком велико. Задачу необходимо было декопозировать на подзадачи, исследующие каждый фактор в отдельности. Для магистерской работы я взял одну такую подзадачу.
Продолжить было бы интересно. Но тут возникает ситуация целесообразности. Айтрекеры, увы, так и не стали доступными и не получили свое место рядом с вебкой на каждом ноуте.
Поэтому получается решение абстрактной задачи в вакууме для потомков. Я бы и рад таким позаниматься, да кто б посодействовал.
Идея для трекера. Научно/игровая. Минимум кода.
Один стример Starcraft 2 иногда включает АйТрекер, чтобы народ мог понять, куда он смотрит, что отслеживает, где мышь, и тд. Поучиться у хорошего игрока. Меня долго грызла идея, как можно управлять трекером.
Он лучше замещает мышь, но нет возможности кликать. Моргать глазами не вариант, ибо глаза пересохнут/веки устанут. Или обычные моргания будут мешать.
Берем и устанавливаем клик левой мышкой на левую стрелку, правой мышкой на правую, колесо нам не нужно. Ну или на стрелочки вверх-вниз.
И проверяем, насколько успешней человек играет в Варкрафт/Старкрафт (левая рука порхает по ключевым клавишам, правая по ЛКМ, ПКМ стрелок), OSU.
Результат эксперимента (повышение винрейта на 15% будет колоссальным) даст новый пинок развитию АйТрекеров, их удешевлению и встраиванию во всё и для всех. В том числе и ВР.
В конце концов таким способом можно ДЦПшников научить обыгрывать про в CS.
За RTS не скажу, но в FPS подобная система была уже реализована очень давно и называется «автоаим», (кстати, впервые в самом же КС, если не ошибаюсь), где роль АйТрекера на себя берёт само приложение. Но её использование что-то не особо приветствуется.
Спасибо за пост, было радостно вспомнить этот, местами монструозный, проект =)
Опыт конечно был очень интересный. Особенно баги. Они были очень разнообразными и упоротыми. Баги в игропроме наверное одни из самых веселых.

Конечно несколько стыдно за то, что в какой-то момент начал забивать на проект. Не знаю, получилась бы у нас игра мирового масштаба, но довести до полноценной rts с поддержкой eyetracker'а мы точно могли.

Кстати мы даже распечатали нашего орба на 3d-принтере! Можете полюбоваться:
Боевая картошка
image
Очень круто! Тоже не понятно было ли как -то реализовано ещё использование трекера? И интересно — проект совсем умер с уходом других членов команды?
На счет айтрекера ответил выше.

Этот проект загнулся полностью. Слишком трудоемко.
Но он получил некоторое развитие в другую сторону. Сейчас занимаюсь разработкой настольной игры по его мотивам)

Спасибо за статью. Тем не менее, очень интересно было бы почитать про баланс более детально.

Все операции по балансу производились по наитию, никаких материалов на эту тему я не нашел.
Наш баланс состоял из оценки двух составляющих: боевой и ресурсодобывающей (для рабочих).
Для подсчета эффективности в сражениях мы постарались свести множество показателей (радиус атаки, скорость атаки, сила атаки, скорость поворота, скорость передвижения, количество здоровья, броня, время постройки, потребление пищи, стоимость) к одному коэффициенту.
Из защиты и здоровья удобно высчитать EHP – пересчитываем очки брони в пункты здоровья и суммируем с hp юнита.
Следующим логичным действием шел расчет DPS.
Дальше очевидных шагов мы не обнаружили и начали изобретать. Дошли до сочинения эталонного противника (с определенными ehp и dps). При его помощи мы смогли вывести параметр характеризующий атаку. Каждого юнита «установили» спиной к эталону на определенной дистанции и посчитали сколько времени займет у юнита развернуться, доехать и уничтожить цель.
Если в знаменатель поставить EHP, то получится параметр охватывающий все боевые характеристики юнита (ясно что делить время на пункты это диковато, но это был наш путь).
Дальше оставалось связать это с экономическими показателями. В итоге мы смогли все привести к следующему: сколько мы сможем произвести боевой мощи этого юнита за 5 минут.

Высчитав это каббалистическое значения для всех юнитов мы постарались привести эти параметры к значениям соотносящимся с нашей идеей. А далее подкрепили все тестами – оказалось что после применения техники магического коэффициента бои стали более предсказуемыми, а значит и сбалансированными. Хотя, возможно, нам просто так показалось, потому что нам понравилась проделанная работа.
хм, я захотел в это поиграть!

жалко что проект не дожил до реализации

Супер!
Может других заинтересовать в команду и продолжить разработку? Я думаю на Хабре немало тех кто заинтересуется.
Если добваить побольше анимаций, инструментария для того чтобы другие сами могли модифицировать игру(генератор расс, карт, умений, на основе базовых анимаций-генератор юнитов), и еще вишенки сверху… Игра может сама собой раскрутиться. Главное чтобы имела фанов…
А так очень хорошая статья. Особенно интересна коцнепция ,, все есть юниты'', вместо разделения на здания и ,, войска''(время от времени делаю моды для старых ртс, может помочь).
в лаборатории при кафедре появилась техническая новинка — айтрекер

На этой фразе я выпал в осадок. Что это за «политех» и где находится? :)
Питерский. Была прекрасная кафедра информационного дизайна на факультете ИМОП. При ней была лаборатория человеко-компьютерного взаимодействия. В ней была куча всяких интересных устройств – от кинект, 3д принтер, окулус, несколько айтрекеров, огромный изогнутый экран для 3д видео.
Но как обстоят дела сейчас сказать не берусь. Там какие то перестроения произошли – кафедру перенесли на другой факультет и кажется сменили её главу.
Привет питерским!
Я в ЛЭТИ был в аспирантуре и защишался в конце 90-х.
Питер (в частности кафедра БМЭ и ООС, ЛЭТИ), Совет по зацитам и связанный с ними БИМК — был одним из «эпицентров» таких работ.

Отслеживать направление взгляда можно и с обычной веб-камеры — я года 3 назад этим занимался и натыкался на весьма успешные реализации. Гуглить можно по запросу gaze estimation, также многие библиотеки, которые созданы для face pose estimation могут определять направление взгляда.

Вопрос точности и частоты замеров. Какие то устройства позволят определить примерную зону на экране несколько раз в секунду, другие же работают на 500Hz и фиксируют каждую саккаду. Очевидно они подойдут для разных задач.
Пора мне переставать читать Хабр — боюсь залить клавиатуру своими скупыми стариковскими мужскими слезами.

40+ лет назад моими (тогда) студенческими руками молодые доценты делали прототип рабочий макет устройства для отслеживания в реальном времени направления взгляда оператора эргатических систем (так это называлось).
Цель – найти среди остальных раненый танк и удержать выделенным в течении секунды… Гипотеза была в том, что решение этой задачи при помощи айтрекера потребует меньше времени.
Статистика — вещь такая. Обычный пользователь с обычной офисной мышкой и по кнопке навестись не может за короткое время. Но если дать мышку про-геймеру, то он с её помощью любые глаза перекликает.

я разрабатывал игру под кинект про дуэль двух пуджей, где нужно было уклоняться от атак противника и швырять в него свой крюк
Вы про Pudge Wars? А как сделали в итоге интеграцию с интерфейсом warcraft'а? Помню в 2012м году был интересный проект «Reinvent The Craft», он открывал такие возможности в Warcraft'е, которые и не снились обычному мапмейкеру. Там была возможность полного перехвата курсора мыши(можно было легко сделать FPS), можно было устанавливать свои TCP/UDP соединения прямо из игры (можно было делать Online-RPG).
Касательно мыши и глаз. Скорее история о том, что при использовании мыши мы сначала находим объект глазами, а потом уже подводим к нему мышь.
Но вообще забавным будет аргумент, что когда-нибудь появятся прогеймеры на айтрекинговых интерфейсах и вот они прогеймерам на мышах зададут)

Про войны пуджей. Идея, да, с PudgeWars, но к варкрафту не привязывался никак. Сделал стороннее приложение при помощи blender. Увы даже скриншотов адекватных не сохранилось, есть только видос с захватом движений.

Видос

Из JASS в C#? :) Для меня WarCraft тоже когда-то стал мощный толчком для изучения "взрослого программирования", которое началось с написания препроцессора для JASS.

Игра про пуджей была сторонним приложением. Не под варкрафт.

Но вклад WorldEditor'a в свою карьеру я не буду преуменьшать :D

Pudge Wars, как и DotA, изначально был просто картой для WarCraft :)

Вы не так меня поняли. Имел в виду, что я делал стороннюю игру про пуджей с управлением через кинект, а не старался подвязаться к варкрафту.

Все, теперь понял. Немного потерял нить разговора. Изначально просто делился своей историей прихода в программирование через редактор карт и их язык программирования :)

Спасибо за статью, а сколько времени в день уделялось проекту, если не секрет?
Первые пару месяцев я параллельно работал и уделял проекту по паре-тройке часов каждый второй день. Потом осознал, что такими темпами не закончу его на должном уровне. Поэтому уволился и полностью сосредоточился на дипломе, посвящая ему все свое время.
Добрый день. Сразу хотелось бы сказать спасибо за то, что статья оказалась интересной, несмотря на то, что она закончилась таким образом.
Жаль, что довести эксперимент до конца не удалось, однако и без этого вы достигли отличных результатов. Далее два вопроса.
Можно ли где-то в сети раздобыть это чудо (игру) дабы попробовать, что у вас получилось, либо же проект оставлен в какой-то папке одного из членов команды до её удаления (хотелось бы в ответе услышать о первом, но мало ли).
Второй же вопрос иного плана. Нет ли желания собрать новую команду энтузиастов? Готов поспорить, что среди прочитавших эту статью найдётся не один доброволец. К сожалению я себя к таким отнести не могу ибо в данный момент не имею ПК в распоряжении, но очень хотел бы принять участие, будь у меня такая возможность.
Все обыскал, но билда так и не нашел. Увы.

На счет второго — да, конечно можно собрать людей, но в таких ситуациях встает вопрос своевременности. Тогда горел этой идеей, сейчас в голове другие мысли и проекты.
Собирайте свои идеи, товарищей и воплощайте свои идеи)
Sign up to leave a comment.

Articles