В работе
Строится сейчас.
- Подгонка физики Pavo20 Pro и Pro II под реальные дроны: инструменты для blackbox-логов и импорт дампа Betaflight готовы, ждём логи с реальных дроновВ работе
FPV-симулятор с открытым кодом · лицензия MIT
ShramkoGSFPV превращает более 1300 сканов Gaussian Splatting из SuperSplat в места, где можно летать: настоящие комнаты, улицы и сады со стенами, в которые по-настоящему врезаешься, рейты и PID как в Betaflight и ваша аппаратура по USB или сенсорные стики. Ничего не нужно устанавливать.
Лучше всего работает в Chrome или Edge на компьютере с WebGPU.
Видео: полёт в сцене «Тунис — улочки старой медины», скан: Andrii Shramko, CC BY 4.0, записано в симуляторе. Полететь в этой сцене: Тунис — улочки старой медины
01Новое: места для полётов
Настоящие комнаты, сады, улицы и храмы, отсканированные людьми по всему миру и опубликованные со стенами, в которые врезаешься. Пусть симулятор выберет сам, меняйте место после каждого краша или добавьте свой скан.
Вкладка SuperSplat в симуляторе показывает каждый публичный скан со стенами — с сортировкой, фильтрами и поиском самого superspl.at.
Отметьте звёздочкой понравившиеся сканы, включите «Следующая сцена после краша», и каждый краш переносит вас в другое место в случайном порядке: из избранного, из уже облетанных или из подборки Андрия.
N — следующая сцена, Shift+N — случайная, Shift+F — следующая избранная. Страница не перезагружается, аппаратура остаётся подключённой.
Опубликуйте скан на SuperSplat или возьмите любой публичный и вставьте ссылку здесь или в симуляторе.
Один из 200 самых любимых сканов со стенами на SuperSplat, выбранный случайно.

Видео: полёт в сцене «Зимний сад — Ястшембя-Гура, Польша», скан: Andrii Shramko, CC BY 4.0, записано в симуляторе. Полететь в этой сцене: Зимний сад — Ястшембя-Гура, Польша
02Новое: масштаб сцены
Две клавиши масштабируют всю сцену вокруг дрона — от ×0,25 до ×100. На ×100 вы размером с комара: стул — это многоэтажка, щель под кроватью — каньон. Нырните вдоль ножки стула — это потрясающее ощущение.
Макро-сканы тоже работают: растение, игрушка или насекомое — маленький настоящий предмет, поэтому увеличьте его в ×3–×10 раз и летайте как по большому зданию — среди листьев или вокруг мухи. Такие сцены могут стартовать уже увеличенными, а [ и ] меняют размер в любой момент. И наоборот: уменьшите город (до ×0,25), чтобы он выглядел как макет, и летайте по нему на микродроне.
Откроется комната виллы Андрия; жмите ], пока стол не станет мостом.

Видео: полёт в сцене «Вилла Modlinek — красная комната и ванная», скан: Andrii Shramko, CC BY 4.0, записано в симуляторе. Полететь в этой сцене: Вилла Modlinek — красная комната и ванная
03Внутри симулятора
Каждая картинка на этой странице — настоящий скриншот живого симулятора: всего 39, сняты 2 октября 2026 г. скриптом из репозитория, поэтому их можно переснять после каждого релиза.


Подключите аппаратуру EdgeTX — нарисованная аппаратура проведёт по шагам: стик за стиком, затем тумблер арма, а перед полётом — проверка каждого канала. Каждый шаг ждёт, пока вы действительно сдвинете стик.


По умолчанию у всех Angle с автовыравниванием; плашка на экране, M или тумблер на аппаратуре включают Horizon или Acro. Аппаратуры под рукой нет? Клавиатура показывает все свои клавиши, на сенсорном экране появляются стики, а геймпад подключается через браузер (на реальном железе ещё не проверен).


Вупы класса BetaFPV, 5-дюймовые фристайл и гоночный квадрокоптеры и синелифтер X8 с кинокамерой, и у каждого числа в карточке указан источник. Вставьте diff из CLI Betaflight — и летайте со своими рейтами и PID.


Врезались в стену — дрон разбивается на той скорости, с которой ударился, обломки кувыркаются; через две секунды он снова в воздухе, на 5 с назад по траектории и всё ещё в арме. Выключить краши, задать задержку и место возврата можно в настройках.


