竿燈シミュレータ(2)
なんで『竿燈シミュレータ』なの? という質問が来たが特に理由はない。昔ちょっと住んでいたことがあるが、竿燈そのものは観客として見ただけで触ったことはない。なので、いろいろな寸法や材料等にはコメントをいただければありがたい。
ということでシミュレートする『要件』は以下に設定する。
• 大若の提灯は上から 2, 4, 6, 6, 6, 6, 6, 6, 4 の9段、合計46個。中央線上に提灯は置かない。
• 提灯寸法はNETで見つけた実物基準 64 cm × 45 cm。最下段4個は横竹長を保ったまま外側寄りに2個ずつ配置する。
• 竿先端には御幣(白い紙と麻)を持つ。「若」の文字を提灯面に表示し、とりあえず緑色とする。
• 差し手の技は HAND(手)、FOREHEAD(額)、SHOULDER(肩)、HIP(腰)の4種。実技では他の技へ移る前にいったん手で握って支えるため、技間の連続遷移は考えない。
まずは2D剛体モデルでPID制御、横風、提灯46個、スティックフィギュアで人体で画面を動かす。CSV(数値データの記録ファイル)/HUD(画面上のリアルタイム情報表示)も使うかな。まあ、最低限の閉ループ系を作る。
うーむ、陳腐なグラフィックだ(笑)。環境を書いておくと、
・OS Windows 11 Pro 64-bit
・CPU Intel Core i5-13400 (物理計算/FEM、Pythonランタイムを担当)
・RAM 64 GB
・GPU NVIDIA RTX 5060 Ti 16 GB(後でOpenGL 3D描画を担当させる予定)
(R-29Aで外付け)
S/Wは、
・Python 3.10.11(専用の.venvで使う)
・主要ライブラリ Numpy、PyYAML、pygame-ce、ModernGL、pytest等
・3d API OpenGL 3.3 Core Profile
いやぁ、Powershellから.pyを実行したりして作っていると、
Pytho/YAML/Markdownは改行がLF、PowershellはCRLFなので構文チェックさせるとしょっちゅう引っかかる。改行コードは永遠の課題だな。