[unity3d][通过代码]让模型移动,动态改变模型位置,点对点移动

这篇具有很好参考价值的文章主要介绍了[unity3d][通过代码]让模型移动,动态改变模型位置,点对点移动。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

阅读建议

阅读时长: 10分钟
阅读难度: 初级
阅读收获: 可以在unity自由的完成点对点的移动过程
例子地址: https://gitee.com/asiworld/unity3d-basic-function-code


方式1:[通过直接赋值的方式进行进行模型移动]

原理

  • 直接修改gameobjectposition内容,当然物体实际存在的有localposition和worldposition,具体要使用哪个要看需求是怎么样的

步骤

  1. 在hierarchy视图中创建物体(本例子中使用cube)
  2. 创建控制脚本并进行代码编写
using System.Collections;
using UnityEngine;

public class movement_1 : MonoBehaviour
{
    // Start is called before the first frame update
    IEnumerator Start()
    {
        yield return new WaitForSeconds(1.0f);
        transform.position = new Vector3(transform.position.x + 10, transform.position.y, transform.position.z);
    }

    // Update is called once per frame
    void Update()
    {

    }
}

  1. 把脚本挂在到物体上
  2. 点击play查看效果

效果展示

9月9日1


方式2:[通过在updata中赋值,平滑的让物体移动]

原理

  • 由第一种方式的从一个点到另一个点的直接移动,我们在updata中对整个过程进行拆分,让整个过程更加平滑

步骤

  1. 在hierarchy视图中创建物体(本例子中使用cube)
  2. 创建控制脚本并进行代码编写
using UnityEngine;

public class movement_2 : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        transform.position = Vector3.Lerp(transform.position, new Vector3(5, transform.position.y, transform.position.z), Time.deltaTime);
    }
}

  1. 把脚本挂在到物体上
  2. 点击play查看效果

效果展示

9月9日2


方式3:[通过dotween让物体平滑的移动]

原理

  • 使用比较U3D比较常用的动画插件让我们在很简单的代码下就可以让物体进行移动

步骤

  1. 引入dotween并配置完成
  2. 在hierarchy视图中创建物体(本例子中使用cube)
  3. 创建控制脚本并进行代码编写
using DG.Tweening;
using UnityEngine;

public class movement_3 : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        transform.DOMove(new Vector3(transform.position.x + 10, transform.position.y, transform.position.z), 2.0f);
    }

    // Update is called once per frame
    void Update()
    {

    }
}
  1. 挂在脚本在物体上
  2. 点击play按钮

效果展示

9月9日3


方式4:[通过animator让物体平滑的移动]

原理

  • 使用unity3d中自带的帧动画控制器,在帧动画文件中录入起始位置和终止位置

步骤

  1. 在project视图中的对应目录下创建animator

  2. 在project视图中的对应目录下创建animation

  3. 在Hierarchy视图中创建物体

  4. 关联animation和animator

  5. 关联animator和物体

  6. 点击ctrl/command+6打开animation视图
    [unity3d][通过代码]让模型移动,动态改变模型位置,点对点移动

  7. 在第n针上创建关键帧内容为对应物体的位置

  8. 点击play按键

效果展示

9月9日4文章来源地址https://www.toymoban.com/news/detail-423155.html


总结

😘求求老爷给个一键三连吧

  • git主页 : https://gitee.com/asiworld
  • 博客主页:https://blog.csdn.net/JianShengShuaiest
  • bilibili主页:https://space.bilibili.com/15766978

