VRoid HubにVRMをアップロードすると、VRMファイル内のライセンスが書き換わる問題

結論

  • VRoidHubは、投稿されたVRMファイルについて、作者に説明不足な状態でライセンスを書き換え、自社URL(hub.vroid.com)を埋め込んで配布している。現状作者のライセンスを維持してVRoid Hub上でVRMを配布する方法はない。
  • 元々設定してあったOtherLicenseURLが消され、VRoid HubのURLに上書きされるのは気持ちが悪い。
  • VRoid Hubは、VRMと条文互換性がない独自ライセンス/利用条件を作っている。
  • 先にサービスを展開して、こっそり独自仕様を忍ばせるのはスマートとは言えない。VRM規格を変更するのであれば、VRMコンソーシアム等での適切な議論の上で変更してほしい。

 

実際にVRoidHubにVRMをアップロードしてみる

自作のVRMファイルをVRoid Hubへアップロードして公開してみよう。OtherLicenseURLも記入して…、こんなライセンスのVRMファイルを作ってみる。

f:id:o_mega:20190201011253p:plain

これをVRoid Hubへアップロードする。

f:id:o_mega:20190201032241p:plain

「モデルデータの利用条件を確認しよう」と誘導されるので、それに従う。

f:id:o_mega:20190202032035p:plain

「他の人の利用」を「OK」に設定しないと、DL可能な状態にできないと言われたので、「OK」を設定してみる。

f:id:o_mega:20190202031856p:plain

利用条件というのはVRMのライセンスとは異なるのか?疑問があるが「登録して公開」する。これでDL可能になった。

f:id:o_mega:20190202035945p:plain

さて、「このモデルを利用する」からVRMをダウンロードして、UniVRMで見てみる

f:id:o_mega:20190201012916p:plain

え?何このURL?自分の設定したURLはどこ?どうしてVRoid HubのURLが入ってるの?

 

あなたがVRMモデル作者で、DL可能状態でVRoid Hubへアップロードしているなら、ぜひ自分のVRMファイルをDLしなおして、VRMファイル内のOtherLicenseURLを確認して見てほしい。ここではUniVRM(0.44)で確認を行ったが、他のVRM対応アプリケーションでも同じように確認できると思う。hub.vroid~から始まるURLが見つけられるはずだ。

 

どうしてライセンスURLが書き換わるのか?

FAQを探るとそれらしい記述は見つけられた

VRoid Hubの利用条件とVRMライセンスについて – VRoid ヘルプ

「その他のライセンス条件(Other License Url)」について

商用利用についての詳細や、クリエイティブ・コモンズから変更した部分を補うために、「その他のライセンス条件(Other License Url)」については、利用条件を記載したURLが設定されます。

 

なお、こちらの記事でも述べているように、すでにライセンスが設定されているVRMファイルをVRoid Hubにアップロードした場合、そのモデルデータにある元のライセンスが反映されたVRoid Hubの利用条件が設定されます。

https://vroid.pixiv.help/hc/ja/articles/360014960454

VRoid Hubにアップロード後に、ご自身で利用条件を変更しない限り、元のライセンスが異なる条件に変更されることはありません。

(2019/2/2時点)

 「ご自身で利用条件を変更しない限り(中略)変更されません」とは書いてあるものの、変更せずにDL可能状態にはできない。いくつかのVRMファイルで確認したところ、VRoid Hubで配布されるVRMファイルはライセンスが上書き改変されたと思える状態になっていた。

つまり、VRoid Hubには作者がもともと設定したライセンスを維持して「DL可能な状態」にする方法がない。FAQには続けて下記の記述があるが、これは実際の挙動とは異なる説明だろう

 

なお、この説明FAQへのリンクや誘導は変更フローからは存在せず、上で試したような普通の作業フローで気づくのは難しいと思える。

VRMライセンス内容の引き継ぎと変更について

VRoid HubにアップロードしたVRMファイルは、元のライセンスデータをそのまま保持しています(※1)。タイトルやバージョン等の一般情報(メタ情報、Information)も引き継いでいるので、VRoid HubからダウンロードしたVRMファイルをUniVRM等で確認すると、元のライセンスデータが確認できます(※2)。

VRoid Hubでは、VRMのライセンスデータを「利用条件」として、互換性を維持したまま、より分かりやすく表示しています。

(2019/2/2時点)

上で試したように、VRMモデル作者の設定したOtherLicenseURLは上書きされ失われている。引き継げていない。

 

 

もう少しFAQを見ていく

VRoid Hubと、UniVRMや連携サービス上でのライセンスが異なるのですが – VRoid ヘルプ

VRoid Hubと、UniVRMや連携サービス上でのライセンスが異なるのですが

 

▼VRoid Hubに登録したモデルデータと連携サービス先で表示されるライセンスについて

 

VRoid Hubで登録したモデルデータを連携サービス上で読み込んだ際、VRoid Hubの利用条件と連携サービス上で表示されるライセンスが異なるライセンスのように見えてしまうケースがあります。

(2019/2/1時点)

「UniVRMでのライセンスが異なる」とUniVRMでのライセンス表示が適切にできなくなっている、つまり互換性が失われていることを把握しているようだ。他の規格互換ツールならともかく、標準実装であるUniVRMと表示が異なっている状況を見て、互換性があると明記しているのはなかなか不可解だ。互換性はファイルが読めるだけではなく、ライセンス条文も同一でなければ困る。

 

念のため、他のいくつかのVRM対応アプリケーション、VワールドVRM Live ViewerVirtualMotionCaptureHitogataVRMを開いてみて、VRoidHubと同様の利用条件表示ができているものはなかった。なぜこのようなVRoidHubでしか使われてないライセンス/利用条件を作って、そしてVRoid Hubユーザに適用させようとしているのか。

 

