Skip to content

Releases: honxi1/Endfield-Poser

0.4.4

Choose a tag to compare

@honxi1 honxi1 released this 30 Sep 14:40

修复:骨架缺少可选节点的角色
部分角色的 Avatar 骨架不含可选节点(如 Jaw / 眼骨),之前会整条适配失败,表现就是「这个角色用不了」。现在缺节点会被容忍,能正常播放与校准。

新增:按角色的拇指校准
拇指朝向不再统一处理,改为按角色校准(内置 43 份,随插件分发)。摆 MMD 时手张开、握拳的拇指方向会更准。

修复:保留原生手指零点
播放与校准不再改动原生手指的零点,避免摆完手型后手指回不正。

修复:跳过过期的角色校准
读取角色校准时会跳过格式过期的数据,不再读到旧值。

修复:日志越界写
诊断行超过缓冲区时(vsnprintf 返回的是所需长度,可能大于实际写入),原代码会越界写一个字节,已修。

0.4.3

Choose a tag to compare

@honxi1 honxi1 released this 29 Sep 15:40

新增:第一人称视角
主面板勾选「第一人称视角」,相机切到当前角色头部。鼠标环视和 WASD 移动仍由游戏自己控制,插件不接管任何输入。可单独勾选隐藏头部(把 head 骨骼缩小),避免镜头切在头脸网格里。MMD 镜头播放时自动让位。

新增:MMD 多人播放
最多四人按小队顺序分配动作,也可一键共用;共用进度、音乐与镜头,各自保存站位和表情。

新增:自动适配与地形跟随
优先读取角色骨架,无需手动 T 姿;可选坡面、台阶贴地与镜头高度跟随。

新增:MMD 镜头对焦
接管镜头时按 sensor 高度换算焦距并写入门限适配(任何窗口比例下垂直 FOV 不变),同时写入景深对焦距离;停止后完整还原。

修复

  • 角色列表切换编辑目标后衣物增强失效:该角色的 Entity 会被清空,导致衣物准备失败并把播放时钟永久按住,表现是「动作卡在第一帧、播不动」。
  • 兜底:衣物准备超过 8 秒仍未就绪会自动放弃并开始播放,不再永久卡住。
  • 相机位置与朝向改为一次性写入,修掉偶发的建筑 / 角色部件「闪一下」。
  • 日志文件改为多实例共享,不再出现某个实例整局写不出日志。

变更

  • 移除播放倒计时。
  • 手臂拇指 / 扭转部分修正,表情归零修正。

已知限制

  • 衣物增强需要角色的 Entity,因此只对当前小队内的角色生效;不在小队中的角色仍可正常播放动作,但没有衣物增强。

Endfield Poser v0.4.2

Choose a tag to compare

@honxi1 honxi1 released this 28 Sep 14:46

Endfield Poser v0.4.2

  • 移除 XXMI / 3DMigoto 兼容支持:为了避免不必要的麻烦,不再主动兼容 XXMI / 3DMigoto,不是 bug。在这类环境下面板可能黑屏或呼不出,请用官方启动器进入游戏。
  • overlay_mode、overlay_fps 两个配置项随之取消;旧配置里残留的会被忽略,改配置也不会把兼容层加回来。
  • 打包流程新增构建标记与校验:随包 DLL 带 [layered-overlay=0] 标记,打包时自动断言,防止误发其它构建。

Endfield Poser v0.4.1

Endfield Poser v0.4.1 Pre-release
Pre-release

Choose a tag to compare

@honxi1 honxi1 released this 27 Sep 16:41

Endfield Poser v0.4.1

  • 修复:日志量 —— 布料子系统的诊断输出([CLOTH-*])默认关闭。它的量极大(一次会话能写几十 MB),既占磁盘、拖性能,出事时还会把真正有用的行冲掉。需要排查衣物物理时,在 plugin\poser_config.txt 里写 debug_cloth=1 打开。
  • 修复:MMD 隐藏部件的日志改成同一名字只记一次(游戏会不断重建同名部件,之前会反复刷屏)。
  • 修复:主面板上重复出现的「骨骼参数」复选框 —— 只保留「窗口」组里的那一个;勾选状态照旧写回配置。
  • 安装包已下架,请使用最新版。

Endfield Poser v0.4.0

Endfield Poser v0.4.0 Pre-release
Pre-release

Choose a tag to compare

@honxi1 honxi1 released this 27 Sep 14:45

