Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VRChatでLT会やりたかった話
Search
haru2036
May 02, 2021
How-to & DIY
0
140
VRChatでLT会やりたかった話
haru2036
May 02, 2021
Tweet
Share
More Decks by haru2036
See All by haru2036
Google Colabを触ってみた/Google Colab hands on
haru2036
0
900
神(運営)にお願いして世界の崩壊を免れた話 / How to report a bug in VRChat
haru2036
1
1.1k
締め切りカウントダウンポスターを作った話 / Deadline timer in VRChat
haru2036
0
1.1k
ケチケチGKE 入門編
haru2036
1
1.1k
LTワールドのつくりかた
haru2036
0
2.2k
光るスカート作った
haru2036
0
130
Other Decks in How-to & DIY
See All in How-to & DIY
LTのモチベーション
akrolayer
1
290
SIM型チョコレート、作成の裏側
soracom
PRO
0
350
How to Start RP2040
kata0510
0
1.1k
2023年度にやりたいこと(めぐろLT会 #2)
funain
0
370
田中 is a new HelloWorld
akichika
1
150
#技術を動画で伝える技術 〜 α シリーズを活用した技術紹介・プレゼン動画制作ノウハウ〜
1heisuzuki
3
500
バタフライ効果/butterfly_effect
florets1
0
150
JAWS-UG東北[秋田] -東北エンジニアの祭典- AWSとJAWS-UG
awsjcpm
0
1.2k
obnizを制御するChatGPT自作プラグイン #iotlt #chatgpt
n0bisuke2
2
380
Open Source Sonne tanken | Wallboxen mit evcc smarter machen
naltatis
1
2k
教習資料PDF_4. 交差点編(優先・非優先)
sawagaku
0
4.1k
俺とキャンプ
sat
PRO
1
200
Featured
See All Featured
Statistics for Hackers
jakevdp
789
220k
Agile that works and the tools we love
rasmusluckow
323
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
How to Ace a Technical Interview
jacobian
272
22k
Making the Leap to Tech Lead
cromwellryan
122
8.4k
Web development in the modern age
philhawksworth
201
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
272
12k
Reflections from 52 weeks, 52 projects
jeffersonlam
343
19k
Docker and Python
trallard
33
2.6k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
The World Runs on Bad Software
bkeepers
PRO
60
6.6k
Transcript
VRChatでLT会 やりたかった話 @haru2036 dendai sie; LT #10
みなさまご無沙汰してます(あれ?お前誰だっけ? • @haru2036 • 某大学北千住の民だった ◦ sie LTのおかげで北千住でもLT会を強行する勇気が得られました マジでありがとう…… •
さいきんはVRChatにどっぷり • VRC-LTなる怪しいイベントを主催しているオタク • 武装神姫のオタク(アーケード版ほぼやってないな?)
VRChat is 何 • VR版Second Lifeみたいなやつ(雑) • アバターやワールド(環境)をUnityで作って アップロードできる •
一応ある程度のスクリプティングが可能 ◦ 昔は本当にきつかったけど最近はC#ライクな構文で行けるように(後述) ◦ VRCSDK2とVRCSDK3というバージョンのSDKがあり、2は特に辛い
VRC-LT • VRChat上であんまりVR関連以外の技術的な話をする機会がなかった • LTやりますとか言ったらそのへんのノリを理解してくれる人来るじゃろ という超不純な動機から始まったLT会 • スライドを表示するための機構がなかったので作ったが超絶しんどい • ので、今日はこの話をします
◦ SDK2時代とSDK3時代それぞれお話します • 参加者募集中です!くわしくはhttps://vrc-lt.github.io/へ
VRC-LTのようす
SDK2~暗黒時代 • VRC_Panorama ◦ URLのリストをワールドビルド時に決め打ちでわたしておくとイベントを送れば切り替えら れる ◦ ただしどのページを表示しているかは同期されない • VRC_Objectsync(うろおぼえ、たしかこんな名前だった)
◦ これを組み合わせると超不安定だが表示されるページが同期された • スライドサーバ(Haskell-Servent on Google Cloud Run) ◦ VRC_Panoramaに決め打ちされてるURLをスライド画像のURLにリダイレクトする ◦ 詳しくはHaskell-jpのブログに寄稿させてもらったのでそちらを見ていただけると https://haskell.jp/blog/posts/2019/haskell-in-vrchat.html
暗黒時代の始まり • Unity2017時代はそれなりにうごいていた • Unity2018への移行後はまったく動かず、かつ後継のVRCSDK3が出てきた ◦ しばらくほっとこ…… • VRCSDK3にはそもそもHTTPリクエストを投げて画像を引いてくるみたいな 機能を持ったコンポーネントが存在しない
◦ 一応予定はしているらしい(Cannyにチケット切ったらそのうちやるよ!お楽しみに!と言 われCloseされたが、それからすでに1年ほど経ってるのでは……) ◦ しばらくほっといた結果がこれだよ
そしてVRCSDK3時代へ • VRCSDK3でスクリプティングシステムが刷新された(Udon) ◦ ノードベーススクリプティング言語(Udon) ◦ 専用アセンブリ言語(UdonAssembly) ◦ 実行環境(UdonVM) •
C#ライクな構文でスクリプトを書けるUdonSharpが有志(!?)により開発され た ◦ C#ライクなスクリプトをUdonAssemblyにコンパイルしてくれる • しかし画像をHTTPでとってくるようなAPIはまだ存在するわけが(ry
VRC-LT on SDK3 • そんなある日動画プレイヤーが実装された • 一応スクリプトから制御できる • もうこれ使うしかないのでは……
VRC-LT on SDK3 • PDFを動画に変換するDiscord Botを作って適当にパラパラ漫画的動画を生成 • 一時停止状態の動画プレイヤーの再生フレームを切り替えることによって 一応スライドっぽく使えるようにした •
大人数入ってくると同期が 取れなくなるおまけ付き • BotにはRustのSerenityを使った ◦ Haskellと似たようなハマり方をした ◦ その後の安心感も同様
そして復興へ • 一応なんとか開催できるようになったので、ふたたび気まぐれにやってます • VRChatはそれなりのWindowsPCがあれば参加できるのでぜひ • https://vrc-lt.github.io/ もしくは私にご連絡ください
おまけ:刺さるかわからない宣伝
余談ですが、黒色熊猫さん &明日葉わがみさんペアの 新作アバター 「フェヰリル」ちゃんに エフェクト系シェーダ開発 とその他諸々エンジニア的 にざっくり参加させても らってます。 もしVRChatにハマった! とかでアバター買うかーっ
てときにはぜひぜひご贔屓 にー
ご清聴ありがとうございました