仮に、もしライセンスを変更/拡張するのであれば、本来例外的なライセンスを記入するOtherLicenseURL欄を多用するべきではないとだろう。
それこそ、他のライセンス項目同様に(例えば暴力表現や性的表現、商用許諾のように)VRM規格側へ取り込むべきといえる。ライセンス規格が乱立するのはVRMモデル作者としてもVRMユーザとしてもVRMアプリ開発者としても手間が増える。もともとのVRMのコンセプト、ポータビリティを高める目的にも反する。
こういった、現状分裂を引き起こしているライセンス/利用条件を、VRoid Hub内で配布する全VRMファイルに、説明不足な状態で上書きして使わせようとしているpixivの姿勢には疑問を感じる
 
VRMコンソーシアムにはpixivも参加してるのだから、ぜひそちらで議論してVRM規格を統一してほしい。
 

余談

余談だが、VRoidStudio(0.5.3-win)は特に問題なくVRM規格に準拠したライセンスでVRMファイルを出力している。

今回の確認にはVRoidStudioで作成したVRMおよびUniVRM(0.44)を使用した。

バーチャルモーションキャプチャー + LIVでVRゲーMR合成をしたりする副読解説

ざっくり言えば、これをやる方法です

 

この記事はバーチャルモーションキャプチャー公式サイトの操作方法を元にしつつ、それぞれがどんな感じに組み合わっているかを補足する想定でいます。元記事を参照しつつ、歴史的経緯やら「なんでこうなってんの?」的な部分を補完できるといいなあ

 

先にネタバレしておくと、上の絵のシステム概略図はこうだ。これを見てわかってしまったら、それでいい。今すぐSteamVRを立ち上げて公式説明を見ながら格闘しよう

f:id:o_mega:20190122031258p:plain

以下はこれがなんでこうなってるか、という歴史的経緯を含めた解説にする

使うもの一覧

以下は構成に必要になもの

使うハードウエア

  • HTC Vive
  • HTC Viveトラッカー
    • 必要に応じて追加。なければHMD+手(コントローラ)x2で3点トラック
    • トラッカーを追加する場合の推奨としては、推奨優先順に、腰、足先x2、肘x2、膝x2だろうか。とりあえず腰、足先x2の3個追加(6点トラック状態)するのがおすすめ
    • VMCでは柔軟なトラッカー設定が使えるため、例えば上半身のみの絵作りであれば、HMD+手(コントローラ)x2+腰で1個利用とか、HMDを使わず頭+手(コントローラ)x2+腰で3個利用とか、頭+手x2+腰で4個利用といったトラッカー配置ができる
    • 余談だがそもそもガンコントローラやテニスラケットをVR化するためのデバイスであって、全身にくくりつけてフルトラマンとかやってる人間が多い日本が異常らしいゾ。対抗しうるモーションキャプチャー操作「perception neuron」が25万とのことなので、トラッカーは(相対的には)安いらしい…

使うソフトウエア

  • バーチャルモーションキャプチャー(VMC)
  • LIV
    • VRアプリと連携するMR合成ソフトウエア
    • SDK組み込み済みのVRソフトと連携して、MR合成を行うのが主機能。MR合成のために仮想Viveコンと仮想Viveトラッカーや、録画機能も持つ
    • 「映像合成」と仮想Viveトラッカーが今回主要な役割をする
  • Opensource Broadcaster Software(OBS)
    • 定番の動画配信/録画エンコーダー
    • 単純なグリーンバック合成だけでいい場合や、LIV合成後の画面を組み合わせて凝った画面配置をしたい場合、動画配信をする場合に使う
    • ただのグリーンバック合成ならLIVよりこちらの方が軽い
  • VRソフト
    • 自分がプレイするソフト
    • 「LIV SDKが組み込まれているか」「externalcamera.cfgに対応しているか」「どちらも対応してないか」でざっくり扱いが変わる。後述

その他

 

基礎はexternalcamera.cfgとグリーンバック合成

そもそもの発端はSteamVR SDKにある、externalcamera.cfgを使ったグリーンバック合成だ。下動画の0:45あたりからがわかりやすい

youtu.be

動画が2016/4とあるように、SteamVR SDK当初からある。有名な例は、Circle of Saviors VRTGSデモだろう

www.youtube.com

 グリーンバックを背景にしてゲームを遊ぶ現実世界のプレーヤーを切り抜き、ゲーム画面と合成することで、VR世界にいるかのような絵を作る。これがexternalcamera.cfgを使ったMR合成だ。

 構成図はこうなるf:id:o_mega:20190127013517p:plain

当時の合成方法はHTC Viveでクロマキー合成映像を撮影するには - フレームシンセシスのやMRVideo - vrapp Wiki*記事に詳しいが、ざっくりいうと

  • 3本目のViveコン or Viveトラッカーにカメラをくっつけて実世界に配置
  • (対応している)VRアプリにカメラ座標情報(externalcamera.cfg)を読ませて(たいていの場合はexeと同じフォルダに配置して)MR合成モードにする
  • OBS等の動画ツールでグリーンバック合成をする(クロマキーで緑背景を透過して重ねる)

という感じである。合成ズレをへらすためには、externamcamera.cfgと現実を撮影するカメラの特性をキッチリ合わせる必要があるようで(手作業)なかなか骨が折れそうである

仮想コントローラの登場

ただ、この方法では合成のためだけにViveコントローラかトラッカーを1本買う必要があった。カメラを動かしてもちゃんと撮影されてる体にするのは、それしか方法がないのだが、別に個人でやるならカメラは固定でいい、それなら物理でコントローラ/トラッカーがなくてもいいじゃないか?ということで登場するのが仮想Viveコントローラ/仮想トラッカーだ。

