Projects
Adventurer Guild
冒険者を探索地へ配分し、Gold・宝箱・武器・Named Adventurerを積み上げながら、複数地域を並列で育てていく放置型RPGです。
3D Shogi Action
9×9の将棋盤で歩兵を直接操作し、倒した敵を味方へ変えながら第九局の王まで進む3Dアクションゲームです。
Spex
Google Sheetsの既存UIを置き換えず、Alt / OptionからKeyTipsでキーボード操作できるChrome拡張です。
Slime Mercenaries
職業を持つスライムを育成・合成・編成し、敗北と再挑戦を繰り返して進む縦画面の放置バトルRPGです。
kikuta.dev
個人開発プロジェクトと、その実装・検証で得た技術知見を同じデータモデルから公開するAstro製の静的サイトです。
Development Notes
Blenderの3DアセットをPythonコードで管理する
3D将棋とSlime Mercenariesで、.blendを正本にせずBlender Pythonから盤・キャラクター・GLB/FBXを再生成する設計。
Blender Pythonでキャラクターを量産する:Base・Socket・Parts・Definition
共通Body、安定Socket、再利用Part、Form Definitionから多数のキャラクターGLBを生成する構成。
Blender Pythonでゲーム用アニメーションをコード生成する
Root MotionをGameplayから分離し、Rig・Pose・frame区間・secondary motion・seamをPythonで管理する方法。
BlenderからGLB / FBXへ:ゲーム用3DアセットのExport契約を固定する
Node、Socket、Bone、Axis、Scale、export対象をコードで固定し、BrowserとUnityへ安全に渡すasset pipeline。
Blender生成3Dモデルを自動テストする:Bounds・Silhouette・Motion QA
Export済みGLBの再import、形状比率、親子構造、床貫通、Root Motion、turntableまでを検証する3D asset QA。
Chrome拡張のショートカットは event.key だけで作らない
macOS Optionでevent.keyがDeadや特殊文字になる問題と、日本語IMEのcompositionを壊さない入力所有権の設計。
Google Sheetsの選択・編集・フォーカスをどう見分けるか
非同期command完了が新しいユーザー操作のfocusを奪わないよう、selection・DOM focus・result UI ownershipを分離する。
Google Sheetsのセルまでダークモード化する:Canvas描画を追いかけた実装記録
Canvas描画されたSheets gridを、ユーザーが設定したセル色を壊さずダークモード化するまでの実装記録。
外部Webアプリを操作するE2Eは、イベントではなく結果を検証する
Google Sheets向け拡張で、synthetic eventの送信成功とユーザーから見た操作成功を分離したE2E設計。
Excel互換とSheets準拠のキーマップを共存させる
Canonical Catalog・Execution Capability・Runtime Bindingを分離し、Microsoft公式の外部inventoryでcoverageを監査する。