2019年6月19日

Pimax 8K/5K+ メガネ対策

Pimax 5K+は、眼鏡で使えないこともないけど、やっぱレンズに傷つけそうでいやだなぁ。
と思って、Oculus Riftのときに使っていたような視力矯正用眼鏡レンズホルダーを作ろうとした。

まず、安い眼鏡の通なんでおなじみのZENNIで、安くてレンズが大きいフレームを探した。オプションを付けなければ$9.95+送料$9.95と激安。
Gray Aviator Glasses #418912

でも3Dプリンタが手元にないしなぁ。と呟いてたら、@nyajigon22さんが3Dデータを作成し、3dプリンタでプリントしてくれました!感謝感謝です。


可能な限り自然なそり角にし、前傾角を付けることで、普段の眼鏡と見え方はほぼ同じ。違和感なし。
レンズも大きめなので、Normal FoVのほぼ全域をカバーしてくれる。
ただ、鼻が若干当たるので、フェイスパッドの厚さで調整している。
完璧。


なんと、データも公開されています。上記の眼鏡とコレがあればもう幸せ。
Pimax 5k + / 8k prescription lens adapter STL - Pimax 8K Series - Pimax Forums
プリント済みフレームはヤフオクで出品してくれてるから、これを買うと良いよ。
ヤフオク! - nyanko4321jpさんの出品リスト
2019年3月3日

Pimax 5K Plus VR Headset Review

Pimax 5K+を手に入れ、1ヶ月くらい使ってみたのでレビュー。
Pimax 8Kではなく5K+にした理由は、8Kはなめらかで動画鑑賞に向き、5K+はくっきりでゲーム向きと事前レビューにあったから。有機EL液晶の5K BEはBrainwarp非対応とのことで5K+に決定。
※Oculus Riftからの乗り換え。HTC ViveとVive Proも使ったことがあります。
※レーシングシミュレーターのiRacingしかやりません。
※Pitool 1.0.1.103 Betaでのレビューです。

〜画質〜
スクリーンドアエフェクトは、ほとんどわからない。
ピクセルパターンのせいか、ドット感が感じられる。あと織物のような縦縞も見える。しかしこれらは注視してやっと気づく程度。有機ELではない普通の液晶なので、暗いシーンでは黒浮きが見られる。普通の液晶ディスプレイと同じ。
Riftとは精細感が段違い。文字も読みやすい。画質には文句なし。

〜視野角〜
広い!対角200度のFoVは、横170度×縦110度。横FoVは3段階から選ぶことができて、Large(横170度)、Normal(横150度)、Small(横120度)から選べる。狭いほうが描画しなきゃいけない解像度も少ないのでグラフィック負荷も低くなる。つまりfps稼げる。
Normal FoVでも箱車にのって正面を向いたら、助手席側サイドミラーが視界の隅に入る。NormalからLargeにして追加される領域はレンズの外縁部になるせいか画もボケて情報量はあまり増えないくせに描画負荷がかなり重いので、ぼくはNormalで使っている。

〜装着感〜
この項目は顔の形状により評価は変わるので参考程度に。
フェイスクッションのカーブがRiftに比べてゆるく、僕には合わなかった。オデコと頬骨だけ圧迫される。純正スポンジがやわらかく、長時間着用してるとずれてくるため、ヘッドストラップは結構締め付けないといけなかった。締め付けると血流が阻害されるのか、妙な疲労が蓄積される。
メガネ民のこともあまり考えられていない。純正スポンジだとメガネがPimaxレンズに接触する。このままではキズだらけに。
これらの問題は、厚いクッションを2枚使いすることで軽減された。
おまけにレンズから目を離したせいか、周辺の魚眼レンズのような歪みも軽減された。
でも、ヘッドストラップの締め付けはキツイくしないといけないまま。長時間の着用はしんどい。
Vive用の厚いフェイスクッションとデラックスオーディオストラップを流用すると快適になるらしいが、まだ試していない。

〜パフォーマンス〜
iRacingにおいてi9-9900kとGTX1080の環境では、Riftと比べてグラフィックが重くなった感じはない。というのもRiftのときはスーパーサンプリング(内部解像度)を盛っていたが、PimaxではSteamVRの設定で80%くらいでも十分に精細なので、描画しなきゃいけない解像度はあまり変わらないのかもしれない。少なくとも最低GTX1080みたいなことは無いのでご安心を。
90Hzをキープできない環境なら、設定で72Hzに落とすのもアリ。描画負荷が単純計算で2割減。90Hz割ったり割らなかったりするより72Hz安定のほうが快適。Brainwarpは、遅延がある感じがしたのでオフにしている。