コントローラ/トラッカーがなくても3つ目として認識させる。実際SteamVR画面を見ると出現していることがわかる(LIVが起動すると他コントローラ/トラッカー同様に電源が入った表示になる)

f:id:o_mega:20190116044524p:plain

仮想Viveコントローラ/トラッカーはいくつかリリースされている様子だが、今回はLIVに統合されているものを使う。

 

仮想コントローラを使う時に注意しないといけないのが、Viveコントローラの起動順序。SteamVR自体がVRアプリで使うのを、1本目と2本目のコントローラとしているので、物理コントローラを起動する前に仮想コントローラを起動すると、仮想コントローラが1本目や2本目に割り当てられてアプリを操作できなくなる。必ず、物理Viveコントローラの電源を先に入れてから、仮想コントローラの電源(LIVの場合はLIVを起動)を入れる

LIVは映像合成 + 仮想トラッカー + αのおまとめパッケージ

公式の動画をちらっと見ればわかるが、実写とVRアプリ空間のMR合成をするケースではexternalcamera.cfg単独とやることは大して変わらない。同じだ。

youtu.be

MR合成に至る面倒事を様々カバーしている。

  • 専用SDKVRアプリと連動し、より高度な合成(optional)(環境光を再現したり、前後位置で映像を分けて合成する)
  • 追加コントローラを買わずに済む、仮想Viveコントローラ
  • 単独でグリーンバック合成

むしろ、MR合成の諸々ツールをひとまとめにしてパッケージ化したのがLIVと言える。LIVが仮想Viveコントローラを内蔵しているので、前述のように物理Viveコントローラの起動より後に立ち上げる必要がある。

externalcamera.cfgはここでもカメラ座標の共通フォーマットとして、以前のMR合成モードから引き続き使われている。キャリブレーションでexternalcamera.cfgを読ませると、LIV SDKを経由してVRアプリに情報が伝達されるか、従来と同様にexternalcamera.cfgをexeと同一ディレクトリに配置する挙動をしているようす

VMCでアバターを使うケースに戻って比較

改めてVMC+LIV+VRアプリの構成に戻ろう

f:id:o_mega:20190122031258p:plain

実写MR合成のフローと比較すると、実はそんなややこしくなく「物理カメラによるグリーンバック実写映像」が「仮想カメラからのVMCのレンダリング結果」に差し替わっただけ。だからこそ、カメラ情報(externalcamera.cfg)は、VMCとLIVの両方で読む必要があるし、仮想LIVトラッカーに割り当てる必要がある。VMCが仮想カメラとしてLIVに認識されるのも、元が実カメラだったことに由来している(はず)

実写MR合成だと物理カメラに物理トラッカーといった実物があるので理解しやすいが、これらが仮想になったことでややこしく把握しにくくなっていると思うので、一旦実写MR合成のフローから再確認しよう、というのがこの記事なわけです。

あとコントローラの起動順序な!

以下適当QA

Q.VRアプリがLIV非対応&&externalcamera.cfg非対応の場合はどうする?

A.諦めよう。第三者視点でのレンダリングVRアプリが対応してない以上、第三者視点の合成はできない。

とはいえ主観視点+アバター合成でも雰囲気は悪くない。アバターが結構目を引いてくれるので、VR動画としても酔い対策になると思う。こんな具合に

 このケースでは、VMC+LIV合成とだいたい同じだが、

  • カメラをあわせる必要がないためexternalcamera.cfgは触らなくていい(仮想トラッカー/コントローラも不要)
  • クロマキー合成をOBSで行う

という感じになっている。LIVが絡まない分処理は軽く、仮想トラッカー/コントローラも絡まないためトラブルも少ない。とても汎用的で非VRゲーとかをやるにも使える。非VRゲーやる時にはVMCの手や頭設定をHMDやViveコントローラの変わりに、Viveトラッカーにすると楽だろう

上の絵を撮るときは、頭トラッカー+手トラッカーx2+腰トラッカーの4トラック装備で行った。HMDとコントローラは一切使用してない。上半身だけで撮影する時でも頭と腰で2点トラッカーがあると、首かしげや前のめり等、kawaいい動きが付けられるので積極的に腰トラッカーを装備したい

まあただ、この手の絵だとそもそも顔芸がほしいよね?というのはあり、その場合表情付けの方法を考える必要あるね(別オペレーターを用意するとか、コントローラなり、又はいっそVMC以外の顔認識系でやるとか)

Q.VMCでキャリブレーションしたときに、トラッカーが違う部位にアサインされてしまう。

A.LIV起動前にキャリブレーションをする。LIVが立ち上がる前にキャリブレーションすることで、LIVの仮想コントローラ/仮想トラッカーに割り当てられるのを防ぐことができる。

一番確実な方法は、VMCのトラッカー設定を「自動判定」からそれぞれ個別に割り当てるだが、ちょっと面倒かな。

Q.複雑な画面作りをしたい

A.LIVの合成結果を、OBSで更にキャプチャーする。OBS側でいろいろ配置して複雑な画面作りをする。

この時LIVの映像は遅延するので、OBSの音声入力を同じだけ遅延させるとよい(OBSのオーディオ詳細設定で同期オフセットを設定する)

Q.トラッカー固定とかどうするの?

A.いろいろググるとみんないろんな手を使ってるので、DIYだ。専用品もあるがやや高い。うちの例はこう

f:id:o_mega:20190127045340p:plain

頭は溶接ヘッドバンド、手or足はベルクロテープ+3Dプリント台座、腰も同様。台座はこのモデルを出力している。