Endfield Poser v0.4.0

  • MMD 播放:新增 MMD 播放器 —— 导入 VMD、按角色完成骨架校准后播放。支持动作幅度(全身 / 分部位)、MMD 镜头、音乐同步、眼睛朝向、衣物与头发物理。快捷键 Ctrl+F5 播放 / F6 暂停 / F7 停止并恢复 / F8 回到首帧;隐藏面板会继续播放。
  • 衣物物理:新增衣物骨骼补全与碰撞优化(资源随包内置),裙摆、头发、披风表现更好。
  • 安装向导重做:安全安装.bat 改成启动器,真正的向导(安装 / 更新 / 卸载)在 tools/deploy.ps1:显示当前版本与包内版本、逐文件校验、备份并记录归属,卸载时还原且保留配置、姿态与自定义校准。
  • 每帧驱动加固:改为跟随游戏渲染回调(另带独立兜底计时),动作更跟手,画面与物理更新更稳。
  • 表情(MMD 表情面板 + 37 个角色专属校准)与冻结 / 表情互抢等修复沿用 0.3.9。
  • 安装包已下架,请使用最新版。

Endfield Poser v0.3.9

Choose a tag to compare

@honxi1 honxi1 released this 26 Sep 21:06

Endfield Poser v0.3.9

  • MMD 表情面板:表情面板顶部改成两个常驻按钮「游戏表情 / MMD 表情」,默认进 MMD。MMD 栏按眉毛 / 眼睛 / 嘴部 / 其他分类,支持中文搜索、叠加、整体强度、分组归零。
  • 角色专属表情校准:内置 37 个角色的面部映射,随包提供在 plugin\mmd\character-faces\。没有校准的角色可打开「缺失时使用固定映射」兜底。
  • 修复:冻结和表情互抢 —— 冻结此前把整张脸当作"从骨"每帧钉回快照,与表情每帧互相覆盖,表现为眼睛、嘴巴一直抖。
  • 修复:暂停游戏"自动眨眼 / 自动表情"的开关此前从未生效(底层接口漏注册),现已生效。
  • 修复:面板开着时拖表情滑条可能不立刻反映到画面上。
  • 安装脚本:支持 [U] 覆盖更新(不必再先卸载再安装);修掉"卸载后又提示卸载"的死循环;卸载不再删你的配置;更新时会一并刷新角色表情校准。
  • 主面板显示交流群号。

Endfield Poser v0.3.8

Choose a tag to compare

@honxi1 honxi1 released this 26 Sep 10:48

Endfield Poser v0.3.8

  • 窗口布局记忆:各窗口位置 / 尺寸自动记住,主面板「重置窗口」回到默认布局。
  • 「窗口」开关组:统一开关骨骼参数 / 姿态库 / 形态键 / 角色列表,勾选状态写回配置。
  • 人物位置(Root XYZ)从主面板挪到「骨骼参数」窗口。
  • 移除「图钉」:窗口直接拖标题栏移动。
  • 稳定性:加固启动时的 IL2CPP 接入时机,减少刚进游戏就报 GC 致命错误的情况。
  • 致谢:White-NX(XXMI/3DMigoto 兼容 overlay)、Nordlicht S(安全安装 / 卸载脚本)。

Endfield Poser v0.3.7

Choose a tag to compare

@honxi1 honxi1 released this 26 Sep 02:29

v0.3.6 / v0.3.7 合并说明:v0.3.6 在官方启动器下会整场不加载(判定只看直接父进程,把启动器的 Games.exe 当成手动启动)。该问题已修复,请直接使用 v0.3.7;下面把两版内容一起列出来。

新增:多角色编辑

  • 主面板勾「角色列表」→ 面板列出场上的角色 → 点某一行的「编辑」就切换编辑目标(不改变游戏自己操控的角色)。
  • 每个角色的冻结状态与姿势各自独立(按实例记录):切走的角色保持冻结原地,切回来的恢复你离开时的姿势。
  • 不再"只有当前角色可编辑"。

新增:IK 控制器(实验性,默认关闭)

  • 主面板勾 IK 控制器(实验性)(或配置 ik_enabled=1),冻结状态下出现四肢控制器:可选中、可拖动手柄。
  • 换角色 / 换编辑目标时控制器会自动重新吸附到新角色,不会留在上一个角色身上。