〜総評〜
FoV広いの最高です!!Rift/Viveの「穴から覗いてる感」はなくなった。4輪用ヘルメットのSNELL規格(左右180度)の視野にはわずかに足りないものの、ヘルメット被ってるくらいの視野になっている。細かい不満はありつつも、FoV広いのがすべてのネガティブを打ち消す。例えばレーシングシミュレーターのように、周辺視野の情報が重要な場合はもう戻れないね。
redditの有志が対応ゲームリストを作ってくれているので、よく遊ぶゲームで動きそうなら是非ご検討ください。



〜小ネタ〜
・トラッキングロストから素早く復帰させるには、じっと待つのではなく、首をぐるっと1〜2回転させるといい。
・ベースステーションとの距離が近すぎるとトラッキングが安定しない。1.5mは離したい。
・Large FoVだとSteamVRのSupersamplingがうまく効かず低画質(低解像度)になる。これは現在のSteamVRの仕様なので、Pitool側で内部解像度を設定すると回避できる。Normal/Smallなら関係ない。(いずれ解決するかも)
・IPDは、Rift/Viveで設定していたものと同じ数値を入れてはいけない。左右の液晶が斜めに配置されている関係で、スイートスポットは、それより2〜5mm狭いところにある。IPD設定時に使いやすいpimax_default.jpgがこちら
・5K+はロットによって液晶が違う。Black dotsが見えるロットと、Black dotsが見えないけど縦縞が目立つロット。うちの5K+(backer 34xx)はBlack dotsが見えるほうでした。でも絵が動いてるゲーム中は全然気にならない。
・Windowsのユーザー名が英語以外だとPlace the helmet in the visible position of the base stationのままHMDが動かない。

〜シムレーサー向け小ネタ〜
・SimucubeのOSWをオンにしているとEMIノイズのせいで、本体のセンサーがあるところに触れるとトラッキングロスト、画面全体がグレーアウトする。HMDのズレを治そうとするときに、ストラップの付け根より前を触らないように気をつけないといけない。Pimaxのケーブルにフェライトコアを入れたら少しマシになった。
・G27が原因で白いドットのちらつきが発生することがある。PCケースをアースに落とすと解決。

〜参考リンク〜
下記リンクの内容は一通り読んでみよう。上記の小ネタの詳細も書いてあるよ。
Table of Contents (Wiki) - Pimax 8K Series - Pimax Forums
reddit: the front page of the internet (Pimax Wiki)
2019年1月7日

Intel Core i9-9900k

レーシングシミュレーターのiRacingはちょっと古めのCPU+グラボでも割とヌルヌル動く。でも、新し目のサーキットの特定のエリア(例えばニュルGPやモンツァのホームストレート)で著しくfpsが落ちる。グラフィックオプションを相当削っていても、だ。うちのi7-4790k+GTX1080の環境でもfps落ち込みは発生していたものの、処理落ちするエリアは決まっているので、慣れてしまって特に問題なくドライブしていた。
この処理落ちはiRacingに厄介なボトルネックが存在しているのが原因だと思われる。最低fpsを上げるためにはシングルスレッド性能が高いCPUを使って、力技でそのボトルネックをゴリゴリ通す必要がある。

そんな折、「9900kならVRで90張り付く」とかいうツイートが目に入ってしまった。調べてみると確かにシングルスレッド性能は9900kが最強。2コアまでなら5GHzまで上がるとか。これiRacing用のCPUじゃん。こりゃ買い替え時が来たかも。ということで約4年ぶりのCPU交換。CPUとマザーボードとメモリだけ交換すりゃいいか。さあパーツを選ぼう。


CPU: Intel Core i9-9900k
現時点でシングルスレッドのベンチマークスコアが最強。8086kとか9700kとか中途半端なCPUにして後悔しないように。

M/B: GIGABYTE Z390 AORUS PRO
Z390の一番安いのでいいかな?と思ってたらZ390のマザーボード発熱比較データを見つけて思いとどまる。温度が低いほうから順番に価格を見ていくと6万、4万、7万、6万、2.4万、4万、5万。となれば2.4万のコレにするよね。

MEM: PATRIOT Viper White LED DDR4 16GB (2 x 8GB) 3200MHz Kit PVLW416G320C6K
3200メモリが2666とあまり価格差がなかったのでこれで。ベンチマーク見てると3200運用したくなるよね。ゲーミングPCなら8GBを2枚の16GBで足りるでしょ。

