Начало разработки следующей версии

Итак, начало разработки SpaceEngine 0.981!
Теперь у меня есть HTC Vive, и я работаю над его поддержкой. Уже реализован вывод картинки и интерфейса, почти работает рендер моделей контроллеров (библиотека OpenVR предоставляет высокополигональные модели беспроводных контроллеров Vive, чтобы показывать их в игре, управление в многих играх основано на этом). Заодно унифицировал код поддержки виртуальной реальности, и обновил поддержку Окулуса до 1.6 (пока сохраню поддержку через нативную библиотеку Oculus SDK, т.к. с ней производительность лучше). DK2 прекрасно работает с ней, хотя Oculus Home и пишет, что он "не поддерживается". А вот DK1 действительно не поддерживается, у меня он не определился. Но я пока сохранил код для SDK 0.8, так что при желании можно будет собрать exe для него.
Также почти заработала поддержка SLI. Надо провести ещё некоторые изменения в движке, чтобы оно работало без перебоев. Я уже общался с представителем NVidia, и они пообещали включить SLI в профиль SpaceEngine, когда я его доделаю. Потом очередь за CrossFire, попозже займусь.
К сожалению классический SLI (AFR) не работает с VR, зато для VR существует специальный VR SLI. Потом попробую его реализовать. Может тогда мои две GTX 780 смогут выдать 90 fps на планетах в Vive. Надо сказать, производительность SE в Vive ниже плинтуса, к тому же он не любит, когда fps ниже 90 - начинаются жуткие лаги и залипания картинки, причём несинхронно для каждого глаза (!!! - это вообще жесть, глаза можно сломать, в прямом смысле). Oculus в этом плане рулит - у них есть технология Time Warp, которая позволяет видеть в шлеме плавную картинку на 75/90 fps, даже если движок тормозит и выдаёт всего 20 fps, или даже если вообще завис. Vive-овское reptrojection не идёт ни в какое сравнение с этой магией.
Ещё сделал небольшое косметическое изменение шейдера, рисующего частицу (звездообразную точку) планеты, когда та далеко. На некотором расстоянии происходит переход к рендеру модели, и в этот момент точка появляется в центре диска планеты. Но если фаза мала (планета в виде узкого серпа), это здорово бросается в глаза. Сейчас же частица смещается на центр серпа, так что переход не так заметен. Скриншоты для сравнения (смотреть в полном размере):