到了这里,关于[unity3d][通过代码]让模型移动,动态改变模型位置,点对点移动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity3D 控制物体移动且自动旋转

    直接上代码(改脚本挂载到游戏物体上) 第三人称摄像机移动

    2024年02月15日
    浏览(83)
  • Unity3D制作一个会移动的方块(还不会移动照相机)

    学习 Unity3D 这么久了,如果你还不会制作一个按下 WASD 就可以移动的方块的话,那么你的学习将没有一点成就感,我学习的时候,我决定 先学习移动 ,这样我就会对 Unity 更加感兴趣,学习起来的动力会更为充足 先创建一个项目,名为move,如果你手头有一个随便乱用的项目

    2024年02月14日
    浏览(48)
  • unity3d 实现第三人称移动与摄像机调整

    首先展示效果 unity3d 关于人物移动,这里推荐使用Character Conrroller组件,优点就是可以不用处理刚体,不受重力的影响,自带物理碰撞检测。  人物移动代码包括转向 接下来就是摄影机的调整,这里使用unity自带的插件cinemachine,非常的推荐,无需使用冗杂的代码即可设计较好

    2024年02月11日
    浏览(50)
  • 【unity】关于unity3D摄像机视角移动的几种方式详解

    目录 一、前言 二、Transform基础 1、几种坐标系 2、position和localPosition属性 3、rotation属性 三、摄像机的平移 1、键盘控制平移 2、鼠标控制平移 3、整合  四、摄像机的旋转 1、绕自身旋转 2、绕目标物体旋转 3、整合  五、优化功能 1、调整速率 2、切换目标物体 3、设置常用摄

    2024年02月04日
    浏览(41)
  • Unity3D学习记录04——利用射线实现角色类似LOL的移动

    首先新建一个空白的GameObject,挂在一个MouseManager的脚本 实现思路: 通过获取鼠标点击的位置,获得该位置的信息,然后使角色移动到该位置 MouseManager脚本的代码如下:   代码解释: 先创建了一个Action类型的事件OnMouseClicked 这个是C#中事件的内容,我们可以在满足条件的时

    2024年02月08日
    浏览(57)
  • Unity3D中Resources动态加载图片

    问题:unity的Resources动态加载就不必多说了,这里出现的问题是当我把图片放入Resources文件夹后,使用Resources.Load(datapath)却并没有出现图片。 分析:由于你放在文件夹下的是图片,是Texture2D类型,但是实际用在u3d中的是sprite,所以需要转换类型。 方式: 1.在代码中先行创

    2024年02月11日
    浏览(42)
  • Unity3D摄像机,键盘控制前后左右上下移动,鼠标控制旋转、放缩

    Unity3D中运行场景时,实现摄像机的前、后、左、右、上、下,以及鼠标滚轮的放缩,鼠标右键的旋转操作。亲测有效,可供参考。 按键功能介绍:W——前;S——后;A——左;D——右;Q——下降;E——上升;鼠标右键——旋转;鼠标滚轮——放缩。 Tourcamera脚本需要挂在摄

    2024年02月11日
    浏览(62)
  • Unity3D实现第一人称移动,随鼠标转动视角+上楼梯(C#)

    第一人称移动: 1、在层级面板创建一个Capsule,命名为Player,将层级面板中的相机拖到Player下方 2、重置Player和摄像机的Transform数值(方便调整摄像机在Player上的位置),然后调整摄像机在Player上的位置 大概将摄像机放到Player眼睛的位置即可。 3、创建一个脚本,命名为Came

    2024年02月13日
    浏览(59)
  • 【Unity3D】UI Toolkit数据动态绑定

            本文将实现 cvs 表格数据与 UI Toolkit 元素的动态绑定。         如果读者对 UI Toolkit 不是太了解,可以参考以下内容。 UI Toolkit简介 UI Toolkit容器 UI Toolkit元素 UI Toolkit样式选择器 UI Toolkit自定义元素         本文完整资源见→UI Toolkit数据动态绑定。 2.1 UI 搭建

    2024年02月08日
    浏览(59)
  • 【Unity3D插件】动态连线插件CustomWire,使用教程

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 大家好,我是佛系工程师 ☆恬静的小魔龙☆ ,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 CustomWire 插件可以在Unity3D中实现动态连线,将三维物体通过线段连接到一起。 可以添加多个节点,以

    2024年02月08日
    浏览(123)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包