Мне кажется, мозг просто с детства привык, увидев 24 или 30 кадров в сек, переключаться в режим «кино» и меньше обращаться внимание на огрехи. А тут вдруг 60 fps, режим не переключился и всё смотрится «театрально».
По себе знаю, что если продолжать смотреть с этим самым motion smoothing, в скором времени мозг перестраивается и снова перестаёшь замечать огрехи, зато когда после этого смотришь 24/30 fps, изображение кажется дёрганным.
Но да, иногда бывают артефакты. Хотя есть некоторые наработки в этом плане, которые уже приближаются к реальному времени по производительности. К примеру Алгоритм от NVidia
Не про Dragon, но по теме:
…
В ночь перед стартом нам пришлось поставить себе клизму, а потом, через соответствующий интервал времени, еще одну. Хотя эти часы нельзя назвать лучшими на моем пути исследователя космоса, проделать эти процедуры было предпочтительнее, чем испачкать подгузник на следующий день. Потом врач взял мазок со всех частей моего тела — за ушами, с языка, из промежности, чтобы проверить, нет ли какой инфекции, и затем протер меня всего спиртом, на всякий случай.
19 декабря я надел голубой летный костюм и отправился на мой последний в 2012 г. завтрак на Земле. Завтрак этот был больше ритуалом, чем приемом пищи. Мы с Томом и Романом ограничились чистой водой и небольшой порцией жидкой овсянки. Ели мы с сардоническими размышлениями о том, что можем увидеть все это снова через несколько часов, ведь послестартовая рвота — обычное дело. И еще мы знали, что отдельного туалета нам не видать в ближайшие два дня, пока мы не доберемся до МКС.
…
Следующее, что нужно убрать, - подгузник. Гордыня заставляет меня сообщить, что своим я ни разу не воспользовался, но те, кому пришлось, были чрезвычайно счастливы его снять.
Теперь на нас оставалось только длинное нижнее белье — 100 %-ный хлопок, потому что в случае пожара он только обугливается, не плавится и не горит. Как правило, астронавты остаются в своих теплых кальсонах вплоть до момента стыковки с МКС. Да и после стыковки переодеваются неохотно и только потому, что там будут ТВ-камеры, ну и чтобы на лицах других членов экипажа МКС не появилось выражение ужаса, когда их будут приветствовать астронавты, наряженные в грязное исподнее. Подход к гигиене на «Союзе» такой же, как в походе с палатками. Правила приличия весьма условны на корабле такого размера; здесь нет, к примеру, отдельного туалета, поэтому, если вам нужно сходить по-маленькому, ваши коллеги по команде просто скромно отворачиваются, пока вы управляетесь со штукой, больше похожей на ручной пылесос с приделанной к нему маленькой желтой воронкой. Пользоваться им достаточно легко: поворачиваете ручку в положение «ON», проверяете, что пошел поток воздуха, и потом держите его поближе к себе, чтобы не обмочить все вокруг. Потом быстро протираете куском марли, и воронка уже сухая.
Ввод-вывод самим реализовывать не нужно, стартовый пакет для языков это уже предоставляет. Тебе дают функцию, где на вход уже прилетели все нужные данные в виде объектов. Т.е. тебе остаётся только саму стратегию написать.
Насчёт геометрии и т.д. — в этом году впервые нам в этом сильно упростили жизнь. А именно, в документации приводились конкретные функции для симуляции мира, коллизий и т.д.
Т.е. точная математическая модель была у всех, кто не поленился просто переписать этот псевдокод на свой язык.
Ну т.е. относительно точная, ибо игровой мир был недетерминирован. Т.е. в некоторые действия был включён рандом в указанном диапазоне.
Нахожу, но слабо представляю, как бы я поступил на месте организаторов.
Ограничение по времени нужно. Но не могут же они делать его разным для разных языков.
А для номинаций по языкам нужен гораздо больший призовой фонд, да и больше активных участников.
tongohiti
Бонус за гол несравнимо выше, чем любой другой бонус. Скажем, это видно на 2:30 в видео из визуализатора. На его фоне бонусы за всё остальное не имеют особого значения.
Я это проверял и экспериментально — пробовал не прерывать траекторию в случае гола и также пробовал досчитывать траекторию до конца по тикам, но «фиксировать» мяч в точке гола.
Оба варианта ничего не дали, так что я вернулся к первоначальному.
Сумма потому, что нас интересует не только куда мяч прилетит, но и как он будет лететь.
Примеров можно привести множество. Ну скажем, в функцию оценки включена позиция мяча по Y. но если мяч не летит на протяжении всей траектории, а скачет по полу, то больший score получила бы та траектория, где конкретно в момент финального тика мяч был выше всего. хотя возможно рядом есть траектория, где мяч вообще не касался земли, но конкретно в момент финального тика он был ниже, чем в первой.
Затухание же нужно для того, чтобы выбирались траектории, которые приводят к результату скорее всего. То есть, скажем, если есть несколько траекторий, которые заканчиваются голом, то благодаря затуханию, те, где гол случается позже, получат меньший score. Что логично, т.к. чем больше тиков до гола, тем больше у противника шансов его отбить.
Другие подходы к вычислению скора не пробовал, т.к. для меня было очевидно, что этот для моего бота сработает лучше всего. Пробовал только в качестве оптимизации считать score не каждый тик. Это значительно ухудшило результат, так что я от этого отказался.
А множитель 0.98 (т.е. затухание в 2%) подобран экспериментальным путём. Причём, изначально было 0.99, и в какой-то момент изменение на 0.98 дало приличный буст к результату.
Да, с движком получилось не очень. Без знания C/C++ я за время чемпионата успел реализовать точную симуляцию с аллокатором, но к тому моменту оставалась пара дней до конца и я не успел написать стратегию.
В итоге времени потратил немало, но так ничего и не залил.
Спасибо за статью, интересно.
И за опыт в C++ спасибо. Давно пора было познакомиться с этим чудесным миром Segfault-ов :)
Подключайтесь, это затягивает :)
Следующий большой чемпионат ожидается в ноябре 2018, но вроде как должен быть мини-raic где-то ориентировочно в феврале (на площадке aicups.ru )
По себе знаю, что если продолжать смотреть с этим самым motion smoothing, в скором времени мозг перестраивается и снова перестаёшь замечать огрехи, зато когда после этого смотришь 24/30 fps, изображение кажется дёрганным.
Но да, иногда бывают артефакты. Хотя есть некоторые наработки в этом плане, которые уже приближаются к реальному времени по производительности. К примеру Алгоритм от NVidia
…
В ночь перед стартом нам пришлось поставить себе клизму, а потом, через соответствующий интервал времени, еще одну. Хотя эти часы нельзя назвать лучшими на моем пути исследователя космоса, проделать эти процедуры было предпочтительнее, чем испачкать подгузник на следующий день. Потом врач взял мазок со всех частей моего тела — за ушами, с языка, из промежности, чтобы проверить, нет ли какой инфекции, и затем протер меня всего спиртом, на всякий случай.
19 декабря я надел голубой летный костюм и отправился на мой последний в 2012 г. завтрак на Земле. Завтрак этот был больше ритуалом, чем приемом пищи. Мы с Томом и Романом ограничились чистой водой и небольшой порцией жидкой овсянки. Ели мы с сардоническими размышлениями о том, что можем увидеть все это снова через несколько часов, ведь послестартовая рвота — обычное дело. И еще мы знали, что отдельного туалета нам не видать в ближайшие два дня, пока мы не доберемся до МКС.
…
Следующее, что нужно убрать, - подгузник. Гордыня заставляет меня сообщить, что своим я ни разу не воспользовался, но те, кому пришлось, были чрезвычайно счастливы его снять.
Теперь на нас оставалось только длинное нижнее белье — 100 %-ный хлопок, потому что в случае пожара он только обугливается, не плавится и не горит. Как правило, астронавты остаются в своих теплых кальсонах вплоть до момента стыковки с МКС. Да и после стыковки переодеваются неохотно и только потому, что там будут ТВ-камеры, ну и чтобы на лицах других членов экипажа МКС не появилось выражение ужаса, когда их будут приветствовать астронавты, наряженные в грязное исподнее. Подход к гигиене на «Союзе» такой же, как в походе с палатками. Правила приличия весьма условны на корабле такого размера; здесь нет, к примеру, отдельного туалета, поэтому, если вам нужно сходить по-маленькому, ваши коллеги по команде просто скромно отворачиваются, пока вы управляетесь со штукой, больше похожей на ручной пылесос с приделанной к нему маленькой желтой воронкой. Пользоваться им достаточно легко: поворачиваете ручку в положение «ON», проверяете, что пошел поток воздуха, и потом держите его поближе к себе, чтобы не обмочить все вокруг. Потом быстро протираете куском марли, и воронка уже сухая.
© Кристофер Хэдфилд, Руководство астронавта по жизни на Земле.
Насчёт геометрии и т.д. — в этом году впервые нам в этом сильно упростили жизнь. А именно, в документации приводились конкретные функции для симуляции мира, коллизий и т.д.
Т.е. точная математическая модель была у всех, кто не поленился просто переписать этот псевдокод на свой язык.
Ну т.е. относительно точная, ибо игровой мир был недетерминирован. Т.е. в некоторые действия был включён рандом в указанном диапазоне.
Ограничение по времени нужно. Но не могут же они делать его разным для разных языков.
А для номинаций по языкам нужен гораздо больший призовой фонд, да и больше активных участников.
Бонус за гол несравнимо выше, чем любой другой бонус. Скажем, это видно на 2:30 в видео из визуализатора. На его фоне бонусы за всё остальное не имеют особого значения.
Я это проверял и экспериментально — пробовал не прерывать траекторию в случае гола и также пробовал досчитывать траекторию до конца по тикам, но «фиксировать» мяч в точке гола.
Оба варианта ничего не дали, так что я вернулся к первоначальному.
Примеров можно привести множество. Ну скажем, в функцию оценки включена позиция мяча по Y. но если мяч не летит на протяжении всей траектории, а скачет по полу, то больший score получила бы та траектория, где конкретно в момент финального тика мяч был выше всего. хотя возможно рядом есть траектория, где мяч вообще не касался земли, но конкретно в момент финального тика он был ниже, чем в первой.
Затухание же нужно для того, чтобы выбирались траектории, которые приводят к результату скорее всего. То есть, скажем, если есть несколько траекторий, которые заканчиваются голом, то благодаря затуханию, те, где гол случается позже, получат меньший score. Что логично, т.к. чем больше тиков до гола, тем больше у противника шансов его отбить.
Другие подходы к вычислению скора не пробовал, т.к. для меня было очевидно, что этот для моего бота сработает лучше всего. Пробовал только в качестве оптимизации считать score не каждый тик. Это значительно ухудшило результат, так что я от этого отказался.
А множитель 0.98 (т.е. затухание в 2%) подобран экспериментальным путём. Причём, изначально было 0.99, и в какой-то момент изменение на 0.98 дало приличный буст к результату.
В итоге времени потратил немало, но так ничего и не залил.
Спасибо за статью, интересно.
И за опыт в C++ спасибо. Давно пора было познакомиться с этим чудесным миром Segfault-ов :)
с\con\con в win95/98 даже по локальной сети работал.
\\ip_address\c\con\con
Мы так развлекались на парах, кидая в синюю смерть соседние компьютеры.
Следующий большой чемпионат ожидается в ноябре 2018, но вроде как должен быть мини-raic где-то ориентировочно в феврале (на площадке aicups.ru )