要件
- mesh_componentを取得する
- 10秒おきに表示と非表示を切り替える
使用する機能
確認する
# メッシュを取得
GetComponent<native><final><public>(component_type:castable_subtype(component))<reads><decides>:component_type
# 表示の切り替え
mesh_component.Visible回答
回答を見る
using { /Verse.org/SceneGraph }
using { /Verse.org/Simulation }
toggle_mesh_component := class<final_super>(component):
OnSimulate<override>()<suspends>:void=
if(MeshComponent := Entity.GetComponent[mesh_component]):
loop:
set MeshComponent.Visible = true
Sleep(10.0)
set MeshComponent.Visible = false
Sleep(10.0)別解一覧
using { /Verse.org/SceneGraph }
using { /Verse.org/Simulation }
toggle_mesh_component := class<final_super>(component):
var MaybeMeshComponent:?mesh_component = false
OnBeginSimulation<override>():void=
if(MeshComponent := Entity.GetComponent[mesh_component]):
set MaybeMeshComponent = option{MeshComponent}
OnSimulate<override>()<suspends>:void=
if(MeshComponent := MaybeMeshComponent?):
loop:
set MeshComponent.Visible = true
Sleep(10.0)
set MeshComponent.Visible = false
Sleep(10.0)OnSimulate以外の箇所でもmesh_componentの機能を使いたい場合などは、オプション型に収納してあげることで毎回GetComponent関数を呼び出さなくてよくなります。