1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-10-24 10:27:45 +00:00

nilrider:: VR support

This commit is contained in:
Zeno Rogue
2022-05-06 19:53:21 +02:00
parent 00d606de47
commit 279fe685ec
2 changed files with 16 additions and 0 deletions

View File

@@ -166,6 +166,18 @@ bool timestamp::tick(level *lev) {
void timestamp::centerview(level *lev) {
// static bool once = false; if(once) return; once = true;
if(vrhr::active()) {
transmatrix Ta = cspin(0, 1, -heading_angle);
transmatrix Tb = cspin(0, 2, -slope);
hyperpoint base = Ta * Tb * point31(0, 0, whrad);
hyperpoint refpoint = rgpushxto0(where) * rgpushxto0(base) * point31(0, 0, whrad+whrad);
centerover = cwt.at; playermoved = false;
View = cspin(0, 2, heading_angle-90*degree) * cspin(1, 2, -90*degree) * gpushxto0(refpoint);
return;
}
auto w = where;
w[2] += 0.2 * lev->scale;
hyperpoint front = rgpushxto0(w) * sym_to_heis(hyperpoint(1e-3 * cos(heading_angle), 1e-3*sin(heading_angle), 0, 1));