So,
- Do you wish you have multiple screens in your room?
- Have you ever heard of Windows Mixed Reality, but you don't have a headset like others?
- Have you ever tried to emulate mouse and keyboard controls to use with it, and the controls are awful?
- Do you feel that you wish you could use apps like what you saw on the internet?
Well, Mica Browser 3D can solve 2 out of 4 problems, except for the first point being the 'virtual screen' and the last point being that you can only use websites because this is a browser!
NOTE: GitHub, Stackoverflow, and Bing is only used as an example and are not affiliated with this software!
- Navigate in 3D World with familiar controls to most FPS games using WASD, Spacebar, and Shift
- Multitasking with 'virtual screens' of browsers
- Having Mica in the background (on windows 11 only, obviously)
- A lot of upcoming features planned
NOTE: Some things are unstable because this is Alpha!
Most of the app controls are by using these HotKeys
- Escape (ESC) - Toggle First-Person Control Mode and Web Control Mode
- F1 - Create a new virtual window in front of you
BE CAREFUL: Attempting to refresh the page will make you lose progress on all windows, so please don't.
Best for moving around!
- WASD (W = Forward, S = Backward, A = Left, D = Right)
- Space = Fly up
- Shift = Fly down
- The mouse cursor will be locked at the center of the application. You can move the mouse around to look around
NOTE: You can still use Mouse Cursor on the web screen in this mode, although sometimes it will be unstable.
NOTE 2: You cannot type in First-Person Control Mode. Please switch to Web Control Mode by pressing Escape to type anything in the browser
This is the default mode when the app launches. All the First-Person Controls will be disabled. The mouse can be moved around freely without the 3D space moved around. You can focus, use hotkeys, and type in this mode!
NOTE: YouTube is only used as an example and is not affiliated with this software!
There will be two buttons on top of each screen. "N" will let you type the new URL in, and "X" will close the screen.
I will update the button to look better in the future.
This project uses WebView2 technology combined with Three.js to create a space with the IFrames in a specific position in 3D world. Unfortunately, the website can't be used directly in a regular web browser because it requires the app to send the information required.
The communicated messages are
- Key Press
- How much was the mouse moved if the screen is locked
Although it seems that these can be done in JavaScript alone, the complication starts when there is IFrame, making these keys unable to be appropriately handled. That is why it is instead handled on the app level and sent as a message.
NOTE: This project technically does not require Node.js. However, Node.js is used to make the development easier due to better Three.js typing.
In the future, I plan to (note: not in order of priority)
- Make 'virtual screens' draggable
- Make it less laggy
- Proper User Interface
- Fluent Design Controls
- Minimizable screen
- Teleport to the front of the selected screen
- Favorites
- Some built-in useful apps with basic features on the web (such as an offline Calculator. can be turned off)
- Mica Discord Integration (can be turned off)