新增:首次启动的用户协议弹窗

  • 第一次进游戏弹出「用户协议与免责声明」:条款读完才能点「同意并继续」;点「不同意」则本次不加载任何功能(按面板快捷键可把窗口叫回来)。
  • 同意之后不再打扰;面板顶部的「用户协议」按钮可随时回看(只读窗口)。

修复

  • 官方启动器启动时插件整场不工作(v0.3.6 的主要问题):现在会沿整条进程链识别启动器(Launcher.exe -> Games.exe -> 游戏)。
  • 直接双击游戏主程序时的崩溃:不再在运行时就绪前接入,接入前也不触碰游戏对象 —— 直启时安静不加载,而不是弹 GC 崩溃。
  • IK 拖动出来的动作现在会写进冻结状态:之前切走再切回来动作会丢。
  • 切到没冻结过的角色时不再"跟着一起冻住":会释放上一个角色残留的压制。

安装

  • 解压 → 双击包内 安全安装.bat,或按包内 安装说明.txt 手动放置。
  • 两个代理 DLL(d3dcompiler_47.dll / vulkan-1.dll)一起放(向导会自动备份原版)。
  • 用官方启动器或 XXMI 启动;游戏用「窗口化 / 无边框全屏」。
  • 默认热键:L 呼出面板、P 冻结 / 解冻(面板里可改)。

已知问题

  • 从骨(飘带 / 裙摆 / 头发)的冻结还没适配多角色:切换编辑目标后可能不跟随,下一版处理。
  • 特殊场景(不能切换角色的剧情 / 试用场景)可能抓不到角色;冻结后骨架有极轻微颤抖。
  • 表情不跨角色通用(换角色需重调),滑条只覆盖游戏自带的 5 口型 + 19 表情。
  • 相机参数不随姿态文件保存;骨骼层级树、撤销 / 重做、骨骼镜像仍未包含。

文档与包

  • 包内新增《使用须知》(使用须知.md),含启动方式、首次弹窗、热键、文件位置、卸载。
  • 包内附完整 LICENSE(AGPL-3.0)与 THIRD_PARTY_NOTICES。

Endfield Poser v0.3.6

Choose a tag to compare

@honxi1 honxi1 released this 25 Sep 17:28

新增

  • 首次启动的用户协议弹窗:第一次进游戏会弹出「用户协议与免责声明」,条款读完才能点「同意并继续」;点「不同意」则本次不加载任何功能(按面板快捷键可把窗口叫回来,不必重启游戏)。同意之后不再打扰,面板顶部的「用户协议」按钮可以随时回看(只读窗口)。

修复

  • 用官方启动器启动时插件整场不工作:启动方式判定只看了直接父进程,把启动器的 Games.exe 当成"手动启动",插件于是整场停用。现在会沿进程链识别(Launcher.exe -> Games.exe -> 游戏),日志开头的判定行会显示完整链条。
  • 直接启动游戏时的崩溃:不再在运行时就绪前接入,接入前也不触碰游戏对象 —— 直启时安静不加载,而不是弹出 GC 崩溃。

实验性

  • IK 控制器开关(默认关闭):在主面板勾选 IK 控制器(实验性)(或把配置里的 ik_enabled 改成 1),冻结状态下会出现四肢控制器,可以选中、拖动手柄。骨骼跟随尚未完成,目前只作预览。

文档与包

  • 新增《使用须知》(包内 使用须知.md):启动方式、首次弹窗、热键、文件位置、注意事项、怎么卸载。
  • 发布包内附完整 LICENSE(AGPL-3.0)。

安装

解压后按包内 安装说明.txt 放置,或直接双击包内 安全安装.bat 走向导。
请用官方启动器(Hypergryph Launcher)或 XXMI 启动;游戏用「窗口化 / 无边框全屏」。

Endfield Poser v0.3.5

Choose a tag to compare

@honxi1 honxi1 released this 25 Sep 16:37

当前推荐的正式版本(v0.3.6 因启动崩溃已标为 pre-release)。

Endfield Poser v0.3.5

面向"装了较多 XXMI/3DMigoto mod 的机器"的性能与交互修复。

下载包

EndfieldPoser-v0.3.5.zip:

EndfieldPoser-v0.3.5/
├── 安全安装.bat            # 交互式安装/卸载向导(可选,等价于手动复制下面这些文件)
├── 安装说明.txt
├── 使用教程.md              # 完整使用教程(安装 → 冻结 → 摆姿 → 表情 → 姿态库 → 排错)
├── d3dcompiler_47.dll      # 放游戏根目录(先备份游戏自带的那份)
├── vulkan-1.dll            # 可选;用 Vulkan 模式时必须放
└── plugin/
    ├── poser.dll           # v0.3.5
    └── poser_config.txt    # 默认热键 L / P,新增 overlay_fps