OSD как в очках, угол обзора и наклон камеры. F9 пишет видео 60 fps на сканах Андрия с указанием автора в кадре, автозапись сохраняет каждый полёт в вашу папку, а лог полёта превращается в видео 60 fps до 4K.


Выберите один из более чем 1300 сканов со стенами во вкладке SuperSplat с её фильтрами, скан Андрия или вставьте ссылку и следите за загрузкой в реальных цифрах. N, Shift+N и Shift+F меняют сцену прямо на странице, аппаратура остаётся подключённой; [ и ] масштабируют сцену от ×0,25 до ×100.


Покажите стены, в которые врезаетесь, воксельной сеткой поверх скана или летайте по одной сетке. Шумный скан? Уберите летающие крошки — стены-призраки — с живым предпросмотром или выключите стены для всех сцен.


Все настройки на одном экране, сохраняются между визитами, с экспортом, импортом и сбросом. При дизарме карточка как в очках показывает полёт, а на паузе панель итогов — его статистику, все пункты меню и все клавиши.
04Что можно настроить
Аппаратура, дроны, физика, сцены и видео: каждая опция, которая уже работает на сайте, то, что строится прямо сейчас, и то, что будет следующим.
«Готово» — значит, этим можно пользоваться на сайте уже сегодня. Как проверяли каждое устройство: Работает с вашей аппаратурой.
Строится сейчас.
Принято и стоит в очереди на следующие версии.
Есть идея для симулятора?
Принятые идеи попадают в этот список с пометкой «Идея пилота», без имён.
05Каждый экран
Каждый экран меню паузы, мастер калибровки, воксельная сетка, краши, режим кино и вид на телефоне. Каждое меню показано само по себе; откройте любую картинку, чтобы увидеть весь экран.
06Как это работает
Без аккаунта и без скачивания. Сцена подгружается прямо из SuperSplat в ваш браузер.
01
Выберите один из более чем 1300 сканов со стенами во вкладке SuperSplat симулятора, скан Андрия или вставьте ссылку на любую публичную сцену SuperSplat.
02
Подключите аппаратуру EdgeTX в режиме USB-джойстика (WebHID), возьмите геймпад или летайте на сенсорных стиках.
03
Один раз подвигайте стиками для калибровки, заармьтесь с газом в ноль — как на настоящем коптере — и вперёд.
07Почему это ощущается по-настоящему
Собственная модель полёта — четыре мотора, миксер и PID по угловой скорости — внутри реальной геометрии скана.
На каждом шаге физики корпус дрона протягивается по воксельным данным коллизий скана, поэтому быстрый коптер не проскочит тонкую стену между кадрами.
Сильный удар — и коптер кувыркается, разбрасывая обломки. Лёгкое касание — и он скользит вдоль стены.
Кривые рейтов Betaflight, Actual, KISS и Raceflight совпадают с кодом Betaflight 4.5.1 с нулевой ошибкой в 1880 точках, если обе стороны считаются в двойной точности (во float32 расхождение не больше 0,00063 °/с).
Полёт записывается как движения стиков и воспроизводится детерминированно: одни и те же входы всегда дают один и тот же полёт.
Земля, Луна, Марс или невесомость. На Луне тот же дрон становится невероятно дёрганым — переключатель «сохранять тяговооружённость» его усмиряет.
Коптер по умолчанию
У каждого числа указан источник.
«Класс» означает, что числа взяты из открытых характеристик и замеров. BetaFPV этот пресет не одобрял.
08Каталог настроек
Собирается при каждом релизе из схемы настроек самого симулятора: ровно то, что можно изменить сегодня, без обещаний и выдумок. Ищите или фильтруйте по группам.
Показано: 74 из 74
Значения «для каждого дрона» хранятся отдельно для каждого дрона, «для каждой сцены» — для каждого скана.
Angle выравнивает дрон, когда отпускаете стики; Horizon тоже выравнивает, но на полном стике делает флипы; Acro держит положение, как фристайл-квад. Меняется клавишей M или кнопкой режима на экране; если на пульте назначен тумблер режимов, решает он.
flight.modeОткрыть в симуляторе
Насколько дрон наклоняется в режиме Angle при стике до упора: больше наклон — больше скорость. angle_limit из Betaflight (по умолчанию 60°).
level.angleLimitDegОткрыть в симуляторе
Насколько твёрдо режим Angle выравнивает дрон и следует за стиком: больше — резче. Сила Angle из Betaflight (angle_p_gain, по умолчанию 50): при 100 дрон набирает половину наклона стика примерно за 70 мс вместо 100.
level.strengthОткрыть в симуляторе
Насколько твёрдо режим Horizon выравнивает дрон у центра стика: больше — выравнивает сильнее. Сила выравнивания Horizon из Betaflight (по умолчанию 75).
level.horizonStrengthОткрыть в симуляторе
Выкл.: удар о стену только отталкивает дрон, моторы крутятся дальше. Вкл.: сильный удар — краш.
crash.enabledОткрыть в симуляторе
Скорость удара, выше которой касание считается крашем; более медленные касания скользят вдоль стены.
physics.vCrashОткрыть в симуляторе
Вкл.: после краша дрон возвращается сам, ничего нажимать не нужно. Выкл.: панель краша ждёт вашего выбора.
respawn.autoОткрыть в симуляторе
Сколько показывается краш, прежде чем дрон вернётся.
respawn.delaySОткрыть в симуляторе
На несколько секунд назад по вашей траектории или на старт.
respawn.targetОткрыть в симуляторе
На сколько секунд назад по траектории появляется дрон: после краша, когда застрял, и по Y.
respawn.rewindSОткрыть в симуляторе
Дрон появляется на невидимой площадке на этой высоте и стоит на ней с моторами, пока вы не взлетите.
respawn.platformОткрыть в симуляторе
Если тумблер арма остался включён, дрон заармлен сразу после респауна — щёлкать тумблером не нужно.
respawn.keepArmedОткрыть в симуляторе
Лежит вверх ногами или застрял и не двигается — дрон сам возвращается на несколько секунд назад, как в Liftoff.
respawn.unstuckОткрыть в симуляторе
Когда аккумулятор снова полный.
battery.refillОткрыть в симуляторе
Насколько широко видит FPV-камера. У каждого дрона своё значение; изменение никогда не сдвигает дрон.
camera.fovDegОткрыть в симуляторе
Насколько FPV-камера наклонена вверх; больший наклон — для быстрого полёта. У каждого дрона своё значение.
camera.uptiltDegОткрыть в симуляторе
Экранная информация: арм, режим полёта, батарея, скорость и высота. H на время прячет весь текст с экрана полёта.
display.hudОткрыть в симуляторе
Меняет разрешение рендера и бюджет детализации. Физика всегда считается на 1000 Гц.
display.qualityОткрыть в симуляторе
Как рисуется скан. «Авто»: пресет вашего устройства (строка под этой говорит, какой выбран), обычно классическая сортированная отрисовка — гладкая, сохраняет детали скана; владелец сайта может менять пресеты. «Стохастическая» не сортирует сплаты и усредняет шумную картинку по кадрам (собственный рендерер SuperSplat): когда камера стоит, за несколько секунд она устанавливается на сортированную картинку, но в полёте, в помещениях, она заметно шумнее и мягче «Сортированной». На мощной видеокарте на практике она не быстрее, а в 4K занимает больше видеопамяти. «Сортированная» — классическая, гладкая. Ссылка с ?stochastic (или ?stochastic=0) выполняется при открытии сцены; выбор здесь во время полёта главнее для этой сцены. Стохастической нужен WebGPU в браузере на компьютере. Запись и экспорт видео всегда рисуют сортированно.
display.drawingОткрыть в симуляторе
Сколько миллионов сплатов скан может рисовать самое большее. «Авто» берёт ?budget= из ссылки, выбор владельца сцены или пресет этого устройства (см. строку «Рендер»). ?budget= из ссылки выполняется при открытии сцены; выбор здесь во время полёта главнее для этой сцены. Больше сплатов — чётче и медленнее; регулятор качества всё равно снижает бюджет, если кадры теряются. Поставьте то, что тянет ваше устройство: значение действует и на телефоне, и на планшете, и вверх, и вниз (число из ссылки или из сцены — нет).
display.budgetОткрыть в симуляторе
За какое устройство пресеты отрисовки сайта принимают это. «Авто» определяет по браузеру (видеоадаптер, память, ядра процессора, сенсорный экран и размер экрана); если угадал неверно, назовите класс сами, например ноутбук, который должен рисовать как мощный компьютер. Класс задаёт пресет, который значит «Авто» в «Рендер» и «Бюджет сплатов»: отрисовка, бюджет сплатов и разрешение. «Рендер» и «Бюджет сплатов» по-прежнему можно задать вручную.
display.deviceClassОткрыть в симуляторе
Более спокойная камера краша без вспышек; по умолчанию как в системе.
display.reducedMotionОткрыть в симуляторе
Частота экрана, время кадра и задержка от ввода до экрана поверх вида полёта. F3 переключает.
display.frameStats
Английский, испанский, польский или русский; по умолчанию язык страницы.
ui.languageОткрыть в симуляторе
Метка в центре картинки, чтобы целиться в проём. По умолчанию выключен, как в настоящем FPV. Никогда не попадает в ваши видео и прячется в режиме кино.
crosshair.shapeОткрыть в симуляторе
В долях короткой стороны экрана: на телефоне и на большом мониторе он выглядит одинаково.
crosshair.sizeОткрыть в симуляторе
Выберите тот, что хорошо виден на вашем скане.
crosshair.colorОткрыть в симуляторе
1 — сплошной; меньше — сквозь него виден скан.
crosshair.opacityОткрыть в симуляторе
Свист четырёх моторов и шум пропеллеров в такт газу. Тишина на паузе и после краша. Страница может включить звук только после первого клика или нажатия клавиши.
sound.motorsОткрыть в симуляторе
Насколько громко звучат моторы.
sound.volumeОткрыть в симуляторе
Какой стик — газ на рисунках калибровки: Режим 2 слева, Режим 1 справа.
input.stickMode
Лёгкая игра: без арма (первая клавиша или касание запускает моторы). На клавиатуре дрон летает как в игре: щёлкните, чтобы захватить мышь, движением мыши поворачивайтесь и смотрите вверх и вниз, W A S D — движение, Пробел — вверх, Shift — вниз, а когда вы всё отпустили, дрон останавливается и зависает на месте. На сенсорном экране: стики с помощью по высоте и школа пилотов. Пилот: как с аппаратуры — кнопка АРМ или Пробел, газ остаётся там, где его оставили, клавиши в Mode 2 (W/S газ, A/D рыскание, стрелки тангаж и крен). Аппаратура или геймпад всегда летают как аппаратура.
input.playОткрыть в симуляторе
Дрон сам держит высоту; вверх и вниз (левый стик на сенсорном экране) поднимают и опускают с постоянной скоростью. Работает только в режиме angle: в horizon и acro дрон может перевернуться, там летит ваш газ. Шаг 1 школы пилотов. Клавиши как в игре на клавиатуре всегда держат высоту.
input.altitudeHelpОткрыть в симуляторе
Короткая вибрация при краше на сенсорных стиках, на телефонах, которые это позволяют (большинство Android; не iPhone).
input.hapticsОткрыть в симуляторе
Насколько поворачивается дрон и наклоняется камера при движении мыши. 1 — это 0,1 градуса на каждый пиксель движения. Работает с клавишами как в игре, пока мышь захвачена (щёлкните по картинке).
input.mouseSensitivityОткрыть в симуляторе
Выкл.: движение мыши от себя — взгляд вверх, как в большинстве игр. Вкл.: взгляд вниз, как при ручке, взятой на себя.
input.mouseInvertYОткрыть в симуляторе
Как быстро летят W A S D и Пробел / Shift: медленно — 4 м/с вбок и 3 м/с вверх, обычно — 8 и 5, быстро — 14 и 8. Маленький дрон не всегда достигает быстрой скорости: он летит так быстро, как позволяют его наклон и воздух.
input.gameSpeedОткрыть в симуляторе
Карточка с клавишами или стиками того устройства, которым вы летите: на клавиатуре Пробел — вверх, Shift — вниз, плюс мышь и W A S D. Показывается один раз при каждом открытии симулятора. «Больше не показывать» на карточке отключает её и здесь; K или меню паузы вернут её, когда нужно.
input.howToFlyОткрыть в симуляторе
Один из пресетов: вупы класса BetaFPV, 5-дюймовые фристайл и гоночный квадрокоптеры, синелифтер X8 с кинокамерой; у каждого числа на его карточке указан источник. У каждого дрона свои настройки.
drone.current
Что кинолифтер несёт под рамой. iFlight продаёт Taurus X8 без камеры и допускает до 3 кг; моторы остаются прежними, поэтому масса, тяговооружённость и газ зависания меняются вместе с камерой. Выбирается в 3D-виде выбора дрона; остальные дроны это игнорируют.
drone.payload
Земля 9,81, Луна 1,62, Марс 3,72, невесомость или любое значение между ними.
physics.gravityОткрыть в симуляторе
Те же моторы (честно), тяговооружённость как на Земле или автогаз, который висит при стике в центре.
physics.gravityModeОткрыть в симуляторе
Максимальная тяга, делённая на вес; пресет берёт её у производителя или из оценки.
physics.twrОткрыть в симуляторе
Как быстро моторы набирают новые обороты; меньше — резче отклик.
physics.tauMsОткрыть в симуляторе
Масштабирует сопротивление воздуха рамы: больше сопротивление — дрон тормозит раньше.
physics.dragScaleОткрыть в симуляторе
Сопротивление роторов и дактов, гасящее скорость и раскачку синевупа.
physics.ductDragОткрыть в симуляторе
Масштабирует инерцию вращения пропеллеров: больше инерция — мягче газ и повороты.
physics.propInertiaОткрыть в симуляторе
Сколько тяги теряет дрон и как сильно трясётся, пока проседает в собственный поток от винтов (когда ловишь нырок или быстрое падение). 1 = как в пресете, 0 = выключено. У вупов в симуляторе пропвоша нет.
physics.propWashОткрыть в симуляторе
Обороты моторов при нулевом газе, как DShot idle value в Betaflight.
physics.idlePctОткрыть в симуляторе
Движущийся воздух, как на улице: он толкает дрон и сносит его, выше над землёй дует сильнее и налетает порывами. Ветер скана — тот, что автор или админ задал для этого места; «сейчас на месте» — настоящий ветер, который дует там прямо сейчас (для сканов с известным местом); свой — твой собственный ветер для этого скана.
wind.modeОткрыть в симуляторе
Откуда дует ветер, в градусах по компасу: 0 — север, 90 — восток, 180 — юг, 270 — запад. Если у скана не задано, где север, 0 — направление, куда скан смотрит в начале.
wind.fromDegОткрыть в симуляторе
Средняя скорость на высоте 10 м, как в прогнозе погоды. У земли ветер слабее, выше — сильнее. Маленькому вупу тяжело уже при 8–10 м/с.
wind.speedОткрыть в симуляторе
Насколько ветер усиливается и стихает вокруг средней скорости. Порывы налетают и уходят за несколько секунд; 0 — ровный ветер.
wind.gustОткрыть в симуляторе
P, I, D и feed-forward для крена, тангажа и рыскания, для каждого дрона, как в Betaflight.
tune.pidОткрыть в симуляторе
Кривые стиков для каждого дрона: Betaflight, Raceflight, KISS, Actual или Quick, с числами как в Betaflight. Меняйте их здесь или импортируйте из diff в CLI Betaflight; «Копировать для CLI» перенесёт те же рейты на ваш дрон.
tune.ratesОткрыть в симуляторе
Throttle mid и expo, как в Betaflight, для каждого дрона.
tune.throttleОткрыть в симуляторе
Вкл.: после краша вместо респауна загружается следующая сцена, и вы стартуете с её площадки. Пульт остаётся подключённым.
scenes.autoSwitchОткрыть в симуляторе
Откуда берутся N (следующая сцена) и сцена после краша. Shift+N — всегда случайная сцена из списка автора; Shift+F — следующая избранная.
scenes.rotationОткрыть в симуляторе
Случайно: каждая сцена по разу, пока не пройдут все, и никогда та, где вы сейчас. По порядку: одна за другой по кругу. Сначала сцены автора, затем SuperSplat в его собственном порядке. Если оставить по умолчанию, ваши собственные списки (избранное, пройденные сцены) по-прежнему перемешиваются.
scenes.orderОткрыть в симуляторе
В сценах без стен нет крашей: дрон пролетает сквозь всё. Выкл.: такие сцены пропускаются (сцены автора идут всегда).
scenes.allowNoWallsОткрыть в симуляторе
Некоторые сканы не в настоящих метрах, и дрон кажется слишком большим или маленьким. А можно сделать комнату огромной и летать по ней как комар, вдоль стула размером с дом. От x0,25 до x100, вокруг дрона; [ и ] меняют размер в полёте, x1,1 за нажатие, с Shift x2. Запоминается для каждого скана.
scene.transformОткрыть в симуляторе
Выключены: дрон пролетает сквозь всё, крашей нет. Один выбор для всех сканов: выключил здесь — стены выключены и в следующем скане. Пока ты их не переключал, каждый скан начинается так, как настроил автор (шумный скан может начинаться без стен). Переключается клавишей C.
scene.wallsОткрыть в симуляторе
В шумных сканах есть летающие точки, которые превращаются в невидимые стены, и дрон в них врезается. Каждый кусок стен меньше этого числа блоков (блок — 4×4×4 вокселя) убирается, только в этом скане. 0 оставляет всё; воксельная сетка показывает, что осталось.
scene.dropFloatersОткрыть в симуляторе
У сканов под открытым небом в небе часто висят пылинки, которые превращаются в невидимые стены. Выше этой высоты ничто не считается стеной. Высота скана — та, что задал его админ; своя — твоя, её задают на панели, где она видна прямо на скане.
scene.ceilingОткрыть в симуляторе
Высота в собственных координатах скана, до «Размера сцены»: её сохраняет за тебя кнопка «Показать и задать высоту». 10000 ничего не отключает.
scene.ceilingMОткрыть в симуляторе
Показывает стены вокселями: поверх скана или вместо него (скан скрыт, летаешь по вокселям). Переключается клавишей V; после перезагрузки страницы снова виден скан.
voxels.showОткрыть в симуляторе
Как рисуются воксели. Летающие куски стен выделяются в любом стиле; «Летающие куски красным» раскрашивает только их.
voxels.styleОткрыть в симуляторе
Насколько плотными выглядят воксели, пока под ними виден скан.
voxels.opacityОткрыть в симуляторе
Насколько плотными выглядят воксели, когда скан скрыт.
voxels.opacityOnlyОткрыть в симуляторе
По умолчанию 60 fps, с постоянной частотой кадров (её ждут DaVinci и Premiere).
recording.fpsОткрыть в симуляторе
До этой высоты, но не больше картинки на экране.
recording.resolutionОткрыть в симуляторе
Старт при арминге, стоп через 3 с после дизарма, в последнюю выбранную папку.
recording.auto
Длинный полёт режется на файлы: если вкладка упадёт, пропадёт только последний кусок.
recording.splitMinОткрыть в симуляторе
Первое видео скана не из витрины показывает одну строку на панели записи: чей это скан, его лицензия и что видео ваше — используйте его, указывая автора.
recording.authorNoticeОткрыть в симуляторе
Ни одна настройка не подходит. Попробуйте другое слово.
В симуляторе каждая клавиша показана рядом с пунктом меню.
Нет пульта? Эти клавиши — ваши стики.
У каждого числа указан источник: производитель, независимое измерение или оценка.
Собраны по опубликованным данным и оценкам. Летаете на таком в жизни, а здесь ощущается иначе? Пришлите свой diff all из Betaflight, лог блэкбокса и пару слов через форму «Физика дрона» в симуляторе или попросите там дрон, которого нет.
BetaFPV Pavo20 Pro class, 3Sпо умолчанию
BetaFPV Pavo20 Pro II class, 3S
BetaFPV Pavo20 Pro II class, 4S
BetaFPV Pavo Pico class, 2S
BetaFPV Meteor65 Pro class, 1S
BetaFPV Air65 Freestyle class, 1S
iFlight Nazgul Evoque F5 V3 class, 6S
iFlight Mach R5 Sport class, 6S
iFlight Taurus X8 class with a RED Komodo, 6S
Сгенерировано 8 ноября 2026 г. из схемы настроек. Настройка, которая ещё в работе, появится здесь в день выхода.
09Живые замеры
Каждое значение при сборке сайта читается из файла доказательств в репозитории. Если какой-то замер пропадёт, сборка упадёт.
1880 points, max error 0 deg/s
0 wall pass-throughs in 200,000 straight passes
Pavo20 Pro body stops 47.2 mm (median) beyond its own size from walls on the 5 cm voxel collision of scene 39e63ce9
Тестовый дисплей работает на 30 Гц, поэтому результат ограничен экраном, а не симулятором. Мы его публикуем, но критерием приёмки он не является.
Задержка от стика до фотона камерой ещё не снята.
Значения и методы приведены дословно из файла доказательств, на английском. Файл доказательств обновлён 2026-11-08.
Все исходные данные на GitHub10Каталог
Все места, которые куратор опубликовал для полётов, в его порядке. У каждого своя страница с фактами, автором и лицензией.
11Работает с вашей аппаратурой
Честная таблица: ничего не отмечено как проверенное, если это не проверялось, а пока это значит эмуляция или симулированная аппаратура.
Браузер: Chrome, компьютер
Управление: Аппаратура EdgeTX (RadioMaster TX16S, Boxer, Pocket, Zorro) как USB-джойстик через WebHID
Статус: Проверено в Chrome с симулированной аппаратурой EdgeTX — с реальной аппаратурой ещё нет, Edge ещё не запускался
Браузер: Chrome / Edge, компьютер
Управление: Геймпад
Статус: На реальном железе ещё не проверено
Браузер: Chrome / Edge, компьютер
Управление: Пульт DJI как геймпад
Статус: Не проверено
Браузер: Chrome на компьютере, эмуляция касаний (375×812, 1024×768)
Управление: Сенсорные стики
Статус: Проверено только в эмуляции — Safari, iPad и браузеры Android ещё не проверены
Браузер: Firefox
Управление: Геймпад или сенсорные стики
Статус: Firefox 155 показывает сцену через WebGPU и предлагает геймпад или сенсорные стики (полёт ещё не проверен); для аппаратуры нужен Chrome или Edge (нет WebHID)
Есть аппаратура EdgeTX? Короткий отчёт о проверке очень поможет — напишите через форму ниже или откройте issue на GitHub.
12Почему так лучше
Данные на сентябрь 2026 года. «Неизвестно» значит, что проверить не удалось.
| Параметр | ShramkoGSFPV | Прогулка в просмотрщике SuperSplat | Браузерные FPV-демо на сплатах (например, SplatFPV) | Классические FPV-симуляторы (готовые карты) |
|---|---|---|---|---|
| Реальные отсканированные места | Любая публичная сцена SuperSplat; более 1300 со стенами — во встроенном каталоге | Да | Да, по одному файлу | Нет, готовые карты |
| Модель дрона | 4 мотора, миксер, PID по угловой скорости | Нет: камера ходит или летает | Фильтр рейтов первого порядка | Полная |
| Свои рейты | Betaflight, Actual, KISS, Raceflight | Не применимо | Фиксированная макс. скорость плюс экспо | Да |
| Удар о стену | Краш и кувырок | Скольжение вдоль стены | Остановка или скольжение | Краш |
| Источник коллизий | Воксельное октодерево SuperSplat, протяжка | Воксельное октодерево SuperSplat | Строится при загрузке, проверка точкой | Сетки, сделанные вручную |
| Управление | EdgeTX через WebHID, геймпад, сенсор | Геймпад | Gamepad API | USB-джойстик |
| Опубликованные результаты тестов | Да, см. «Живые замеры» | неизвестно | неизвестно | неизвестно |
| Установка | Не нужна | Не нужна | Не нужна | Нужна |
| Исходный код | MIT | MIT | По-разному | Закрытый |
Классические симуляторы по-прежнему лучше всего подходят для тренировки гонок на специально построенных трассах. Этот проект — про полёты по реальным местам.
13Для вашего ИИ-агента
Вставьте это в Claude Code, Codex, Cursor или любого агента для программирования. Он установит проект, прогонит проверки и откроет симулятор локально, а у вас спросит только пароли или физические действия.
Set up ShramkoGSFPV for me by following https://github.com/AndriiShramko/ShramkoGSFPV/blob/main/AGENT_SETUP.md exactly. Install, run the checks, start the simulator locally and open it in Chrome. Do not change any system settings; ask me only if a step needs my password or a physical action.правила для агентов, работающих в репозитории
установка, обновление и удаление по шагам
краткое описание проекта для языковых моделей
14Риски и безопасность
Коротко и честно, чтобы ничего не стало сюрпризом.
Сцены грузятся с публичного, но недокументированного CDN SuperSplat. Он может измениться в любой момент, и некоторые сцены перестанут загружаться.
Для них симулятор может построить стены прямо в вашем браузере инструментом самого SuperSplat (до 4 млн гауссиан, около 25 секунд для скана на 2,1 млн на видеокарте ПК). Сквозь более крупные сканы можно только пролетать.
Краши и быстрые полёты могут укачивать — делайте перерывы. Замерено на 50 крашах: не больше 2 вспышек в секунду, ниже предела WCAG в 3; настройка «уменьшить движение» соблюдается (ещё не проверено).
Тренируйтесь ответственно, соблюдайте местные законы о дронах и никогда не летайте над людьми.
Калибровка, история полётов и избранное хранятся только в вашем браузере.
15Частые вопросы
Откройте ShramkoGSFPV в Chrome или Edge на компьютере, выберите скан (более 1300 со стенами во вкладке SuperSplat, скан Андрия или вставленная ссылка на SuperSplat), подключите аппаратуру, геймпад или сенсорные стики, затем откалибруйте, заармьтесь и летите. Ничего устанавливать не нужно.
Именно для этого всё и сделано: переведите аппаратуру EdgeTX — TX16S, Boxer, Pocket или Zorro — в режим USB-джойстика и подключите через WebHID в Chrome или Edge. Пока это проверено только в Chrome с симулированной аппаратурой EdgeTX, а не с реальным железом и не в Edge.
Да. ShramkoGSFPV бесплатный, с открытым кодом под лицензией MIT. Он работает на WebGPU в Chrome или Edge на компьютере, без скачивания.
Любую публичную сцену SuperSplat — по ссылке или id; вкладка SuperSplat в симуляторе показывает более 1300 опубликованных со стенами, с фильтрами самого superspl.at. У них стены твёрдые сразу; для остальных стены можно построить в браузере одним кликом (сканы до 4 млн гауссиан). Сквозь более крупные можно пролетать, но в них нельзя врезаться.
Сенсорные стики проверены только в эмуляции касаний в Chrome на компьютере; в Safari, на iPad и в браузерах Android пока нет, и нужен браузер с WebGPU. Для аппаратуры нужен Chrome или Edge на компьютере.
Кривые рейтов (Betaflight, Actual, KISS, Raceflight) совпадают с кодом Betaflight 4.5.1 с нулевой ошибкой в 1880 точках, если обе стороны считаются в двойной точности, а PID по угловой скорости управляет четырьмя моторами через миксер. Это наша собственная модель полёта, а не прошивка Betaflight.
На сценах с данными коллизий — врезаетесь: на каждом шаге физики корпус дрона протягивается по вокселям, а тестовый стенд проверяет, что быстрый полёт не проскакивает сквозь стены. Результат — в разделе «Живые замеры».
Да, под лицензией MIT. Код, замеры и проектные решения лежат на GitHub. Формулы Betaflight реализованы заново, код под GPL не копировался.
Да. «Случайная из лучших» во вкладке SuperSplat открывает скан, который вы ещё не видели, Shift+N загружает случайную сцену прямо в полёте, а с включённой «Следующая сцена после краша» каждый краш переносит вас в другую сцену: из подборки Андрия, из избранного или из уже облетанных, в случайном или обычном порядке. Аппаратура остаётся подключённой.
Да. «Размер сцены» масштабирует весь скан вокруг дрона от ×0,25 до ×100 клавишами [ и ] (Shift+] удваивает) или в меню паузы. На ×100 стул размером с многоэтажку, и можно нырнуть вдоль его ножек; стены масштабируются вместе со сценой, так что в них по-прежнему врезаешься. Масштаб запоминается для каждого скана.
Да. Опубликуйте его на SuperSplat (superspl.at) и вставьте ссылку или id на этой странице или в симуляторе. Если он опубликован со стенами (данными воксельной коллизии), он твёрдый сразу; без них стены можно построить в браузере для сканов до 4 млн гауссиан.
Да. Дроны собраны по опубликованным данным и оценкам: вупы класса BetaFPV, 5-дюймовый фристайл-квадрокоптер класса iFlight Nazgul Evoque F5, 5-дюймовый гоночный класса Mach R5 Sport и синелифтер класса Taurus X8 с камерой RED Komodo. Если вы летаете на одном из них в жизни и здесь он ощущается иначе, нажмите «Помочь настроить» в выборе дрона или в настройках и пришлите свой diff all из Betaflight, ссылку на лог блэкбокса и пару слов; Андрей подгонит по ним дрон. В той же форме можно попросить дрон, которого нет в списке.
16Открытый код
Код, замеры и каждое проектное решение лежат на GitHub. Будем рады pull request’ам, отчётам о проверке на реальной аппаратуре и новым сканам.
PlayCanvasMIT
Движок, который рисует сканы, и просмотрщик SuperSplat, чей код коллизий включён в проект.
RapierApache-2.0
Детерминированная физика краша: кувыркающийся коптер и его обломки.
BetaflightGPL-3.0
Формулы рейтов и PID прочитаны в Betaflight 4.5.1 и реализованы заново. Код под GPL не копировался.
SplatFPVMIT
Более ранний браузерный эксперимент, который показал, что FPV по сплатам возможен. Код оттуда не брался.
17Контакты
Andrii Shramko
FPV-пилот и специалист по 3D Gaussian Splatting, автор и мейнтейнер ShramkoGSFPV.
Всегда открыт к интересным знакомствам — и готов помогать командам воплощать невероятные проекты.
Ищу FPV-пилотов, студии 3D-сканирования, производителей дронов, инвесторов и разработчиков — для партнёрства, лицензирования, интеграции или финансирования. Расскажите, кто вы, в один клик.