Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature request] Switch to electron #58

Open
MrAlexEsisteGia opened this issue May 18, 2020 · 12 comments
Open

[feature request] Switch to electron #58

MrAlexEsisteGia opened this issue May 18, 2020 · 12 comments
Labels
feature New feature or request in progress Being looked at or worked on

Comments

@MrAlexEsisteGia
Copy link

MrAlexEsisteGia commented May 18, 2020

i'm not even remotely an expert on this stuff
so if I say some dumb shiet, you know why

Considering that a large part of VRCX is based on a browser, why not change to electron

it's probably a lot faster than the webview used by the os
Considering I often see a kinda high usage in the background (0.7~5%) with 6+ threads
and it's one of the most CPU intensive apps on idle (at least for me with a ryzen 7 3800x)

I'm not saying that a full rewrite/change to Electron is a good idea
but
I think that integrating it for the user interface wouldn't be so bad

Any thoughts?
also I love the app so much

@MrAlexEsisteGia
Copy link
Author

image
for context

@Myrkie
Copy link
Contributor

Myrkie commented May 18, 2020

electron is very buggy and unstable discord and twitch app are examples of this

@pypy-vrc
Copy link
Member

VRCX is using cefsharp as webview. cefsharp is c# binding for the chromium embedded framework. electron also using CEF. so there is not much difference.
(only my code causes performance issue. 🤣)

I'm also considering migrating to electron. but this is just a plan. cuz it's to get the benefits of cross-platform, not for performance. and it needs to port some features written in native c# to javascript or nodejs extension (c++). however, there is no guarantee that this will provide better performance.

sorry about the performance of VRCX. it looks like a simple web page, but it does a lot of complex things internally (vr overlay, logging, etc). but, there are many things to optimize or improve. I will fix it someday. 😖

@MrAlexEsisteGia
Copy link
Author

MrAlexEsisteGia commented May 18, 2020

oomf
if and when you decide to switch to electron tell me and ill try to help you port stuff to it and the mess that is javascript

and next time code bad'nt .-.

@TayouVR
Copy link
Contributor

TayouVR commented Dec 31, 2020

I know this is a rather old thread, but I just wanted to say... knowing node and js performance overall I would think it would be a better thing to stay with cefSharp than switching to node and electron. cefSharp should run cross platform too and if you can get all the other libraries used to run cross platform you can compile with mono / dotNet Core and run the application on linux or even mac (though I don't think VRC runs on macs)

Maybe I can get my development environment for linux set up some time and attempt a linux version.

@Natsumi-sama
Copy link
Member

I don't think CefSharp can work with mono but maybe .NET Core? I'm not sure haven't really looked into it, but cross platform support would be great.
cefsharp/CefSharp#1450
cefsharp/CefSharp#3197

@Natsumi-sama Natsumi-sama added the feature New feature or request label Feb 24, 2021
@Natsumi-sama Natsumi-sama added the in progress Being looked at or worked on label Mar 9, 2021
@borrougagnou
Copy link

Change C# to electron... bad idea...
electron eat a lot of ram...

If you really really really really want to migrate in another tool, try tauri, but please, no electron.
img

I also hope you don't leave the C# support...

@alxsch
Copy link

alxsch commented Mar 12, 2022

image
I see its in progress but it does tie up the OBS installer. Maybe other things too?

@Natsumi-sama
Copy link
Member

This error is unrelated, also I have no clue how or why you got this error.

@Fummowo
Copy link

Fummowo commented Apr 18, 2024

image
I got the OBS thing too, but more specific this time

@Natsumi-sama
Copy link
Member

Both programs use Cef so it seems the installer can't distinguish between these 2 programs, it is a OBS installer bug.

@Myrkie
Copy link
Contributor

Myrkie commented Apr 18, 2024

Both programs use Cef so it seems the installer can't distinguish between these 2 programs, it is a OBS installer bug.

the installer goes by what applications process handle lock the folder, lots of apps randomly lock the obs folder, ive noticed vrcx, everything, firefox and free download manager do this, even have had it happen with the plastic scm folder getting process locked by unrelated apps. just tried to update plastic now

image
image

previously
LOCKDE~1_oXB2kz5S1I

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request in progress Being looked at or worked on
Projects
None yet
Development

No branches or pull requests

8 participants