📁 放进 plugin\(单数),不是游戏自带的 plugins\(复数,那是 Qt 插件目录)。

本版内容

1. mod 多时面板卡顿

装了 XXMI/3DMigoto 时插件走分层窗口路径,它每帧要做一次 GPU→CPU 回读,而 Map() 会等 GPU 队列跑完——mod 越多队列越长、等得越久,表现就是一顿一顿甚至像卡死。两项缓解:

  • 内容没变就跳过整轮:给 ImGui 画面算指纹,面板静止(没动鼠标、骨骼没在动)时直接跳过回读与上传,窗口上留着上一帧内容;
  • 新增配置项 overlay_fps(默认 60,0 = 不限):限制分层路径的呈现帧率,mod 多的机器可以写 overlay_fps=30。

验证:日志里每秒一行 [GUI] layered present N fps: rect WxH copy/map/ulw | skipped=N —— skipped 大说明跳过生效,map max 很大说明仍在等 GPU(那就降 overlay_fps)。

2. 旋转盘"变色了却点不动"

输入路由原来在 ImGui 帧之前决定"要不要把鼠标从游戏手里接管过来",用的还是上一帧的 hover 状态。于是环已经高亮(本帧算出),但那次左键仍被判成"点游戏",覆盖层收不到 —— 感觉就是要非常精准才能点中。

现在这步决定挪到 DrawPoserGui() 之后,用本帧状态,快速甩到环上立刻按下也能抓住。

3. "点空白处取消选中"原来基本不生效

覆盖层平时是可穿透的:点在远处空白处时这次点击直接给了游戏,我们的窗口根本收不到事件,所以那条逻辑没机会跑(只有擦到关节/环悬停区时才生效,看起来像"偶尔能用")。

现在改成轮询左键判断"短按"(按下 300ms 内松开、位移 <6px),不再依赖事件是否到达我们窗口;按住拖动(转镜头、拖旋转盘)不算,所以不会误取消。日志:[RIG] empty-space click -> deselect。

4. 面板「打开日志」按钮

主面板顶部新增,点了弹资源管理器并选中 plugin\poser_log.txt —— 反馈问题时一步就能把日志发给作者。

安装与使用

  1. 备份并替换游戏根目录的 d3dcompiler_47.dll(可选:vulkan-1.dll);
  2. 把 plugin\poser.dll、plugin\poser_config.txt 放进游戏根目录的 plugin\(没有就新建);
    ——或者直接双击包里的 安全安装.bat,按提示把游戏目录拖进去;
  3. 用游戏启动器启动(不要直接运行 Endfield.exe,会在 IL2CPP 就绪前 attach 触发 GC 致命错误)。

热键:L 呼出/隐藏面板,P 冻结/解冻;可在主面板 快捷键(可改) 里一键改键。
完整流程见 docs/tutorial.md。

渲染 API:DX11 与 Vulkan 均可用。用 Vulkan 时请用「窗口化 / 无边框全屏」。

已知问题

  • 冻结后骨架有轻微颤抖(老机制遗留:逐帧钉姿势会和游戏侧仍在写的系统轻微打架,
    表现为在静止姿态与当前摆姿之间来回)。不影响摆姿与保存,本版未修;
  • 某些特殊场景(例如不能切换角色的剧情/试用场景)插件可能抓不到角色
    (日志里 Re-capture retry: animator=0),此时无法摆姿;后续会加"扫描场上 Humanoid Animator"的捕获路径;
  • 表情不能跨角色通用:SMC 权重不写入姿态文件(姿态默认不含表情骨),换角色要重调;
  • 表情滑条只覆盖 5 口型 + 19 个表情(游戏自带那套),其它 morph 表示不了(但会被内部基准保住);
  • 默认键 L / P 是单个字母:游戏内文本框/聊天里打字时可能误触发(插件自己面板的输入框已屏蔽);
  • 只有"当前角色"可编辑:切走的角色只保持冻结,不进面板;
  • 相机参数不随姿态文件保存;
  • IK 控制器、骨骼层级树、撤销/重做、骨骼镜像未包含在本版(做过但实测有问题,代码保留在 git 历史)。