YARE开发记录(2)
来源:互联网 发布:nginx 端口配置 编辑:程序博客网 时间:2024/05/17 23:55
/*
------------------------------------------------------------------------------------------------------------
Copyright (c) 2006 YanLiang
CSkeleton对象代表骨骼动画的数据和操作.包括:
骨骼数据信息.
动画(作)信息.
-------------------------------
骨骼数据信息 是构成该骨骼动画所需骨(bone)的集合.如:行走动画(作)中的人体骨的集合.
骨(bone)之间或者独立,或者存在依赖关系. 存在依赖关系的bone, 处于parent地位的bone的运动会影响到它的child bone,
所有直接或间接相连的bone构成了一个骨骼树, 独立的bone则不会,它变换时,不会受其它bone影响, 也不会影响其它bone.
bone是CNode类的实例, CNode具有添加和储存child CNode的方法. 所有的bone储存在m_BonesMap中, 以bone name作索引.
存储完成后, 遍历所有bone完成非独立bone的连接ParentAddChild(CNode* parent, CNode* child), 构成bone树.
所有独立的bone(可将其视为深度为1的树的根部的bone)和位于bone树根部的bone都被视为主骨(root bone), 存储在m_RootBonesList中.
以后的遍历,可视为bone森林的遍历. 所有的根bone都可以在m_RootBonesList中找到. 可以实现多主骨骨胳动画.
----------------------------------
动画(作)信息 是与骨骼有关的Animation的集合.
Animation存储在m_AnimationMap中, 以Animation name为索引.
----------------------------------
特别需要注意的: 在骨骼动画(作)中bone的运动是由 Animation的成员AnimationTrack的方法驱动的,
AnimationTrack计算出某一时刻的变换,并将变换直接赋值给相关联的bone. 该bone应是CSkeleton对象中的某一bone.
须将其连接. 否则动画(作)不会影响骨骼. CSkeleton对象将不会有实际意义.
----------------------------------
CSkeleton对象需要有名称,以便于数据保存,加载及查询检索时使用,大多数情况下CSkeleton名称是键值.
-------------------------------------------------------------------------------------------------------------
*/
- YARE开发记录(2)
- YARE开发记录(1)
- sift开发记录2
- iOS开发记录(2)
- Android开发学习记录2
- 《春日记》开发记录【2】
- 开发记录
- 开发记录.
- 2月13日 mapEdit 开发记录
- Super Pig游戏开发记录(2)
- snmp开发记录2--使用python扩展
- android 短信 轰炸机 app 开发 记录 (2)
- 关于网上商城开发的随笔记录2
- 面试记录2-web前端开发
- opencv4android开发记录(2):简单文字检测
- 工作记录--DIY开发记录
- gnome-logs开发记录2--合并git的多个commit--Gnome开发记录
- 开发记录:个人中心开发
- Eclipse中的字體設定
- 如何利用FDD模式实现项目的精确、快速开发
- java中调用SQLite的简单经验总结!
- DBGrid的实用技巧
- 意外的惊喜
- YARE开发记录(2)
- 自制精美易用的DBGrid
- 攻防战略 ICMP常见攻击及防范措施
- 点击DBGrid的Title对查询结果排序
- SQL语句性能优化--LECCO SQL Expert
- 把DBGrid导出到Excel表格(支持多Sheet)
- 关于利用css定制下拉菜单
- To deal with RealMedia and Others
- 取DBGRID内一个单元格内的值