How honxi1/endfield-poser works
Endfield Poser is an in-game posing plugin for Arknights: Endfield. The main workflow is to open its overlay, freeze a character, select and edit bones, then save or load a pose preset. Separate capabilities cover MMD motion and camera playback, facial controls, multi-character state, cloth-physics enhancements, and browser-based controls. The README documents these product branches; sampled source confirms the plugin entry point, overlay, native SMC facial driver, and cloth runtime, but does not expose every subsystem’s call wiring.
Main entry points: gui_overlay.h GUI overlay · panel_bones.h Bone panel · mmd_player.h MMD playback · poser.cpp Plugin entry
Components 24
Plugin runtime
- Plugin entry
src/poser.cpp - GUI overlay
src/core/gui_overlay.h - Web control
src/core/web_server.h - Game hooks
src/core/game_hooks.h
Pose editing
- Pose freeze
src/game/freeze.h - Skeleton access
src/game/skeleton.h - Bone selection
src/editor/selection.h - Rig gizmo
src/editor/rig_gizmo.h - Bone panel
src/editor/panel_bones.h - Pose files
src/math/pose_file.h - Character roster
src/game/roster.h
Motion and face
- MMD playback
src/game/mmd_player.h - MMD file input
src/game/mmd_io.h - Motion transforms
src/math/mmd_motion.h - MMD camera
src/math/mmd_camera.h - Face controls
src/game/morph.h - Native SMC face
src/game/smc_morph.h - Eye gaze
src/game/eye_gaze.h
Cloth physics
- Cloth enhancement
src/cloth/bonecloth/cloth_bonecloth_runtime.h - Collision support
src/cloth/collision/cloth_collision_parameters.h - Ribbon damping
src/cloth/core/cloth_ribbon_damping.h
Other components
- Player
- Endfield game
- Browser
Connections 25
- Player → GUI overlay: opens and edits
- Player → Web control: browser controls
- Browser → Web control: sends controls
- Plugin entry → GUI overlay: starts UI
- Plugin entry → Game hooks: installs hooks
- Plugin entry → Web control: starts server
- GUI overlay → Pose freeze: toggles freeze
- GUI overlay → Bone panel: draws panels
- Bone panel → Bone selection: selects bones
- Bone panel → Rig gizmo: edits transforms
- Rig gizmo → Skeleton access: updates bones
- Pose freeze → Skeleton access: holds pose
- Bone panel → Pose files: saves and loads
- Pose freeze → Character roster: remembers by character
- GUI overlay → MMD playback: controls playback
- MMD playback → MMD file input: loads files
- MMD playback → Motion transforms: applies motion
- MMD playback → MMD camera: applies camera
- GUI overlay → Face controls: adjusts expressions
- Face controls → Native SMC face: drives native face
- GUI overlay → Eye gaze: adjusts gaze
- Game hooks → Cloth enhancement: services runtime
- Cloth enhancement → Collision support: enhances contact
- Cloth enhancement → Ribbon damping: reduces flutter
- Game hooks → Endfield game: interacts with game