Viveトラッカーはカメラの三脚ネジ(1/4インチネジ)が刺さる。Amazonだとこの手のアイテムが土台には便利だが、ホームセンターで15mmぐらいの1/4インチネジを買うといろいろアイデアが湧くかもしれない(ただしネジは頭が大きいので工夫は要るかも)。

f:id:o_mega:20190127045447p:plain

手装着例

他だとクロックス(サンダル)に、インシュロックで固定勢もいる様子。腰は安いウエストポーチを潰すとかいろいろ工夫しがいがあると思う。

専用品は例えばツクモで取扱あり(TrackStrap)

Q.一通り起動まで結構たいへんじゃない?

A.結構たいへん

LIV/externalcamera対応ゲーやるとき

わい「SteamVR起動!」
ベースステーション「フォオオオ…(30秒ぐらい」
わい(この間にトラッカー装備しよ…)
わい「ベースステーションB,C起動確認ヨシ!」
わい「トラッカー1,2,3起動!トラッカー認識ヨシ!」
わい「VMC起動!」
(これもなんか時間かかるので、平行してコントローラ起動)
わい「コントローラ認識ヨシ!」
わい「VMC設定ロード!キャリブレーション開始!」
(立ち上がってHMDを付けてTポーズする)
わい「(HMDを外して)VMCトラッキングヨシ!」
わい「LIV起動!externalcamera読み込みヨシ」

わい「VMCでもexternalcamera読み込みヨシ」
わい「SteamVRからゲーム起動」
(起動ちょっと待つ)

わい「LIV合成確認ヨシ!」
わい「OBS起動。OBSキャプチャー設定ヨシ!録画開始!」
わい「…よしゲームやるぞ(HMDをかぶる)」

非対応ゲーやるとき

わい「SteamVR起動!」
ベースステーション「フォオオオ…(30秒ぐらい」
わい(この間にトラッカー装備しよ…)
わい「ベースステーションB,C起動確認ヨシ!」
わい「トラッカー1,2,3起動!トラッカー認識ヨシ!」
わい「VMC起動!」
(これもなんか時間かかるので、平行してコントローラ起動)
わい「コントローラ認識ヨシ!」
わい「VMC設定ロード!キャリブレーション開始!」
(立ち上がってTポーズする)
わい「VMCトラッキングヨシ!」
わい「OBS起動!グリーンバック合成設定読み込みヨシ」
わい「SteamVRからゲーム起動」
(起動ちょっと待つ)
わい「OBSキャプチャー設定ヨシ!録画開始!」
わい「…よしゲームやるぞ」

こんな感じにはなる!仕組みがわかれば、トラブル要因はコントローラ起動順序とトラッカー割当/キャリブレーションに収束するはずなので、順序に気をつけてて手順をキッチリやると良いだろう

かわいくなるためには日々の努力が必要なんだなあ…

元旦ブルベで初300完走した

サークル参加した翌日に真冬の300ブルベとかどういうスケジュール組んでんだ…。いやまあ、今年は実家に帰らない宣言をしたのでせっかくだからと入れてみた。このためにコミケ3日目はしぶしぶスルーして、家でゆったり仮眠

f:id:o_mega:20190105173749p:plain

コース自体は二子玉をスタートして横浜逗子を経由して、よくブルベでも走る江ノ島~熱海、伊豆高原を目指し、そこからまた二子玉へ戻る。ざっくり平坦と言われるような気がしなくもない。江ノ島~小田原区間は走り慣れてることもあるが、何より道路状況がよく走りやすい、稼げるはずだ。ただし、伊豆の方は伊東の先は行ったことがないのと、横浜周辺、真鶴付近はアップダウンがある。

 

冬装備ということで、

  • 上 : モンベル・メリノウールインナー + おたふく冬インナー + 裏起毛の冬ジャージ + ウインドブレーカー
  • 下 : 長タイツ + 風防パンツ
  • 首 : チューブ型バンダナ(夜間は伸ばして顔をカバー)
  • 手 : 薄手グローブ + ハンドルカバー
  • 靴 : 2重靴下 + ネオプレンのシューズカバー + 巻きポカ

巻ポカはcbnanashiでもおなじみのbaruさんが試していたのを真似てみた。桐灰のカイロを足首に巻くことで末端を温めようというソリューションなのだが…、うーん、それまでの試験運用でも実感は微妙。単純に熱量が少ない気がする。まあせっかく買ったのだから、というのとかさばらないことから付けていく

 あとPCでの休憩時用に、ULダウンジャケットを積んでいくものの、さすがに嵩張った。オルトリーブのサドルバック輪行バッグやバッテリ類と合わせて積むにはちょっと厳しい。又は、ダウンジャケットの袋が十分にコンパクトではないので、圧縮袋があっても良いかもしれない

 

と前日準備…したはずがイマイチ時間管理出来ず、ゴロゴロ仮眠していたこともあってあんまりメシも食えてない状態でスタート地点の二子玉へ。いつものdekosukeさんと合流

 

f:id:o_mega:20190104190919p:plain

おまっ、大晦日の23時に走り出そうと河川敷にこんなに人が集まるのか…ようやるわ~(自分棚上げ)

 

ざっくり

  • 0030 二子玉スタート
  • 0315 PC1 葉山一色 20分休憩
  • 0440 コンビニ 20分休憩
  • 0625 PC2 西湘江之浦 30分休憩 + 日の出観測
  • 0825 コンビニ 20分休憩
  • 1020 PC3 伊豆高原 25分休憩
  • 1300 PC4 湯河原 15分休憩
  • 1325 コンビニ  15分休憩
  • 1730 PC5 鍛冶ヶ谷 25分休憩
  • 1910 二子玉ゴール

気温は氷点下を危惧していたが、手元の雑な温度計を見る限りでは1℃~6℃(日の出後)~15℃(日中)ぐらいのレンジ。

10℃を超えるとウインドブレーカーを脱ぐぐらいがちょうど良かった。ハンドルカバーで覆った手は低い分には問題ないが、日中は暑く蒸れ気味。といっても手をカバーからちょっと抜けば冷えるのでベストと言える装備だった。つま先はしびれまでは行かないものの、冷えが日中でも抜けない感じがあってこれは更に対策がいるなあ。冷え性ってのも効いてそう

f:id:o_mega:20190105173805p:plain

去年から引きずってる右足の調子はまずまずだが、どうにも自分のペダリングが変わってきているようで気持ちよく回るものの踏みすぎてしまう。サドル位置もなんだか合わず、じわじわ前寄りに調整しながら走る。前乗りができるようになってきた?というよりは最近心がけてる「脛をほぐす」のが効いて、足首の柔軟性が出てるのかもしれない

ケイデンス80前後が気持ちよかったはずが、どうも60前後まで落ちてきている?パワーが出やすくなったものの、それに対する体幹や心肺が足りてない感じ

 

元旦ということでなかなか交通量がある。藤沢江ノ島あたりでは、パラリラ鳴らしながら走るバイクやらLEDでボディがビカビカの車、旗を立てたでかい車などとすれ違って治安が悪いなーと思うものの、総体としては数が多くないし、単に固まって路駐していたりする程度で怖くはない。むしろ距離感が掴みかねてるファミリーカーや、飛ばしているや車の方がコワイ。

大磯からの国道1号から流量がへり走りやすくなる。真鶴の近辺のアップダウンはあるものの、海岸は平坦。PC2過ぎたところで初日の出を観測。伊豆高原近くがいきなり激坂付きアップダウンで足が削られる。150km走ってこれはひどい仕打ちだw

伊豆高原を折り返しで再びのアップダウン。昼過ぎとなって真鶴道路が渋滞に。相当走った(実際走ってるのだが)のに、まだ夕方にもなっていないことに愕然としながら走る。この辺まで来ると踏み込むと心臓が痛んだり、肺が痛くなってきていて、無理せずペースダウン… するものの、熱海駅前に激坂があったりしてつらい…

帰りの134号はやはり飛ばす車が多い。横浜を通ると帰ってきた感じが出てくる。PC5に通ってゴール

f:id:o_mega:20190105182919p:plain

 

いやー、初完走。今年の幸先としては良いけど、厳しかった。300はやっぱり長い。やったーというよりはリタイヤしそこねた感。100km越えるとペースがわかって来きて、200km越えるとしんどさが出てくるねえ

夜スタートということで、あんまりメシ食えなかったというか、お腹の調子がわからず食欲が良くわからん状態で走るのはなかなかコワイ。過去走った木崎湖300でもそうだが、夜スタートの夜間走行は体内時計がよくわからなくなって、かなり精神に来る

 

冬コミC95お疲れ様でした&コイントレイを売る難しさ

冬コミお疲れ様でした

まずは冬コミC95お疲れ様でした。スペースに来てくれた皆さん、ありがとう。買ってくれた方にはますますありがとうありがとう。「めっちゃ使ってます。便利です」といった嬉しい報告、「こっちの金庫でも使えた」というありがたい報告も貰えて手応えを感じています。

 「隣のサークルの方が使っててほしくなって来た!」「買っていったら『うちもほしいからもう一回買ってきて』と言われちゃって」みたいな人もちょくちょくいらっしゃって、僕は嬉しいぞー!

あっ、コイントレイというのはこれです。

f:id:o_mega:20190103164534p:plain

 

が、売上数はなかなか上がらない。

ということでここ半年の販売振り返り。

夏(C94)の売れ行きが予想より良くて、今回(C95)が平常、というのが多分正しいのでしょうね。夏は結局バタバタしてしまって、準備しきれないところがありましたが、今回の冬はまあまあ準備できたのではないかなあと思いつつ

夏(C94)

  • 昼過ぎに完売
  • 独立スタンドA1ポスター + お誕生日席かつメイン通路角という好立地

今回冬(C95)

  • 閉会まで頒布して、夏とほぼ同数
  • A2机ポスター + 島中 というスタンダードな配置

ぐらいの差でした。マイナーな同人ハード島というのも効いてそうですが、果たしてこのコイントレイは、実用品は一体どこジャンルで頒布すべきなのか?というそもそもの疑問もありまして、移動は悩ましい。アクセサリーじゃないしなあ…

まああとコミケとかいう顧客が忙しいタイミングにかぶせて売るというタイミングの悪さ…。そりゃサークル主は普通来れないし来ない。

 

まあそもそも、そんなたくさん買うようなモノでもないんですよね。便利グッズなんて。普通の同人誌みたいにファンが付いて、継続的にシリーズを買ってもらうというよく見るフローがコイントレイにはできない。常にコイントレイを知らない/持ってない人にアプローチしていく必要がある

違う戦略が必要だ。

 

ショップ委託は大切だが、露出までは得られるわけではない

夏からショップ委託(ななぽストア/COMIC ZIN)も行っていて、更に秋葉原COMIC ZINでは店頭展示販売も開始しております。通販作業が不要になって助かる~。が、やはりグッと伸びるわけじゃないのね。そりゃそうだ。

現状やはりコミケ1回分の売上に、ショップ委託分は追いついて来れない。いやコミケが、即売会での販売がクソ強いと見るべきだ。(まだ冬コミ後に駆け込み通販があるかもしれないが…)

 実際ショップの検索欄に乗るといっても、ショップで検索しないと出てこないし、そもそもそういうショップにアクセスしないとリーチできない。検索エンジンに引っかからないサイトはないも同然、というさんざん聞いて来たSEOフレーズが脳内で木霊するわけです。

委託ショップへ、通販への誘導は自分がやらねばならぬ。みんな~、ここで売ってるから!通販やってるよ~!それはそう。ぐぬぬぬ…

まだ見ぬ潜在顧客に知ってもらうにはどうすればよいか?接触機会とアテンションや~(よくわかってない)

 

露出を金で叩く(Twitter広告の場合)

そりゃあ…、金じゃよ!ズドン!

ということで秋から冬コミ直前にかけて、Twitter広告を15k円ほど打ち込んでみました。失礼ながら今まであんまりいいイメージ無かった広告だけど、潜在顧客?っぽい人たちに「これどうよ?」って見せつけるサービスとして考えると、確かにすごい。これしかないという気持ちになる。すごいぞ広告!

 

Twitter広告は、全体予算、日予算を設定すると、その予算内で限界までフルオートで露出してくれる仕組み。加えて表示対象を「オーディエンスの機能」でいろいろ絞れる

f:id:o_mega:20190103172528p:plain

 関連キーワード、タグやら、特定アカウントのフォロワーやら、あとあんまり今回は使えなかったが興味領域やら記念日(祝日)をターゲティングとかできる様子。

f:id:o_mega:20190103175204p:plain

興味空間-趣味・興味-マンガはちょっと違うよな…どう考えても…。祝日系も英語圏仕様だし…

 

設定するとなんか毎日のクレカ引き落としお知らせと、グラフが更新される。時々RTしたりfavってくれるたりする通知が来る。ひゃー、たまんねぇぜ。タップもクリックもなしに残高が減る。すごい仕組みだ。

f:id:o_mega:20190103175437p:plain

正直、15k円だと広告費としてはかなり弱いんじゃ?ちょっとしたネタのバズりより弱い気がする。とはいえ自分はあんまりバズるツイートが出来ない方なので、その費用として考えるとそんなもんなのかもしれない…。こういっちゃ何だけど、ヘビーユーザーの人が「これマジ便利っすよ~」みたいなツイートをしてくれるとめっちゃ嬉しいし、期待してしまう

 

などとやっていると、ものやサービスの値段がどんどん分からなくなっていく。わからんなんもわからん。果たしてビジネスとは一体?売買とか経済とは一体なんなの?

いや、自分は趣味でモノ作って趣味で広告売って趣味で売ってるからいいけど、本業はこれどうやってんの?とかうん… わからん俺たちは雰囲気で(略

 

有名サイトのバナー掲載とかも価格調べて見たけど、そこと比べるとやはりTwitter広告は参入しやすい感はあるし、15k円は投入額としては安すぎた。がどの程度続けるべきかは正直判断に困っている(ちゃんとリーチできてんのかな) 

まあそもそもインプレッションぐらいしか見ていないので、もっとちゃんと広告を学んでトラッキングしろと言えばそれはそうなのだが…、うーむ手間掛かるねえ

コミケでの反応

さておき、コミケ会場でのお客さんの反応は結構明確に分かれている感じがあって、なかなかおもしろい

  • そのものズバリで買いに来てくれる人「Twitterで見て/使ってる人を見て買いに来ました!」(あざます!)
  • 使ってます報告の人「めっちゃ助かってます」(良かった良かった)
  • コレなんだろの人、デモったり解説すると「めっちゃ便利ですね。でも、うちはサークルじゃない/そこまで売れないからなあ…」(ぐぬぬ…)

ズバリで買いに来てくれる人は、なんか広告の効果が出たり出なかったりしてリーチできてるわけで、素晴らしい。ありがとうありがとう。

今回のお客さんを見ると、1,2のタイプの方がじわじわ増えてるようには感じられてます。ただ、3の人もかなりかった。多分、太い通りの一つ横の島だったという地形効果が高そう

 

今後の戦略

とりま、今回はスペースでの毎回説明やデモが結構たいへんだよねと売り子と話し合い、なんかPVなり動画での説明があっても良さそうという改善案を出しつつ。あとA1ポスターは要る、要るんだ!

即売会会場でのやりくりは手応えもあり、じっくり行くぞという所ですかね。「コミケ初参加なんだけど何部刷ったらいいかわからなくて…」君と根本では変わらないわけだし、在庫のTATSUJIN!軽い気持ちで初めた量産、去年の目標「コイントレイをさばく」は未達ではあるものの実感はあり、採算分岐点はまだまだ遠けど見えない距離ではない

D言語くんVRMモデリングが難しかった話

D言語くんVRMモデルを作り直そうと思ってたら、期日が来てしまったorz ということで、前のD言語くんVRMモデルを作るときに詰まったアレコレを、主にキャラデザからつらつらと

 

https://3d.nicovideo.jp/works/td36677 

 

モデリングには公式の絵を下絵になぞる感じで作っていたんですが…

 

f:id:o_mega:20181209165816p:plain

D言語くんの絵をそのまま下絵にしてはいけない理由

つまり、そういうことです。再現をしようとするといけない。ちゃんとキャラデザをして、モデリング向きにしてからやるべきでしたね…。「おっしゃモデリングだいたい理解したしイケるぜオラー!」とおもったら、こだわると想像以上に難しいお題だったんだよ!D言語くん

多分ですが、きぐるみみたいに立体的に無理がない設計をするといいのかと思いますが、例えば目の表情付とかも難しい。VRM+VirtualCastはなめらかに表情がモーフするため、全ての座標は線形に(直線に)動いてしまうため、目の丸い形状に沿わせられなかったり… この辺は割り切りが必要そうです

 

まああと「上半身の上に若干首のボーンウエイトを塗ってひねる動き」を再現しようとしたんですが、VirtualCastは至ってプリミティブなボーンで動くため、関節がひしゃげる/小さくなる問題が起きてしまいち。やはり欲張ってはいけない

そりゃそうと言えばそりゃそうなんですが、やはり「VRMは人形アバター向け」ですので、きぐるみ程度でも人と違うセオリーが適用されるんだなあ、と学んだ次第です

 

 

 で、反省を生かして生まれた&割り切って作ったのがスーモだったりするわけですよ。目は皿型で空中に浮くだけ、表情は無理しない(できないものはアイコンで大まかカバー)、手足は前述の自作D言語くんから移植してます。

あ、オマケ情報ですがこのVRMはVirtualCastで他者利用できます。80cmぐらいの身長にしてあるので、小動物だかマスコットだかの気分が味わえるはず

3d.nicovideo.jp

 スーモかわいい

木崎湖で自転車キャンプしてみた

BRM907 白馬・木崎湖300にエントリーしようとしていたら、うっかり逃してしまったことからテント泊に興味が湧いてしまい…、とは言えまだ完走したことない300kmブルベ後に初テント泊をするのは流石にチャレンジがすぎる。

 

ということで、ブルベとは関係なく、木崎湖でテント泊をしてみるというチャレンジをしてみた。近所に手軽にキャンプできるところがなく、それなりに距離を走ったあとに見知らぬキャンプ場で初テント泊するリスキーだが、木崎湖なら去年のブルベで行ったことがある。近隣施設もなんとなくわかってる。あわせてキャンプ道具で、ドロップバッグ運用を試してみよう

食事については、現地の温泉施設・ゆーぶるの食事コーナーを当てにして、自前調理はしないと割り切る。が暖かいものはほしいので、固形燃料とゴトク、マグをメインとしたミニマム湯沸かしセットをもっていくこととした。

ルート

初日(土曜日)は松本駅まで輪行して、AACRコースをなぞりながら木崎湖キャンプ場へ向かう。だいたい60kmあるので、ざっくり4時間必要か。

メインのキャンプ道具は重いため、事前に木崎湖最寄りの大町郵便局に局留めで送ってて回収するドロップバック運用。ゆうゆう窓口があるため、土日でもゆうパックの受取/発送が可能。

翌日は逆順。木崎湖を出て、大町郵便局からキャンプ道具を発送したら、あとは適当に好きなだけ走って、松本から帰る。

雑プランだが、キャンプ場と郵便局の時間だけは注意がいる。

装備

ロードバイクはいつものMC565

  • メインの荷物はリアキャリア(ミノウラRC-1200)とパニアバック
  • 鞄はフロントとパニアバック2つ

フロント

  • 約2kg
  • 補給食、ウエットティッシュ、ウインドブレーカー等

右パニア

  • キャンプ場で使う軽量なもの。約3kg
  • モバイルバッテリ、輪行袋、着替え、(郵送難しそうな)固形燃料の湯沸かし装備、Kindle

左パニア

  • ドロップバッグ用、キャンプ装備を入れる。約6kg
  • キャプスタテント3kg、モンベル寝袋、中華エアマット
  • テントが重い&デカすぎる…。布製品の重さは大きさに跳ね返ってヤバイ

当日

f:id:o_mega:20180920045857p:plain

遠足前ルールにより寝不足。適当に特急あずさに乗ったら、接続がうまく行かず、13時過ぎに現地入り、しかも雨ッ。どんより天気。24℃程度で暑くないのはいいのだが、湿度は高い。結構風もあるしイケるのか…

f:id:o_mega:20180920050244p:plain

と走り出してみると、悪くない。

雨は強くなったり弱くなったりしてもるものの、最悪の天気ではない感じ。松本駅周辺はさすがに混んでるが、AACRコースに出ると交通量はガクッと減り、信号も少なく走りやすく、思っていたよりハイペースに走れる。アベレージ20km/h近く。上り下りメリハリがあって楽しいところと、ほぼど平坦に見えてジワジワ辛い上りが混ざる

 

時間的が心配だったので急いでみたのだけど、いい道路事情とハイペースな走りが出来て問題はなくなった。

1630頃、大町郵便局にて無事ドロップバッグを受け取ったタイミングでは、雨はほとんど上がっていた。左6kgパニアを追加した自転車で、ゆるゆると木崎湖へ向かう。ゆるい上りがめちゃめちゃ重い…

f:id:o_mega:20180922040226p:plain

 17時過ぎに木崎湖キャンプ場着、受付を済ませ。クソ重いテントを張る。初テント泊からこの天気とは、試されてる。明日は晴れるといいが…予報は微妙

 

雨は止んでいたが、当然地面はぬかるんでおり、水たまりがなくなってそうなところに設置。正式には周りを軽く掘るべきなんだろうけど、スコップないしコレで。設営時は風がそれなりに強くて不安があったが、設営後は止んでしまった。

付属ハンマーがしょぼくてペグが中途半端にしか刺さらない。余分のペグをコーナーのペグに追加して刺す。こんなもんでいいか。前にも試したときに思ったが、このキャプテンスタッグテントは2人用で重いだけあって、天井が高く空間が広い。荷物を置いても余裕があり、中で過ごすには悪くない

f:id:o_mega:20180920051058p:plain

木崎湖ブルベの方に参加していた友人と合流してしばし歓談。マットやらシュラフやら取り出す。ブルベ勢でも結構テント泊がいる。周辺には大きな5,6人用テントやツールームテントの家族客もいて、キャンプ場はなかなか繁盛しているようだ。

寝不足にハイペースの走りでそれなりに疲れていて、テント内でダラダラした後風呂に向かう。

 

近所の温泉施設・ゆーぶる木崎湖でお風呂に入って、そこの食堂で夕飯をして戻る。ソースカツ丼が予想よりギッチリ大盛りで満腹に。コンビニによって朝食とツマミを買うものの、カツ丼で膨れた腹には不要だった。

寝ようと思ったが想像よりキャンプ場は騒がしい…いや、設置場所のせいか、近くを人が通ると気にってしまう。自分がセンシティブなだけかもしれない。次回は耳栓をもってこよう、って前回のバンガロー泊でも耳栓ほしいって思ってたな。

f:id:o_mega:20180922040656p:plain

自称最小沸かしセットでお湯を沸かして、インスタントチャイを淹れたりしつつ、持ってきたKindleを読んだりしつつ、就寝。

 

が、暑い。気温19℃前後。今回のために新調したモンベル・バロウバッグ#3はオーバースペック過ぎたようだ。前回のバンガロー泊では寒かったので…と思ったがうむむ。かといってチャックを開いて掛け布団的に使うと、風が抜けてやや寒い。難儀だ。この辺は次回要検討。

うつらうつら寝ていたら、雨が降ってきた音で目が覚める。目が覚めるけど、特にどうしようもない。強いていうと自転車装備だが、バッグ類は念の為あらかたテントの中に仕舞っていたので、そのまま寝続ける。

 

 

f:id:o_mega:20180922041151p:plain

朝8時、ブルベ参加の友人からのDMで起こされる。

雨は降り続いてる。止んだら小熊山を見に行くかと思っていたが、これはダメそうだ。しかし雨の中撤収作業もいるのもやりたくない。ちょっと散歩してみたが、完全にガスっている。これはこれですごい。

f:id:o_mega:20180922041206p:plain

スマホで雨雲レーダーを確認しつつ、Kindle読書とする。うーんダメだ、雨が強くなったり弱くなったりはするものの、コンスタントに降り続ける。雨の浸水はないものの、フライは若干染みている様子

まわりのテント客は雨の中どうするんだろう?と様子を伺っていると、ぼちぼち数が減っていく。こちらもチェックアウトを昼予定としていたので、意を決してテントを畳む。ただでさえ重いテントが更に重い

 

と走り出すと小雨になった。あれー?

せっかくなのでYショップ・ニシに寄って軽食。AACRのときは私設エイドな感じで繁盛しており、時間の都合もあって中まで見に行けなかったなあ。入ってみるとコンビニ、というよりはドライブイン軽食スタンドという雰囲気でした。なかなか難しそうだ

f:id:o_mega:20180922043215p:plain

ちょっと先を見てみようと思ったら また降り出してしまったのでもう諦めて、大町郵便局へ。キャンプ道具を発送し、そのまま信濃大町駅から輪行して帰宅。

列車の時間を把握しておらず、120分ほど待ってしまったが… まあなんか無事帰宅できた。松本駅からの特急本数はそんなに多くないようだが、指定席はかなり埋まっているようす。東海道新幹線のように適当にホイホイ乗れるわけではないんだなあ、次から気をつけよう

テント泊はなんとかなる。なった

なんとかなった。

テントの安心感はすごい。キャプテンスタッグのツーリングテントは2人用ということもあって、十分な余裕があった。がやはり重量大きさ共にとてつもないので替えたいところ。寝袋の適性温度は微妙だったがまあ安全マージン的に仕方ないかなあ。耳栓は持っていきたい。

初回から雨で、雨の中でテントを畳むのは辛かったが、経験はつめた。帰宅後のテント乾燥もなかなかしんどい。雨の中のテント泊は、高湿度で温度管理がシビアになるところもあり、やはり避けたい

逆テント寝袋マットを除く装備、湯沸かし装備と着替えはかなり小さく余裕があったので、調理装備を増やすのもいいかもしれない。が、コンビニや飲食店がある状況だと装備を増やしづらい所だ

コミケ&コミティアお疲れ様でした / ななぽストアにて通販はじめました

お疲れ様でした。

f:id:o_mega:20180821032648p:plain

コミケ1日目は予想を上回る感じで売れていき、1330ぐらいには在庫が尽きてしまいました。ありがとうございます!というのと、こう売るものがないのにスペースに座ってる無力感を味わいました。正直、ここまで売れないと思っていたんですけど、友人から「もっと持っていけ~」と煽られてギリギリまで積んで持っていったのですが、それすら足りなかったという。

f:id:o_mega:20180821032622p:plain

ぺんねる先生のポスターをでかでかと掲げたのが、とても効いたように思います。ちょくちょく見あげて、「ああ、なるほどそういうグッズね」というのがわかりやすかったようで、これからもポスター掲げて行こうと決意。

 ポスターが見やすい誕生日席だったのも効いているかもしれません。

f:id:o_mega:20180821032534p:plain

前日はへこへこと手で1つ1つ梱包。これが結構時間を食って堪える…、というかどうも1個1,2分ぐらいのペースかかってる様子。

 

急いで友人に掛け合って、コミケ3日目と翌週のコミティア125で委託販売。合わせて個人同人ショップななぽストアでの委託販売/通販も開始しました。いやー、コミケの前も大変だけど後もドタバタ…

ショップ委託ではちょっとお値段が上がっておりますが、遠方の方にも手軽にコイントレイを入手できるかと思います。どうぞよろしくおねがいします。

 

次回イベントは冬コミケC95を予定しています。