こんにちは、仕事始めから次男が高熱で、今年はまだ保育園に次男は登園していません。本日、園の餅つき大会があり、次男初の登園?でした。@kjunichiです。
TL;DR
Electronで必要な処理
透明なウィンドウを表示する
デスクトップいっぱいのウィンドウを表示して、透明にする。
const electron = require('electron'); const electronScreen = electron.screen; const size = electronScreen.getPrimaryDisplay().workAreaSize; mainWindow = new BrowserWindow({ width: size.width, height: size.height, transparent: true, frame: false, "always-on-top": true, "title-bar-style": "hidden-inset" });
OSXでクリックスルーさせる設定
残念ながら、現状以下のようにして、クリックを無視する設定はOSXのみ。
mainWindow.setIgnoreMouseEvents(true);
three.jsで必要な設定
- alphaブレンドを有効にする。
- スクロールバーを表示されない為に、少し小さめのスクリーンにする。
- preserveDrawingBufferを有効しているのは気休め程度かも。。
const width = window.innerWidth*0.98; const height = window.innerHeight*0.98; // レンダラー const renderer = new THREE.WebGLRenderer({ alpha: true, preserveDrawingBuffer: true }); renderer.setSize(width, height);
参考資料
- Electron on Macでclick-thruを実現する - Qiita
- css - Changing three.js background to transparent or other color - Stack Overflow
関連記事
- Poor rendering performance since electron1.4(Windows)
- Goの学習メモ~ファイルの存在チェックとWindowsでのファイルパスの扱い~
- abrakatabura.hatenablog.com
- abrakatabura.hatenablog.com
- abrakatabura.hatenablog.com
- node-ffiをGoで入門してElectronを使って応用してみる
- Electronで自分のIPアドレスをLAN内のiPhoneに通知するには
- ElectronはHTTP2が喋れないのか?
- WebGLを使ったElectronアプリをTravis CIで動かすまで
- Windows10のBlenderをアップデートしたらThree.jsのアドオンが無くなったが、見つけた
- ようやくJavaScriptで物理エンジンつかってオリジナルのコードが動かせつつある
- Three.jsでexamplesの高級車たちをblenderにExportしたが残念な結果に
- Raspberry Piの温度をgRPCを使ってElectronで作ったデスクトップマスコットに表示させた
- macOSのCPU温度をgRPCを使ってElectronで作ったデスクトップマスコットに表示させた
- ElectronでmacOSのDockやWindowsのタスクバーに独自のアイコンを表示するには