PSU: Antec NE750 GOLD
Z390マザーボードはCPU12Vが2系統刺さる。1系統でも動くので今使っている電源でも動くはず。でも電源は消耗品なので、ついでに交換しとく。CPU12Vが2系統出せる電源のなかからコスパ良さげなのを選定。

Cooler: Noctua NH-D15S
9900kは爆熱。でも定格なら空冷でいけるとか。空冷最強っぽいこれを選定。型番末尾"S"無しのNH-D15と比べると放熱フィンが全体的に上にずれているらしい。それで拡張スロットの一番上を塞がないらしい。なのでS付きにしておく。

M.2 SSD: Intel SSD 760p M.2 256GB SSDPEKKW256G8XT
ここまで来たらOS用ドライブも替えてやろう。いつのまにかM.2が安くなってた。

CPUグリス: MOLY-SLIP COPASLIP
グリスも拘ったほうがいいのか?と「CPUグリス 実験」とか検索してたら、「冷える」CPU用放熱グリスを探せ!×4 - Deap Peace というページを発見。ん?Copaslipなら工具箱に入ってるぞ?これにしよう!レースシムPCにはこれしかない。


ケースはDefine Cを流用。結局、使いまわすパーツはケースとグラボ、データ用SSDのみでした。ほぼ新PC。さて、組みますか。

このケースはマザーボードより上方に空間がない。そして配線裏通し。さらに今回買ったCPUクーラーは大型で、上側に寄っている。マザーボードに先にCPUクーラーつけたらCPU12Vが刺せないね。なのでまずマザボにCPUクーラーのバックプレートだけ取りつけ、マザーボードは宙ぶらりんのまま12Vとケースファンのコネクタを刺し、ケースにマザーボードを固定、最後にCPUクーラーを装着したら、マザーボード固定ネジ穴のうち1箇所がCPUクーラーに隠れるのが発覚。CPUクーラーを取り外し、そのネジを外し、CPUクーラーを再度取り付け。今度はCPUファンのクリップが取り付けにくい。マザボ固定ネジをまたまた外し、マザボをずらしCPUファンを装着。こんな手順でやっともとに戻せた。はー、疲れた。

※写真はメモリがデュアルチャンネルになってなかった!さしなおした。

肝心のiRacingにおけるパフォーマンスは…。
冒頭に書いた特定の場所の処理落ちが消えた!
画面内に25台くらい並んでても処理落ちしない!
特定の場所+画面内に描画される台数が多いと、さすがに少し処理落ち。が、以前とは比べ物にならない快適さ。
やはりレベルを上げて物理で殴るが正解でしたね。
心配していたCPUの発熱に関しては、iRacingはボトルネックのせいでCPUをフルに使い切れないので、空冷で全然余裕でした。
2018年8月21日

Neogeo Mini Pad 基板乗っ取り

Neogeo Mini Padを乗っ取り、自作や改造アーケードスティックで使えるようにする方法。
他のアナログスティックを使ったコントローラーに応用できるかもね。


2軸アナログスティックの1軸のみを取り出してみると、左図のようになる。
Vccには5Vだったり3.3Vだったり電圧がかかっている。
スティックを操作すると矢印が動いて、Outputにかかる電圧が変わる。スティックの傾きはこの電圧を読み取っているわけですね。
例えばNeogeo Mini PadのX軸の場合、Vccは3.3V。Outputが約1.0V以下なら左、約2.1V以上で右となってた。
ということは、右図のようにスイッチを追加して、OutputとVccを短絡させればOutputは3.3Vになり左、GNDと短絡させればOutputは0Vになり右入力となるよね。Y軸ならば0Vで上、3.3Vで下入力となる。

じゃ、三和レバーをNeogeo Mini Padの基板に繋ぐにはどうしたらいいかというと、次の図のようにGNDパターンの2ヶ所をカットし、ジャンパ線を飛ばす。

Pad側(裏面)はこんなかんじに接続。(LXとLYは基板のシルク印刷の記号です。)
Padのアナログスティックは外さずに残しておく。(外す場合はアナログスティックの中立位置の代わりになる固定抵抗を付けること。)


と、ここまでは普通の基板乗っ取り。しかもレバーの基板を加工するので汎用性がない。
もう一歩進んだ例として、レバーは無加工でフォトカプラを使う方法を紹介。
レバーのマイクロスイッチでフォトカプラに電流を流し、本記事の一番最初の図の右図スイッチを電子的にオンオフさせるわけですね。
参考:フォトカプラはこうして使う | ルネサス エレクトロニクス
ブレッドボードで試作したら問題なく動いたよ。いわゆるD-sub化している人におすすめ。


