Powered by
「`renderer`」って 一体何?
# forum
t
terraformers_efaa
10/12/2025, 9:03 AM
特に何かに困っているというわけではなく申し訳ないのですが、描画スクリプトで当たり前のように使用している`renderer`というやつは、一体何なのか疑問です `registerParts()`メソッドがあることを考えると、その本体は`jp.ngt.rtm.render.PartsRenderer`クラスだと考えるのが妥当だと思うのですが、そうであればなぜ`PartsRenderer#registerParts`の形で利用することをしないのでしょうか なにかお心当たりのある方がいらっしゃれば教えていただければ幸いです -# これが疑問に思った理由としては、`importPackage()`を使用せず直接各クラスをimportした際に、`PartsRenderer`クラスをimportしなくても正常に動作したので中身が何なのか気になったためです
h
hi03
10/12/2025, 10:37 AM
"renderer"はRTM側から付け加えられた変数で、スクリプトの冒頭に書いているvar renderClass = "~"で指定したクラスのインスタンスが与えられるっぽいです。 参考:RTMRenderers#getRendererWithScript
hi03
10/12/2025, 10:41 AM
renderer.registerPart(~)ではなくPartsRenderer.registerParts(~)と直接使用した場合は引数のパーツがどのモデルと結びついてるか識別できないため、モデルごとにデータ(renderer)を作ってrenderer.registerPartsでそのデータに紐づいて登録してる感じなのかなーと思います(インスタンス化)。
t
terraformers_efaa
10/13/2025, 1:11 AM
なるほどそれぞれのモデルのインスタンスと結びつけるために別で渡しているということなのですね
terraformers_efaa
10/13/2025, 1:12 AM
https://github.com/Kai-Z-JP/KaizPatchX/blob/master/src/main/java/jp/ngt/rtm/render/PartsRenderer.java#L439-L449
terraformers_efaa
10/13/2025, 1:13 AM
確かに`renderClass`を取得して`renderer`としてputしているように見える
3
Views
Previous
Next