Udon VM 向けのコンパイラを作ろうとしている[2]
前回のがめっちゃ見られてるけど基本的に自分用のメモなので他の人のツイートもいっぱい入ってます
@cannorin_vrc 少なくともVRCのSteam版はIL2CPP使ってないしQuestは普通にAndroidだからリフレクション使えたはず
2019-12-21 11:00:50@Ram_Type64_Mod0 だと思うけど Android も IL2CPP 使えるからパフォーマンスのために使ってるかもしれないし一応チェックしておかないとですね……
2019-12-21 11:04:53@cannorin_vrc 一応それこそ初期のJVMみたいにプラットフォーム別でインタプリタとJITコンパイルの実装があるってのも可能なAPIにはなってた あとまあパフォーマンス目当てでIL2CPP使っててもUdonが普及した環境下ではUdonJITあるMonoにパフォーマンスで惨敗しそう
2019-12-21 11:08:28要望書いたあ: Request: Metadata of built-in EXTERNs for static analysis | Voters | VRChat feedback.vrchat.com/vrchat-udon-cl…
2019-12-21 11:17:10Udon の EXTERN の命名規則めちゃくちゃすぎて(.NET からの直訳すぎて)笑えない、特に名前から static method と instance method の区別ができない点がクソです
2019-12-21 13:07:44言語を作るにあたって、「UAssembly 単体では変数の任意値での初期化が実質できない」というのがデカすぎる、最低でも Model-Update アーキテクチャにする必要がありそう
2019-12-21 13:56:30> VRChat is switching from Mono to IL2CPP with the 2018.4 engine upgrade. This has a number of upsides but unfortunately it comes with the requirement that all code is AOT (Ahead of Time) compiled. This means we cannot dynamically generate any .NET Assembly at runtime.
2019-12-21 14:16:22> This is definitely complicated matters but much of Udon’s development has been working around this limitation.
2019-12-21 14:16:28UAssemblyだと"Hello, udon!"が消え去ってしまうけど、三つ目みたいにすれば一応動くのか pic.twitter.com/Su4LhgvFAJ
2019-12-21 16:49:25変数の初期値もどこかに消えちゃうけどこれも書き直してやればOKだった pic.twitter.com/6oCFvkaz6v
2019-12-21 17:01:02嘘ついても仕方ないので言ってしまいますが、Udon SDK に対して本格的に逆アセンブルをかけ始めたのでらBAN されないようにわたしのためにオイノリしてください
2019-12-21 18:31:17UdonVM がランタイムとして異常すぎるので、いい感じの中間レイヤを用意しようとせずに最初から UAssembly 念頭において作った方が良さそうな匂いがする
2019-12-21 20:27:18