深入浅出游戏算法(4)-unity3d算法(2)-移动球
2014-08-12 15:10
344 查看
通过声明gameobject对象,实现一个脚本用于多个对象
#pragma strict
//code:myhaspl@myhaspl.com
//date:2014-08-12
var rotate_object:GameObject;
var translate_object:GameObject;
var fuhao:int;
fuhao=-1;
function Update () {
if (rotate_object!=null){
rotate_object.transform.Rotate(1,1,-1);
}
if (translate_object!=null) {
if (translate_object.transform.position.y<9 ){
fuhao=1;
}
if (translate_object.transform.position.y>15)
{
fuhao=-1;
}
translate_object.transform.Translate (0,fuhao*0.1,0);
}
}
运行效果如下链接所示:
http://mygame.myhaspl.com/test2/test2.html
Update() 和 FixedUpdate()在游戏中都会在更新的时候自动循环调用。 Update是在每次渲染新的一帧的时候才会调用, 而FixedUpdate,是在固定的时间间隔执行,不受游戏帧率的影响,一般在钢体中使用。钢体,不勾选受重力影响,让球体边移动边向下掉:#pragma strictvartranslate_object:Rigidbody;functionFixedUpdate() { if (translate_object!=null) { translate_object.rigidbody.transform.position.z+=0.1; }}
在球快掉到底时,施加一个上升的力
#pragma strict
import System;
var translate_object:Rigidbody;
var li:int=20;
function FixedUpdate() {
if(translate_object!=null) {
if (translate_object.rigidbody.transform.position.y<11){
translate_object.rigidbody.AddForce(0,li,0);
}
}
}
#pragma strict
//code:myhaspl@myhaspl.com
//date:2014-08-12
var rotate_object:GameObject;
var translate_object:GameObject;
var fuhao:int;
fuhao=-1;
function Update () {
if (rotate_object!=null){
rotate_object.transform.Rotate(1,1,-1);
}
if (translate_object!=null) {
if (translate_object.transform.position.y<9 ){
fuhao=1;
}
if (translate_object.transform.position.y>15)
{
fuhao=-1;
}
translate_object.transform.Translate (0,fuhao*0.1,0);
}
}
麦好的AI乐园博客所有内容是原创,如果转载请注明来源
http://blog.csdn.net/myhaspl/
在unity3d下如下布局:运行效果如下链接所示:
http://mygame.myhaspl.com/test2/test2.html
Update() 和 FixedUpdate()在游戏中都会在更新的时候自动循环调用。 Update是在每次渲染新的一帧的时候才会调用, 而FixedUpdate,是在固定的时间间隔执行,不受游戏帧率的影响,一般在钢体中使用。钢体,不勾选受重力影响,让球体边移动边向下掉:#pragma strictvartranslate_object:Rigidbody;functionFixedUpdate() { if (translate_object!=null) { translate_object.rigidbody.transform.position.z+=0.1; }}
在球快掉到底时,施加一个上升的力
#pragma strict
import System;
var translate_object:Rigidbody;
var li:int=20;
function FixedUpdate() {
if(translate_object!=null) {
if (translate_object.rigidbody.transform.position.y<11){
translate_object.rigidbody.AddForce(0,li,0);
}
}
}
相关文章推荐
- 深入浅出游戏算法(4)-unity3d算法(3)-移动摄像机
- 深入浅出游戏算法(4)-unity3d算法(1)-球转动
- 深入浅出游戏算法(4)-unity3d算法(1)-球转动
- 一个硬币移动游戏的求解算法
- 即时游戏移动算法
- 牛客网 小东所在公司要发年终奖,而小东恰好获得了最高福利,他要在公司年会上参与一个抽奖游游戏在一个6*6的棋盘上进行,上面放着36个价值不等的礼物,每个小的棋盘上面放置着一个礼物,他需要从左上角开始游戏,每次只能向下或者向右移动一步,到达右下角停止,一路上的格子里的礼物小东都能拿到,请设计一个算法使小东拿到价值最高的礼物
- 2048游戏回顾二:算法总结(移动、合并、动画等)
- Silverlight游戏研发手记:(二)四叉树遍历与人工智能A*算法在SLG移动路径范围测算中的应用
- 关于SLG战略游戏中,人物移动范围的算法(js实现)
- 深入浅出游戏算法(3)-lua脚本(9)
- unity战棋类游戏移动范围搜索算法设计(未优化)
- 深入浅出游戏算法(1)-配置opengl、glut在codeblocks和vs2012(1)
- 深入浅出游戏算法(3)-lua脚本(2)
- 深入浅出游戏算法(3)-lua脚本
- 深入浅出游戏算法(3)-lua脚本(6)
- 一个硬币移动游戏的求解算法
- 深入浅出游戏算法(2)-图形数学基础(1)
- 深入浅出游戏算法(3)-lua脚本(4)
- swift语言实战晋级-第9章 游戏实战-跑酷熊猫-7-8 移动平台的算法
- 2048游戏回想二:算法总结(移动、合并、动画等)