しかし、世の中にはもう三歩進んだ方がいらっしゃる。
とよしま語録: NEOGEO mini コントローラ
基板乗っ取りやめて、これ作っちゃお。
おわり。
2018年7月10日

Marshall DSL1C 1W Valve Guitar Amp

たまにはエレキギターでも弾こうかな。
あ、アンプが無い。おうち用アンプを買うか。というおはなし。

初めてのアンプは、初めて買ったギターにセットで付いてきた、よくわからんメーカー製ソリッドステートアンプだったよね。
その後バンドサークルに入り、部室にあったJC-120にエフェクターを繋いで使ってた。どこのスタジオにもライブハウスにもあるので都合がよかった。
就職とともにバンド活動は終わり、Marshal DSL401を購入。でも一人だとあまり弾かない。
すぐにバンドに誘われて加入。ボーカル、ギター、ベース、ドラムの4人バンドのギター担当に。そこのバンドはプライベートスタジオ(という名の小屋)があったので、自前の機材を置きっぱなしにできた。DSL401じゃドラムに音量で負ける。必要に迫られて、100W真空管のDSL2000と1960Aキャビネットを購入し、スタックアンプ化。これもライブハウスには必ずあったので、現場での音作りが楽だったね。
このころは幅80cmのエフェクターボードがいっぱいになるほど、ペダルをやたらめったら繋いでいた。
ボーカルが脱退。するとぼくがギターボーカルに。歌いながらエフェクターをオンオフするのがめんどくなって、歪みペダル1個+ワウペダルという構成に。そして歪みをアンプで作り、ギター本体のボリュームノブで歪み具合を調整することを覚えた、
この辺まできてやっと自分の欲しい音がわかってきた。いろいろなヘッドを試奏し、50W真空管の Marshall Vintage Modern 2266 に変更。もうアンプ直です。
アンプで音が決まれば、ギター本体のPUセレクター、ボリューム、トーン、そして弾き方の工夫で音色には表情が十分出せる。こんなかんじで、ライブハウスにはギターを背負ってアンプヘッドをゴロゴロ転がして向かってました。ラケンロー。


懐かしいアンプ遍歴を披露したところで本題に戻る。
いまはマンション暮らしのため、あまり大きな音は出しにくい。おうちでマーシャルサウンド鳴らしたいなぁ。
と、あるじゃないですか1Wの Marshall DSL1C
なんとこの出力でフルチューブ。渋すぎ。0.1Wにアッテネートもできるらしい。価格も4万円未満と激安。コンボアンプで場所も取らない。もうこれしか無いじゃない。
すぐ買うよね!


ということで、ストラトでのレビューです。
小さくてかわいいのに、ちゃんとマーシャルの音がする!!
集合住宅で真空管の1Wなんてとんでもない。0.1Wでも十分な音量が出る。ボリューム8~9時くらいまで絞って、やっとテレビ以下の音量。
ちゃんとアンプを傾けてスピーカーを耳のほうに向けてあげれば、この音量でも十分Marshallできる。
もともとあまり歪ませない人なぼくでも、Classicチャンネルでクランチまで持っていくには結構な音量にしないといけない。UltraチャンネルでGain絞り気味で音作りすることにした。
ピッキングのタッチがしっかり出るおかげで、すっかりギターの腕が落ちているのが判明し愕然としたよ。腕がこれ以上落ちない程度には弾いていこうかなと考えてます。
とにかく、おうち練習にはこれしか無いのでは?買いです。
2017年12月20日

[OSW] SinCos encoder for MiGE

PCのアナログ入力は、DirectInputの仕様で最大16bit(65536ステップ)。ステアリングコントローラー(ハンコン)も同じ。最近の市販ハンコンはだいたい16bit。ロックトゥロックを、0~65535の数値に置き換えてPCに送っているわけですな。

例えばロックトゥロックを1080度に設定している場合、ステアリングを1度傾けると 65536÷1080≒61ステップの入力値が変わる。ステアリングを1回転(360度)回すと、65536×(360÷1080)≒21845ステップ。

ここで唐突にOSWの話。
みんなのMigeサーボモーターに搭載されているエンコーダーは、2500PPR(10000CPR), 5000PPR(20000CPR), 10000PPR(40000CPR)のどれかのはず。単位のCPR(Counts per Revolution)は、1回転あたりの位置検出数を表している。つまり、2万CPRじゃ21845に微妙にスペック不足。4万CPRの必要性が証明されてしまった。アーメン。


