Commit Graph

5 Commits

Author SHA1 Message Date
tzdwindows 7
424c00ede9 feat(render): 实现模型旋转中心点支持- 为 ModelPart 添加 pivot 属性,支持设置旋转中心点
- 更新局部变换矩阵计算,考虑 pivot 对旋转和平移的影响
- 在 Mesh2D 中增强着色器 uniform 设置,兼容 uModelMatrix 和 uModel- 添加 setPivot 和 getPivot 方法,支持动态调整旋转中心- 创建测试用例 ModelRenderTest2,验证不同 pivot 点的旋转效果
-修复纹理绑定逻辑,确保渲染时正确应用纹理
- 添加调试纹理生成功能,便于视觉验证 pivot 效果
2025-10-08 18:45:17 +08:00
tzdwindows 7
becf789cb8 feat(render): 实现模型渲染层级变换与网格世界坐标烘焙
- 为 Mesh2D 添加 getX/Y 方法并优化顶点访问逻辑
-修复 FloatBuffer 剩余空间判断逻辑
- 添加 bakedToWorld 标志支持网格世界坐标烘焙- 重构 ModelPart 变换更新逻辑,增加递归重计算
- 实现 ModelPart.draw() 方法支持 shader 传参绘制
- 更新 ModelRender 渲染流程,支持 worldTransform 传递
-修正网格顶点坐标上传逻辑,兼容 baked 状态- 移除废弃的调试与上传方法
- 增强部件变换时的局部与世界矩阵同步
- 修复 printWorldPosition 使用 worldTransform 坐标
- 调整测试模型初始位置与层级结构

重点:
- 修复了XY轴无法设置的重大问题
2025-10-08 16:49:26 +08:00
tzdwindows 7
52ed33b5c8 refactor(render):重构Mesh2D渲染逻辑并优化着色器代码
- 将Mesh2D的渲染方法移至Mesh2D类中,简化ModelRender职责
- 移除冗余的纹理绑定逻辑,交由Mesh.draw()处理
- 更新顶点着色器和片段着色器以支持调试模式- 弃用旧的uploadMeshData方法,改用Mesh.draw()
- 添加getVaoId方法暴露VAO ID用于外部访问-修正uniform location获取方式为静态导入- 添加调试输出用于网格顶点坐标检查
- 移除无用的注释和冗余变量声明
2025-10-08 15:33:26 +08:00
tzdwindows 7
173c30f277 feat(render):优化模型渲染与局部变换矩阵计算
- 精简 updateLocalTransform 方法注释并调整代码格式
- 修正局部变换矩阵的构建方式,明确先缩放再旋转的顺序
- 添加 printWorldPosition 方法用于调试世界坐标
- 在 ModelRender 中引入 Vector2f 类(暂未使用)- 调整 renderPartRecursive 方法逻辑结构并增加世界坐标打印注释- 移除冗余空行,提升代码可读性
2025-10-08 12:30:37 +08:00
tzdwindows 7
3cf7f5883c feat(anim): 实现2D模型动画系统核心类
- 添加AnimationClip类用于管理动画剪辑和关键帧
- 添加AnimationLayer类支持动画层和混合模式
- 实现动画曲线采样和插值算法
- 支持事件标记和动画状态控制
- 添加参数覆盖和权重混合功能
- 实现动画轨道和关键帧管理- 添加多种插值类型支持(线性、步进、平滑、缓入缓出)
- 实现动画事件系统和监听器模式
- 支持动画剪辑的深拷贝和合并功能
- 添加AnimationParameter类用于动画参数管理
2025-10-08 11:08:57 +08:00