毕业论文--物理在游戏中的应用.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业论文--物理在游戏中的应用

*********软件技术学院 毕业设计(论文) 题 目: 物理在游戏中的应用 系 别: 计算机软件技术系 专 业: 图文信息技术 学 号: 姓 名: 指导老师: 完成日期: 2009 年 5 月 20 日 摘 要 为了游戏的真实性,游戏的动画逼真,一些游戏设计者会在游戏的设计程序里,用到物理知识和一些物理定律来模拟游戏中的任何弹跳、飞行、翻滚、滑行或非静止的物体。 物理学是一门领域极广的科学,包含许多不同却相关的领域。在真实游戏内容中最常使用的主题是力学,这也就是“真实的物理学”所代表的意义。 关 键 词 结构体,函数SetMode(),完全弹性碰撞,完全非弹性碰撞,观察矩阵,动能 目 录 一、游戏物理简介··············································1 1.物理························································1 2.游戏和物理··················································1 3.物理在游戏中的应用············································1 二、具体实例···················································2 1.test中是两个星球的碰撞·······································2 2.添加碰撞所需的物理学知识·······································3 3.结果························································4 三、总结·······················································5 谢 辞·························································6 参考文献·······················································7 注 释··························································8 一、游戏物理简介 1.物理 物理学是研究物质世界最基本的结构最普遍的相互作用最一般的运动规律及所使用的实验手段和思维方法的自然科学经过大量严格的实验验证的物理学规律被称为物理学定律然而如同其他很多自然科学理论一样这些定律不能被证明,其正确性只能经过反覆的实验来检验。如得主、德国科学家玻恩所言:如其说是因为我发表的工作里包含了一个自然现象的发现,倒不如说是因为那里包含了一个关于自然现象的科学思想方法基础“碰撞”在物理学中表现为两粒或物体间极短的相互作用。 碰撞前后参与物发生速度,动量或能量改变。由能量转移的方式区分为弹性碰撞和非弹性碰撞。弹性碰撞是碰撞前後整个系统的动能不变的碰撞。弹性碰撞的必要条件是动能没有转成其他形式的能量(热能、转动能量),例如原子的碰撞。—当刚体系统碰撞时,动能守恒。这表示固定质量的物体,其质量与速度之积的总和在撞击后是相等的:m1*v1+m2*v1=m1*v1`+m2*v2`。 以及能量守恒定律: 1/2*m1*v1*v1+1/2*m2*v2*v2=1/2*m1*v1`*v1`+1/2*m2*v2`*v2` 由于现实中的撞击大部分会伴随着能量的损失而并不能实现完全弹性碰撞,在此我们假设完全理想条件下发生的完全弹性碰撞。 现在用一个简单的碰撞程序来说明物理在游戏中的价值与作用。 1.程序中重点代码解释及说明 (1):结构体Move和函数SetMode()是为两个星球的运动设置物理规律。 1:第一个if()中是当两个星球的运动距离之和大于比他们原来的距离时,即当两个星球接触后;则函数SetMode()返回值是1。 2:L.g=v1*time是设置星球移动的距离;v1是左边头像的速度;time是自增变量,为移动提供时间曾量。L.b=v2*time一样。 (2):InitGeometry()中包含了图片的加载、区域的绘制等。 1:if()语句中是背景纹理图片的加载与提取;g_Vertices[]是绘制大背景区域;之后的if()是设置缓冲区;之后是为资源锁定内存。 2:g_Vertices1[]是绘制左边星球的区

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档