【無料配布】VRoid/VRM ファイルサムネイル表示(Windowsシェル拡張)Free VRoid/VRM file thumbnail shell extension for Windows Explorer
WindowsのエクスプローラでVRoidファイル等のサムネイルを表示するシェル拡張です。WindowsエクスプローラにVRoid studioで作った.vroidファイル,カスタムアイテムファイル,VRMファイルのサムネイルを表示します。ファイルを選択するとプレビュにも拡大表示されます。通常はVRoid studioの上でしかサムネイルが表示されますが,このアプリを入れておくと「開く」からファイルを選択する時もサムネイルを表示することができます。Windows 64bit版用です。問題などあればご連絡いただけると助かります。
使い方
*予めマイクロソフトから,Visual C++ 再頒布可能パッケージ X64 をインストールしておいてください。これ、Visual studioに入っているらしく、Unityとかとか一緒にインストールされてる方が多い様です。動かない時にインストールでもいいかもです。 X64 再頒布可能パッケージ: https://aka.ms/vs/17/release/vc_redist.x64.exe ダウンロードページ: https://learn.microsoft.com/ja-jp/cpp/windows/latest-supported-vc-redist?view=msvc-170 ○インストールの方法 1. ThumbnailProvider の ZIPファイルをダウンロード 2. 右クリックして「すべて展開」を選択 3. 展開されたフォルダの「install.bat」をダブルクリックします。 4. 「...成功しました」とメッセージが出れば,OKを押します。「Windows によって PC が保護されました」の警告が出る時は,詳細情報をクリックして実行を押してください。* 5. VRoidファイル等のあるフォルダをエクスプローラで開いて,表示を中アイコン,大アイコン,特大アイコンのいずれかにするとサムネイルが表示されます。 ○アンインストールの方法 1. 展開されたフォルダの「uninstall.bat」をダブルクリックします。 2. 「...成功しました」とメッセージが出れば,OKを押して完了です。 アンインストールしても,Windowsのキャッシュにサムネイルが残るので,これも消したい場合は,すべてのサムネイルを消す必要があります。 ・Windows11 1. 「設定」→「システム」→「ストレージ」でHDD(SSD)の使用状況が表示されます。 2. 一時ファイルをクリックします。 3. 「縮小表示」以外のチェックを外します。 4. 「ファイル削除」のボタンを押します。 ・Windows10 1. エクスプローラでPCを開きます。 2. Local Disk(c:)を右キリックして,プロパティを開きます。 3. 「ディスクのクリーンアップ」のボタンを押します。 4. 「縮小表示」が選択されているのを確認して,OKを押します。 *インターネットからダウンロードしたソフトでは,このメッセージが出るようです。私を信じて実行ボタンを押してください。
注意/Note
この配布物の販売はできません。ウイルス混入などを避けるため,友達など信頼できる方とのファイル共有とかはOKですが、不特定多数の方にダウンロードさせるような公開・再配布は禁止します。 To avoid virus risk, redistribution and selling are not allowed except for file sharing with your reliable friends and/or family.
あとがき#2
VRoidがVRM1.0対応になり,Thumbnail Providerもバージョンアップが必要になりました。今回は,F先輩忙しくて構ってくれないので,一人で色々探しながらの作業になりました。 TP0.4では,VRM1.0のファイルを表示した時に,口のテクスチャが表示されてしまいました。VRMを定義しているJSONが変わったために,適当に最初のテクスチャを表示していたようです。で,実はJSONからサムネイルのテクスチャを見つけるのにJSONパーサを使わずにstrcmp関数だけで実装していたという力技だったのです。JSONライブラリとかを導入すると大変なんじゃないかと思っていたからです。 でも,そんな力技ではVRM1.0には対応できそうがないので,簡単に使えるJSONライブラリを探していました。json.hppという軽量でヘッダファイルだけでJSONが使えるものを見つけて,これを使ってTP1.0を実装しました。 あと,VRoidファイルはZIP圧縮されているので展開する必要があります。メモリ上で展開する方法がわからなくて,仕方なく中間ファイルを作っていました。で,ChatGPTにZIP展開の方法を尋ねてみたら,ストリームから展開する方法を教えてくれました。まぁ,教えてくれたままだとエラーになって動きませんでしたが,足りない部分などを追加したりして動作するようになりました。TP1.1がこれです。この方法だとファイルの必要な部分だけを読み込んで処理できるので圧倒的に速くなりました。 ただ,以前のようにVRoidのサムネイル表示を登録して,後からVRMとカスタムアイテムの表示を登録しようとすると,登録に失敗することがあります。なので,3種類とも一度に登録する方法に変わっています。
あとがき#1
はじめてのCは大学でやりましたが簡単な計算だけで,Windows プログラミングと言えるのは今回が初めてです。マイクロソフトのVisula studioでC++を使いましたが,このアプリはDLLというタイプので普通のアプリと少し違います。1ヶ月ほどVRoidをほとんど触らずに,マイクロソフトのチュートリアルとサンプルを色々調べながら作っていきました。仕事が終わってから,プログラミングを教えてくれた職場のF先輩に感謝します。初心者ですが,β公開までこれたのは先輩のおかげです。 このアプリで,VRMファイルやカスタムアイテムのサムネイルを表示することができますが,既にBOOTHに先輩方のソフトが公開されていますので,ご紹介させていただきます。先輩方がサムネイル表示に成功されていなければ,このアプリを作ってみようとしなかったし,私にもワンチャンあるのでは?って考えなかったと思います。 VRMファイルのサムネイル表示 スワンマンのおみせ VRMのサムネイルをエクスプローラ上で表示できるようにするやつ https://booth.pm/ja/items/2386970 VRoidカスタムアイテムファイルのサムネイル表示 佐世の裁縫台 .vroidcustomitemをエクスプローラーでサムネイル表示するやつ #VRoid #Windows https://susanoo.booth.pm/items/3570722
おまけ vrmViewer0.0
vrmViewer0.0 は,Ringoが初めて作ったWindows アプリです。.vroidとカスタムアイテム,VRMをウインドウ表示します。あまり役には立たないと思いますが,せっかくなので公開させてください。 これは,WPFというタイプで,C#でプログラミングしました。C#はjavascriptに似ていて,Ringoには分かりやすかったです。土曜日の午前中にインストールしてチュートリアルとサンプルを眺めてて,午後にプログラミングして,夕飯の買い物までにできちゃった感じです。 これで,何だWindowsプログラミング簡単じゃんって思ったのが運の尽きで,エクスプローラにサムネイルとして表示するアプリは全く別物で,C++とかDLLとかと一ヶ月近く格闘することになったのでした。 Known bug モバイルの子を開こうとすると,サムネイル入っていないので,メモリの外まで探しに行って強制終了します。
変更履歴
2023年3月25日 ThumbnailProvider1.1 Zlibを中間ファイルからストリームに変更 VRM、カスタムアイテムの表示をデフォルトに 2023年3月16日 ThumbnailProvider1.0 VRM1.0のサムネイルに対応した json.hppを使って実装した なんと,0.xでは文字列検索だけでJSONを処理してた 2022年10月27日 ThumbnailProvider0.4 画像データを直接変換するようにした VRMの中間ファイルを作らなくした 2022年10月16日 ThumbnailProvider0.3 カスタムアイテム・VRM表示 エラー検出の強化・Logの削減 メモリ消費量の低減 2022年10月9日 ThumbnailProvider0.2 日本語フォルダ名に対応 2022年10月8日 ThumbnailProvider0.1 デバッグ用バージョン LogViewを添付 2022年10月6日 ThumbnailProvider0.0 最初の公開になります。