ところで最近、iRacingのForumで「エンコーダーを高解像度のものに交換するとスゲーぞ」と話題になっている。既にマニア向けシムリグ屋で販売されてる。
Simtronix - MiGE SinCos Encoder Kit 3,686,400 CPR
SimRacingBay - SinCos encoder for MiGE motors 2,097,152 CPR
370万CPRと210万CPR?こんなに要らないよね。ポチッ。


届いた。
MMosが対応してないので、Simucube Firmware に入れ替える。
エンコーダー変更前後の違いを確かめるため、この状態でしばらく試走しておいた。

そして210万CPRエンコーダーに交換。
お、ノイズが明らかに減った!
前より滑らかな気がする?
確実に違うんだけど明確に言葉で表現できない…。
交換して良かった気がするような気がする。

センサーの精度は分解能の10倍必要という話もあるので、21845×10くらいのCPRまでは意味がある、という理屈は成り立つ。ただし数百万CPRに意味があるかどうかは、正直よくわかりませんでした。
実用上は10000CPRでもまったく問題ないし、追加投資に見合うリターンは無いかも。マニア向け。ラップタイムは変わらん。

これからOSWを買うなら、SimRacingBayの210万CPR付きの SimuCUBE based OSW kit SinCos – with Acrylic case にしといたら精神安定上いいかもね?というお話でした。
2017年7月18日

Oculus Rift CV1 メガネ対策

事前情報どおり、Riftは製品化の際に眼鏡民のことを忘れていたようです。
今メガネしてる方、ちょっとテンプルをコメカミに付くくらい押し当ててください。そんな感じ。
っつことで、視力悪い人が快適にRiftを使う方法を模索してみた。

Riftが届いた当日、メガネをしたまま装着してみたらいろいろ窮屈すぎて、コンタクトレンズを装用。コンタクトめんどくさい。

次の日、ジュニア用フレームのメガネをつくってきた。要はテンプルが薄くて、こめかみ辺りに沿っていればいいのだ。
なかなか快適になったぞ。装着は少しコツがいるけど慣れればいいし、悪くない。でもRiftレンズに傷を付けちゃった。鼻当てを広げて、なるべく目に近づくように(Riftのレンズとのクリアランスに余裕をとるように)装着したら解決。


VR Lens LabOculus Rift Lens Inserts を注文してみた。発注から2週間で到着。
これがなんとも不安の残る固定方法。あのIPD調整時に伸縮する布の部分に上部のゴムがきて、下部はFacial Interfaceで押さえる感じ。取り付け取り外しにレンズに気をつかうし、正しいレンズ位置にするには微妙な位置の微調整が必要。アナログラジオをチューニングするのに近い感覚。誰かと交互に使ったりする場合は向かない。
そして、周辺視野が歪む。メガネのときはなんとも無かったVR卓球でも酔うようになったぞ。卓球台のフチが湾曲する。
歪みが少ないという"RABS Premium Lenses"オプションを追加したのになぁ。ぼくは近視+乱視だからか?度数が弱ければ歪まないのかもしれないが、わかりませんな。
残念ながら酔うので使えない。返品も転売もできないので窓からポイッ。


Oculus Rift CV1 Prescription Lens Adapter
次はこれやってみる。3Dプリント用データが3バージョンあったので、一番レンズの大きい"43mm version"でこれを作ることにした。
レンズはZenni #550021を度数指定してオーダーし、レンズ部分のみ使う。
このメガネ、$9.95+送料$9.95と激安。そこで$4.95の"Standard anti-reflective coating"オプションを付けて総額$25。発注から12日で届いた。

DMM.makeで43mmLensAdapter.stlをナイロンナチュラル素材でプリント。1,928円。こっちは1週間くらいで到着。ちなみにフレームは油性ペンで黒く塗っとく。



驚きのクリアランス。

これはRift本体側じゃなくfacial interfaceのフレームでしっかり挟み込む固定方法。
レンズの位置がしっかり決まるし、取りつけもレンズに触れる恐れなくできる。これオススメです。メガネの処方箋などで自分の度数がわかるなら今すぐオーダーしとくべき。
ちなみにVR Coverはゴム紐で固定できなくなるので併用は諦めた。
やっと快適Riftができるぜ!


3Dプリントフレームの派生バージョンも公開されているのでお好みで作ろう。
VR Cover Regular Facial Interface対応バージョン(純正と少し形状が違う)
・VR lens labのレンズだけ流用バージョン(不安定固定改善)
・レンズが分厚い人向けバージョン(ド近眼レンズでRiftレンズと接触したとき)