mirror of
https://github.com/wayvr-org/wayvr.git
synced 2026-10-28 16:02:47 +01:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a4134030fe | ||
|
|
ebacbf175a | ||
|
|
6c987b4492 | ||
|
|
8acb2236bd | ||
|
|
5dae6f8387 | ||
|
|
5ab242f8e0 |
No files matched your search
Generated
+2
-2
@@ -6287,7 +6287,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wayvr"
|
||||
version = "26.2.0"
|
||||
version = "26.2.1"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"ash",
|
||||
@@ -6361,7 +6361,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wayvrctl"
|
||||
version = "26.2.0"
|
||||
version = "26.2.1"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"clap",
|
||||
|
||||
@@ -26,6 +26,7 @@ There are multiple ways to install WayVR:
|
||||
|
||||
1. AppImage: Download from [Releases](https://github.com/wlx-team/wayvr/releases)
|
||||
1. AUR package: [wayvr](https://aur.archlinux.org/packages/wayvr) or [wayvr-git](https://aur.archlinux.org/packages/wayvr-git)
|
||||
1. Nix package: [wayvr](https://search.nixos.org/packages?channel=unstable&show=wayvr&query=wayvr) or [unstable package from nixpkgs-xr](https://github.com/nix-community/nixpkgs-xr)
|
||||
1. [Building from source](https://github.com/wlx-team/wayvr/wiki/Building-from-Source).
|
||||
|
||||
### General Setup
|
||||
|
||||
@@ -87,7 +87,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "Eingabe, die bei Bewegung\nder Controller verwendet wird, wenn diese nicht verfügbar sind.\nLinkes Kneifen greift, rechtes klickt.",
|
||||
"UI_GRADIENT_INTENSITY": "UI-Verlaufsintensität",
|
||||
"RESET_PLAYSPACE": "Spielbereich zurücksetzen",
|
||||
"RESET_PLAYSPACE_HELP": "Den Abstand des Spielbereichs zurücksetzen."
|
||||
"RESET_PLAYSPACE_HELP": "Den Abstand des Spielbereichs zurücksetzen.",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "Posen beim Interagieren mit der Tastatur blockieren",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Verhindert, dass das Spiel Posen empfängt, wenn die Tastatur angefahren wird und „Spieleingabe blockieren“ aktiviert ist"
|
||||
},
|
||||
"HELLO": "Hallo!",
|
||||
"AUDIO": {
|
||||
|
||||
@@ -87,7 +87,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "Entrada a utilizar cuando no\nestén disponibles los mandos de movimiento.\nPellizco con la izquierda para agarrar, con la derecha para hacer clic.",
|
||||
"UI_GRADIENT_INTENSITY": "Intensidad del degradado de la IU",
|
||||
"RESET_PLAYSPACE": "Restablecer espacio de juego",
|
||||
"RESET_PLAYSPACE_HELP": "Borrar el desplazamiento del espacio de juego."
|
||||
"RESET_PLAYSPACE_HELP": "Borrar el desplazamiento del espacio de juego.",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "Bloquear poses al interactuar con el teclado",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Bloquea que el juego reciba poses cuando el teclado está sobre él y 'Bloquear entrada del juego' está habilitado"
|
||||
},
|
||||
"HELLO": "¡Hola!",
|
||||
"AUDIO": {
|
||||
|
||||
@@ -107,7 +107,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "Input da usare quando i\ncontroller di movimento non sono disponibili.\nPizzico sinistro per afferrare, destro per cliccare.",
|
||||
"UI_GRADIENT_INTENSITY": "Intensità gradiente dell'interfaccia utente",
|
||||
"RESET_PLAYSPACE": "Ripristina playspace",
|
||||
"RESET_PLAYSPACE_HELP": "Cancella l'offset dello spazio di gioco."
|
||||
"RESET_PLAYSPACE_HELP": "Cancella l'offset dello spazio di gioco.",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "Blocca le pose durante l'interazione con la tastiera",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Impedisce al gioco di ricevere pose quando la tastiera è evidenziata e 'Blocca input di gioco' è abilitato"
|
||||
},
|
||||
"APPLICATION_LAUNCHER": "Lanciatore applicazioni",
|
||||
"APPLICATION_STARTED": "Applicazione avviata",
|
||||
|
||||
@@ -87,7 +87,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "モーションコントローラーが利用できない場合の入力方法。\n左手のピンチは掴み、右手のピンチはクリックです。",
|
||||
"UI_GRADIENT_INTENSITY": "UIグラデーションの強さ",
|
||||
"RESET_PLAYSPACE": "プレイエリアをリセット",
|
||||
"RESET_PLAYSPACE_HELP": "プレイエリアのオフセットをクリアします。"
|
||||
"RESET_PLAYSPACE_HELP": "プレイエリアのオフセットをクリアします。",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "キーボード操作時のポーズをブロック",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "キーボードがホバーされ、「ゲーム入力をブロック」が有効になっている場合、ゲームがポーズを受信することをブロックします"
|
||||
},
|
||||
"HELLO": "こんにちは!",
|
||||
"AUDIO": {
|
||||
|
||||
@@ -82,7 +82,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "Wejście do użycia, gdy kontrolery ruchu\nsą niedostępne. Lewy szczyptak to chwyt,\nprawy to kliknięcie.",
|
||||
"UI_GRADIENT_INTENSITY": "Intensywność gradientu UI",
|
||||
"RESET_PLAYSPACE": "Zresetuj przestrzeń gry",
|
||||
"RESET_PLAYSPACE_HELP": "Wyczyść przesunięcie przestrzeni gry."
|
||||
"RESET_PLAYSPACE_HELP": "Wyczyść przesunięcie przestrzeni gry.",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "Blokuj pozy podczas interakcji z klawiaturą",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "Blokuje odbieranie póz przez grę, gdy kursor myszy znajduje się nad klawiaturą i włączona jest opcja 'Blokuj dane wejściowe z gry'"
|
||||
},
|
||||
"APPLICATION_LAUNCHER": "Uruchamiacz aplikacji",
|
||||
"APPLICATIONS": "Aplikacje",
|
||||
|
||||
@@ -107,7 +107,9 @@
|
||||
"HANDSFREE_POINTER_HELP": "当运动控制器不可用时使用的输入。\n左手捏合为抓取,右手为点击。",
|
||||
"UI_GRADIENT_INTENSITY": "UI 渐变强度",
|
||||
"RESET_PLAYSPACE": "重置游戏空间",
|
||||
"RESET_PLAYSPACE_HELP": "清除舞台空间偏移。"
|
||||
"RESET_PLAYSPACE_HELP": "清除舞台空间偏移。",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION": "与键盘交互时阻止姿势",
|
||||
"BLOCK_POSES_ON_KBD_INTERACTION_HELP": "当键盘悬停且启用“阻止游戏输入”时,阻止游戏接收姿势"
|
||||
},
|
||||
"APPLICATION_LAUNCHER": "应用启动器",
|
||||
"APPLICATION_STARTED": "应用已启动",
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"BAR": {
|
||||
"OPACITY": "Opacità",
|
||||
"ADDITIVE": "Additivo"
|
||||
},
|
||||
"TESTBED": {
|
||||
"HELLO_WORLD": "Ciao, mondo! Questo è un testo I18n tradotto."
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"BAR": {
|
||||
"OPACITY": "不透明度",
|
||||
"ADDITIVE": "加法"
|
||||
},
|
||||
"TESTBED": {
|
||||
"HELLO_WORLD": "你好,世界!这是一段翻译后的国际化文本。"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wayvr"
|
||||
version = "26.2.0"
|
||||
version = "26.2.1"
|
||||
edition = "2024"
|
||||
license = "GPL-3.0-only"
|
||||
authors = ["galister", "oo8dev"]
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
|
||||
<template name="Set">
|
||||
<Button macro="button_style" id="set_${idx}" _press="::SetToggle ${idx}" tooltip="WATCH.SWITCH_TO_SET" tooltip_side="top">
|
||||
<sprite width="40" height="40" color="~color_text" src_builtin="watch/set2.svg" />
|
||||
<sprite width="38" height="38" color="~color_text" src_builtin="watch/set2.svg" />
|
||||
<div position="absolute" margin_top="9">
|
||||
<label text="${display}" size="24" color="#00050F" weight="bold" />
|
||||
</div>
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "Freihändig-Modus",
|
||||
"NONE": "Aus",
|
||||
"HMD": "HMD + Kneifen",
|
||||
"EYE_TRACKING": "Auge + Kneifen"
|
||||
"EYE_TRACKING": "Auge + Kneifen",
|
||||
"HMD_ONLY": "Nur HMD",
|
||||
"EYE_ONLY": "Nur Augen"
|
||||
}
|
||||
},
|
||||
"WATCH": {
|
||||
@@ -45,7 +47,6 @@
|
||||
"MOVE_PRESS_AND_DRAG": "Verschieben (drücken & ziehen)",
|
||||
"OPACITY": "Undurchsichtigkeit",
|
||||
"POSITIONING": "Positionierung",
|
||||
"BLOCK_GAME_INPUT": "Spieleingabe blockieren",
|
||||
"RESIZE_PRESS_AND_DRAG": "Größe ändern (gedrückt halten & ziehen)",
|
||||
"POS_STATIC": "Statisch: Bleibt an Ort und Stelle und wird niemals neu zentriert.",
|
||||
"POS_ANCHORED": "Verankert: Bewegt sich zusammen mit dem Rest des Sets. Standard.",
|
||||
@@ -82,7 +83,10 @@
|
||||
"ROTATE180": "180° gedreht",
|
||||
"ROTATE270": "270° gedreht"
|
||||
},
|
||||
"GLOBAL": "Immer sichtbar"
|
||||
"GLOBAL": "Immer sichtbar",
|
||||
"ANGLE_FADE": "Winkelübergang",
|
||||
"ANGLE_FADE_HELP": "Ausblenden, wenn nicht auf das Headset gerichtet",
|
||||
"BLOCK_INPUT": "Blockiere Spieleingabe"
|
||||
},
|
||||
"DISABLED": "Deaktiviert",
|
||||
"DEFAULT": "Standard",
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "Modo manos libres",
|
||||
"NONE": "Desactivado",
|
||||
"HMD": "HMD + pellizco",
|
||||
"EYE_TRACKING": "Ojo + pellizco"
|
||||
"EYE_TRACKING": "Ojo + pellizco",
|
||||
"HMD_ONLY": "Solo HMD",
|
||||
"EYE_ONLY": "Solo ojos"
|
||||
}
|
||||
},
|
||||
"WATCH": {
|
||||
@@ -45,7 +47,6 @@
|
||||
"MOVE_PRESS_AND_DRAG": "Mover (presionar y arrastrar)",
|
||||
"OPACITY": "Opacidad",
|
||||
"POSITIONING": "Posicionamiento",
|
||||
"BLOCK_GAME_INPUT": "Bloquear entrada del juego",
|
||||
"RESIZE_PRESS_AND_DRAG": "Redimensionar (presionar y arrastrar)",
|
||||
"POS_STATIC": "Estático: Permanece en su lugar y nunca se recentra.",
|
||||
"POS_ANCHORED": "Anclado: Se mueve junto con el resto del conjunto. Predeterminado.",
|
||||
@@ -82,7 +83,10 @@
|
||||
"ROTATE180": "Rotado 180°",
|
||||
"ROTATE270": "Rotado 270°"
|
||||
},
|
||||
"GLOBAL": "Siempre visible"
|
||||
"GLOBAL": "Siempre visible",
|
||||
"ANGLE_FADE": "Atenuación angular",
|
||||
"ANGLE_FADE_HELP": "Desvanecer cuando no se mira el HMD",
|
||||
"BLOCK_INPUT": "Bloquear entrada del juego"
|
||||
},
|
||||
"DISABLED": "Deshabilitado",
|
||||
"DEFAULT": "Por defecto",
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "Modalità a mani libere",
|
||||
"NONE": "Disattivato",
|
||||
"HMD": "HMD + pizzico",
|
||||
"EYE_TRACKING": "Occhio + pizzico"
|
||||
"EYE_TRACKING": "Occhio + pizzico",
|
||||
"HMD_ONLY": "Solo HMD",
|
||||
"EYE_ONLY": "Solo occhi"
|
||||
}
|
||||
},
|
||||
"DEFAULT": "Predefinito",
|
||||
@@ -44,7 +46,6 @@
|
||||
"POS_HMD": "Segui l'HMD.",
|
||||
"POS_STATIC": "Statico: non fa parte di alcun set, senza recentratura.",
|
||||
"POSITIONING": "Posizionamento",
|
||||
"BLOCK_GAME_INPUT": "Blocca l'input di gioco",
|
||||
"RESIZE_PRESS_AND_DRAG": "Ridimensiona (premi e trascina)",
|
||||
"STEREO_3D_MODE": {
|
||||
"SPLIT_BOTTOM_TOP": "DAL BASSO→IN ALTO",
|
||||
@@ -70,7 +71,10 @@
|
||||
"FLIP180": "Ruotato di 180°",
|
||||
"FLIP270": "Ruotato di 270°"
|
||||
},
|
||||
"GLOBAL": "Sempre visibile"
|
||||
"GLOBAL": "Sempre visibile",
|
||||
"ANGLE_FADE": "Dissolvenza angolare",
|
||||
"ANGLE_FADE_HELP": "Sfumatura quando non si guarda l'HMD",
|
||||
"BLOCK_INPUT": "Blocca l'input del gioco"
|
||||
},
|
||||
"GRAB": {
|
||||
"ADJUST_DISTANCE": "Regola la distanza",
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "ハンズフリーモード",
|
||||
"NONE": "オフ",
|
||||
"HMD": "HMD + ピンチ",
|
||||
"EYE_TRACKING": "視線 + ピンチ"
|
||||
"EYE_TRACKING": "視線 + ピンチ",
|
||||
"HMD_ONLY": "HMDのみ",
|
||||
"EYE_ONLY": "目のみ"
|
||||
}
|
||||
},
|
||||
"WATCH": {
|
||||
@@ -45,7 +47,6 @@
|
||||
"MOVE_PRESS_AND_DRAG": "移動(押してドラッグ)",
|
||||
"OPACITY": "不透明度",
|
||||
"POSITIONING": "位置付け",
|
||||
"BLOCK_GAME_INPUT": "ゲームの入力をブロック",
|
||||
"RESIZE_PRESS_AND_DRAG": "サイズ変更(押してドラッグ)",
|
||||
"POS_STATIC": "固定:置かれた場所に留まり、再センタリングされません。",
|
||||
"POS_ANCHORED": "アンカー:セット内の他のウィンドウと共に移動します。デフォルト。",
|
||||
@@ -80,7 +81,10 @@
|
||||
"ROTATE180": "回転 180°",
|
||||
"ROTATE270": "回転 270°"
|
||||
},
|
||||
"GLOBAL": "常に表示"
|
||||
"GLOBAL": "常に表示",
|
||||
"ANGLE_FADE": "角度フェード",
|
||||
"ANGLE_FADE_HELP": "HMDに向いていない時にフェード",
|
||||
"BLOCK_INPUT": "ゲーム入力をブロック"
|
||||
},
|
||||
"DISABLED": "無効",
|
||||
"DEFAULT": "デフォルト",
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "Tryb wolnych rąk",
|
||||
"NONE": "Wyłączone",
|
||||
"HMD": "HMD + uszczypnięcie",
|
||||
"EYE_TRACKING": "Oko + uszczypnięcie"
|
||||
"EYE_TRACKING": "Oko + uszczypnięcie",
|
||||
"HMD_ONLY": "Tylko HMD",
|
||||
"EYE_ONLY": "Tylko oczy"
|
||||
}
|
||||
},
|
||||
"WATCH": {
|
||||
@@ -80,7 +82,9 @@
|
||||
"FLIP180": "Odwrócony o 180°",
|
||||
"FLIP270": "Odwrócony o 270°"
|
||||
},
|
||||
"GLOBAL": "Zawsze widoczne"
|
||||
"GLOBAL": "Zawsze widoczne",
|
||||
"ANGLE_FADE": "Zanik kątowy",
|
||||
"ANGLE_FADE_HELP": "Wyblaknij, gdy nie patrzysz na HMD"
|
||||
},
|
||||
"DISABLED": "Wyłączone",
|
||||
"DEFAULT": "Domyślny",
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
"TITLE": "免提模式",
|
||||
"NONE": "关闭",
|
||||
"HMD": "HMD + 捏合",
|
||||
"EYE_TRACKING": "眼动 + 捏合"
|
||||
"EYE_TRACKING": "眼动 + 捏合",
|
||||
"HMD_ONLY": "仅 HMD",
|
||||
"EYE_ONLY": "仅限眼睛"
|
||||
}
|
||||
},
|
||||
"DEFAULT": "默认",
|
||||
@@ -44,7 +46,6 @@
|
||||
"POS_HMD": "跟随头显 (HMD)。",
|
||||
"POS_STATIC": "静态:不属于任何集合,不重新居中。",
|
||||
"POSITIONING": "定位",
|
||||
"BLOCK_GAME_INPUT": "屏蔽游戏输入",
|
||||
"RESIZE_PRESS_AND_DRAG": "调整大小 (按住并拖拽)",
|
||||
"STEREO_3D_MODE": {
|
||||
"SPLIT_BOTTOM_TOP": "下→上",
|
||||
@@ -70,7 +71,10 @@
|
||||
"FLIP180": "镜像旋转 180°",
|
||||
"FLIP270": "镜像旋转 270°"
|
||||
},
|
||||
"GLOBAL": "始终可见"
|
||||
"GLOBAL": "始终可见",
|
||||
"ANGLE_FADE": "角度淡出",
|
||||
"ANGLE_FADE_HELP": "未朝向HMD时淡出",
|
||||
"BLOCK_INPUT": "阻止游戏输入"
|
||||
},
|
||||
"GRAB": {
|
||||
"ADJUST_DISTANCE": "调整距离",
|
||||
|
||||
@@ -53,28 +53,28 @@
|
||||
},
|
||||
|
||||
// Fallback controller, intended for testing
|
||||
{
|
||||
profile: "/interaction_profiles/khr/simple_controller",
|
||||
pose: {
|
||||
left: "/user/hand/left/input/aim/pose",
|
||||
right: "/user/hand/right/input/aim/pose"
|
||||
},
|
||||
haptic: {
|
||||
left: "/user/hand/left/output/haptic",
|
||||
right: "/user/hand/right/output/haptic"
|
||||
},
|
||||
click: {
|
||||
//{
|
||||
// profile: "/interaction_profiles/khr/simple_controller",
|
||||
// pose: {
|
||||
// left: "/user/hand/left/input/aim/pose",
|
||||
// right: "/user/hand/right/input/aim/pose"
|
||||
// },
|
||||
// haptic: {
|
||||
// left: "/user/hand/left/output/haptic",
|
||||
// right: "/user/hand/right/output/haptic"
|
||||
// },
|
||||
// click: {
|
||||
// right trigger is click
|
||||
right: "/user/hand/right/input/select/click"
|
||||
},
|
||||
grab: {
|
||||
// right: "/user/hand/right/input/select/click"
|
||||
// },
|
||||
// grab: {
|
||||
// left trigger is grab
|
||||
left: "/user/hand/left/input/select/click",
|
||||
},
|
||||
show_hide: {
|
||||
left: "/user/hand/left/input/menu/click"
|
||||
}
|
||||
},
|
||||
// left: "/user/hand/left/input/select/click",
|
||||
// },
|
||||
// show_hide: {
|
||||
// left: "/user/hand/left/input/menu/click"
|
||||
// }
|
||||
//},
|
||||
|
||||
// Oculus Touch Controller. Compatible with Quest 2, Quest 3, Quest Pro
|
||||
{
|
||||
|
||||
@@ -97,13 +97,13 @@ impl OverlayWindowData<OpenXrOverlayData> {
|
||||
|
||||
let transform = state.transform * self.config.backend.frame_meta().unwrap().transform; // contract
|
||||
|
||||
let aspect_ratio = swapchain.extent[1] as f32 / swapchain.extent[0] as f32;
|
||||
let aspect_ratio = swapchain.extent[0] as f32 / swapchain.extent[1] as f32;
|
||||
let (scale_x, scale_y) = if aspect_ratio < 1.0 {
|
||||
let major = transform.matrix3.col(0).length();
|
||||
(major, major * aspect_ratio)
|
||||
(major * aspect_ratio, major)
|
||||
} else {
|
||||
let major = transform.matrix3.col(1).length();
|
||||
(major / aspect_ratio, major)
|
||||
(major, major / aspect_ratio)
|
||||
};
|
||||
|
||||
let flags = if state.additive {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "wayvrctl"
|
||||
version = "26.2.0"
|
||||
version = "26.2.1"
|
||||
edition = "2024"
|
||||
description = "CLI for controlling WayVR"
|
||||
license = "GPL-3.0-only"
|
||||
|
||||
Reference in new issue
Block a user