- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NO.6.1_GRE中级教程1
中级教程一 动画, 两点间移动, 和四元数基础
目录
1 介绍
2 前期准备
3 准备开始
4 设置场景
5 动画
6 移动角色
7 巩固练习
7.1 简单的问题
7.2 Intermediate Questions
7.3 Difficult Questions
7.4 Expert Questions 介绍
这个教程里包括怎么样得到一个模型,并添加模型动画,最后让模型可以在两个预先定义的点之间走动。在此将讲述如何用基本的四元数方法保持模型移动的时候正面一直朝着我们指定的方向。你必须一点点的将代码加入到你的项目中,并在每次加入新代码后编译并察看demo运行的结果。
本课的最终代码在这里。
前期准备
首先,这个指南假设你已经知道如何设置Ogre的项目环境以及如何正确编译项目。该例子同样使用STL 中的queue数据结构。那么预先了解如何使用queue是必要的,至少你需要知道什么是模版。如果你不熟悉STL,那么我像你推荐STL参考[ISBN 0596005563],它可以帮助你在将来花费更少的时间。
准备开始
首先,你需要为这个Demo创建一个新项目,在项目中添加一个名为MoveDemo.cpp的文件并加入如下代码:
#include ExampleApplication.h
#include deque
using namespace std;
class MoveDemoListener?: public ExampleFrameListener
{
public:
MoveDemoListener(RenderWindow* win, Camera* cam, SceneNode *sn,
Entity *ent, dequeVector3 walk)
?: ExampleFrameListener(win, cam, false, false), mNode(sn), mEntity(ent), mWalkList( walk )
{
} // MoveDemoListener
/* This function is called to start the object moving to the next position
in mWalkList.
*/
bool nextLocation( )
{
return true;
} // nextLocation( )
bool frameStarted(const FrameEvent evt)
{
return ExampleFrameListener::frameStarted(evt);
}
protected:
Real mDistance; // The distance the object has left to travel
Vector3 mDirection; // The direction the object is moving
Vector3 mDestination; // The destination the object is moving towards
AnimationState *mAnimationState; // The current animation state of the object
Entity *mEntity; // The Entity we are animating
SceneNode *mNode; // The SceneNode that the Entity is attached to
std::dequeVector3 mWalkList; // The list of points we are walking to
Real mWalkSpeed; // The speed at which the object is moving
};
class MoveDemoApplication?: public ExampleApplication
{
protected:
public:
MoveDemoApplication()
{
}
~MoveDemoApplication()
{
}
您可能关注的文档
- N0205 行现场管理与主动服务营销(3-3).doc
- NBT4701.2-讲课版.doc
- NCCN成人癌指南更新.ppt
- NCCN更新-杨文恒.ppt
- ndows X操作系统.doc
- NEW_ch9电子商务支付技术.ppt
- NF-κB综述.doc
- No.1 材料学绪论MC2017-Chapter1.ppt
- No.11--在进行时.ppt
- No.13--般将来时.ppt
- 海事知识竞赛《海事知识竞赛找答案》新版_0.doc
- 海事知识竞赛《海事知识竞赛找答案》新版.doc
- 海事知识竞赛《海事知识竞赛在线测试》模拟考试卷_0.doc
- 海事知识竞赛《海事知识竞赛在线测试》模拟练习卷.doc
- 海事知识竞赛《海事知识竞赛在线测试》模拟练习卷_0.doc
- 2024秋新人教版道德与法治7年级上册教学课件 1.1.2 规划初中生活.pptx
- 海事知识竞赛《海事知识竞赛在线测试》模拟练习卷_1.doc
- 海事知识竞赛《海事知识竞赛在线测试》模拟练习卷_2.doc
- 2024年新人教版地理七年级上册 章 天气与气候 第二节 气温的变化与分布 教学课件.pptx
- 传热过程计算习题.pptx
文档评论(0)