【Unity】P4 脚本文件(基础)

这篇具有很好参考价值的文章主要介绍了【Unity】P4 脚本文件(基础)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

上一篇博文主要围绕Unity Inspector部分,围绕组件,资源文件,父子节点部分做介绍。
链接:https://blog.csdn.net/weixin_43098506/article/details/129274582

本篇博文将主要开始代码编辑部分,首先介绍Unity适配的C#代码编辑器,需要对Java或者C++有基础理解;然后将介绍帧的概念,将在通过脚本文件移动物体部分结束。

下一篇博文将深入到代码中,研究物体的旋转,欧拉角法以及通过Rotate进行旋转;
链接:文章来源地址https://www.toymoban.com/news/detail-476767.html

正题

适配的C#代码编辑器

推荐使用 Visual Studio,其可以与Unity适配,在输入函数以及名称时会产生联想以方便书写代码。

Windows-Community 版本的下载链接:https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Community&channel=Release&version=VS2022&source=VSLandingPage&cid=2030&passive=false
其他用户自行到官方下载Community免费版。

下载后安装,只需要安装Unity游戏部分即可

【Unity】P4 脚本文件(基础)

下载安装完成后打开Unity,在Edit中选择Preference
然后在 External Tools 中选择 Microsoft Visual Studio 2022

【Unity】P4 脚本文件(基础)

如此选择后,构建了Unity与VS2022的桥梁,双击代码会自动使用VS打开并可以产生联想。

注意,可能会出现无联想的情况,需要重新执行Edit中Preference步骤以解决。


如何添加一个脚本文件

如我们想让蘑菇在地板上沿着Z轴平移,请问如何做?

【Unity】P4 脚本文件(基础)

步骤:
首先在Assets中创建Scripts文件夹,用于记录所有代码文件。
然后在Scripts文件夹中新建代码文件 C# Script

【Unity】P4 脚本文件(基础)

创建完成后,双击会自动通过 Visual Studio 打开,注意C#文件命名建议符合“大驼峰”规则。

打开VS后第一步检查文件名称与类名称是否相同,不相同会出现错误。

【Unity】P4 脚本文件(基础)

没有问题我们进入下一步,开始代码编辑。


获取蘑菇当前位置

在 void Start() 中加入代码

Debug.Log("蘑菇的名字为:" + this.gameObject.name);
Debug.Log("蘑菇的位置在:" + this.gameObject.transform.position.ToString("F1"));

保存代码后,返回到Unity中,下一步我们将代码文件赋给蘑菇物体:

【Unity】P4 脚本文件(基础)

执行游戏。单机执行,再次点击 ▶ 取消执行游戏状态。

【Unity】P4 脚本文件(基础)

执行后效果以及打印结果:
发现其输出名称以及位置坐标信息正确。

【Unity】P4 脚本文件(基础)

代码解析:

获取当前指定游戏物体的名称;

this.gameObject.name

获取当前指定游戏物体的位置信息并且保留一位小数;

this.gameObject.transform.position.ToString("F1")

基础代码

代码 含义
this 当前脚本组件
this.gameObject 当前物体
this.gameObject.name 当前物体名称
this.gameObject.transform 当前物体下的transform属性
this.gameObject.position 当前物体下的世界坐标
this.gameObject.localPosition 当前物体的本地坐标,或称相对于父物体的坐标

改变物体位置

物体的位置属性为localPosition,修改物体的localPosition属性以实现物体的移动。localPosition 为包含三个值的向量 Vector3(x,y,z);

this.transform.localPosition = new Vector3(0,0,5);

代码保存后,运行发现蘑菇的位置发生变化。


帧与帧更新

Frame:游戏帧
FrameRate:帧率,刷新率
FPS:Frames Per Second:每秒更新多少帧

在 Visual Studio 中,代码主要有两个方法,一个是Start,一个是Update。每更新一帧时,都将调用一次Update方法。

与帧相关的基础代码有:

代码 含义
Time.time 取得当前游戏时间
Time.deltaTime 距上帧的时间差
Application.targetFrameRate=60 设定近似帧率

需要注意的是,帧率是在不断变化的,没有固定值,只能通过上述代码设定近似帧率。为什么帧率是不断变化的???
影响帧率的有很多因素,主要为我们电脑当前执行的所有程序。当我们执行很多程序时,不可避免的处理器繁忙,会导致帧率的变化。


结合上述所有知识,若我们想要让物体匀速运动,该如何办?
上述知识小结:

  1. Update方法每一帧调用一次;
  2. 帧率是在不断变化的,没有固定值,只能设定近似帧率;
  3. 改变物体位置的code以及获取帧时间差的code。
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class MoveToZ : MonoBehaviour
{
    // Start is called before the first frame update

    float speed = 5;
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        float distance = speed * Time.deltaTime;
        this.transform.Translate(0, 0, distance);
    }
}

------ End ------

上一篇博文主要围绕Unity Inspector部分,围绕组件,资源文件,父子节点部分做介绍。
链接:https://blog.csdn.net/weixin_43098506/article/details/129274582

下一篇博文将深入到代码中,研究物体的旋转,欧拉角法以及通过Rotate进行旋转;
链接:

到了这里,关于【Unity】P4 脚本文件(基础)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Unity脚本基础

    Awake, Start, Update, FixedUpdate,还有一个LateUpdate Awake在游戏启动时运行一次,并且是在脚本组件未初始化完成时工作,可以用来做一些预设置;而Start是与组件相关的,当组件的脚本完成初始化且启用了脚本组件时,工作一次,并且是在第一次执行Update之前执行。 Update是帧之间的

    2023年04月08日
    浏览(24)
  • Unity2022新手入门教程(P4-P100)

    本笔记根据B站同名Unity教程同步记录,课程资料见此链接。 博主已购买,支持正版资源,尊重每个人的劳动成果。 本教程适合毫不知情的小白 内容非常简单 建议先看目录再决定要不要学习 unity下载地址: https://unity.cn/ 点击下载Unity 下载Unity Hub(需要注册一个账号,博主是用

    2024年02月15日
    浏览(105)
  • unity06 脚本 世界物理坐标体系与脚本基础应用

    子节点相对父节点坐标,以父节点中心点为标准 Global,即世界坐标系 Local,即本地坐标系 以物体自身为轴 6个方向代表:上下 前后 左右 移动物体并不是匀速的 每次运动0.01米,但是间隔的deltaTime不固定 每秒移动3米就是3个格子 transform.Translate() 可实现物体的运动 transform.Tr

    2024年02月16日
    浏览(36)
  • 【Unity】 基础交互入门(C#脚本互相调用的方法,含动态绑定脚本)

    脚本A: 在需要被调用的类里这样写: 脚本B: 在其他类里调用: 如果出现无法识别上下文的提示,检查一下以下问题: 1、两个脚本的命名空间是否一致,如果不需要的命名空间可以直接删除。 2、类名是否大写开头,且命名合法,且和文件名一致。 3、更新编译一下保存一

    2024年02月15日
    浏览(53)
  • unity脚本基础+编辑器UnityEditor学习

    1.1创建脚本 新建脚本文件后,文件内会有一段默认代码: 它源自基类MonoBehaviour,以确保此脚本将在游戏循环中运行,并具有对某些事件作出反应的附加功能。 1.2生命周期 当脚本运行时,unity会按照预定顺序依次调用以下方法,完成生命周期: [所有脚本的顺序是并行的] 初

    2024年02月04日
    浏览(49)
  • Unity脚本显示“杂项文件”的处理方法

            首先说明一下,如果没有试过常规的方法,建议先尝试常规的:如在VS中右键选择添加到解决方案.......         如果不可以再来试试这个:         点击 编辑(Edit)首选项(Preferences)打开首选项窗口         在首选项窗口中,选择 外部工具(External Tools)

    2024年02月12日
    浏览(56)
  • Unity 游戏开发、01 基础篇 | 知识大全、简单功能脚本实现

    Unity默认窗口布局 Hierarchy 层级窗口 Scene 场景窗口,3D视图窗口 Game 游戏播放窗口 Inspector 检查器窗口,属性窗口 Project 项目窗口 Console 控制台窗口 恢复默认布局 Window | Layouts | Default 调大页面字体 Preference | UI Scaling 新项目默认创建了 SampleScene 场景 {摄像机,平行光} SampleScen

    2024年02月09日
    浏览(59)
  • Unity 游戏开发、01 基础知识大全、简单功能脚本实现

    Unity默认窗口布局 Hierarchy 层级窗口 Scene 场景窗口,3D视图窗口 Game 游戏播放窗口 Inspector 检查器窗口,属性窗口 Project 项目窗口 Console 控制台窗口 恢复默认布局 Window | Layouts | Default 调大页面字体 Preference | UI Scaling 新项目默认创建了 SampleScene 场景 {摄像机,平行光} SampleScen

    2024年02月09日
    浏览(62)
  • unity脚本无语法提示,打开是杂项文件,VS没有sln文件解决办法

    困扰好几天,一次性帮你解决,关联unity2019 2020 2021 2022 2023   Visual Studio开发unity无语法提示 unity脚本无语法提示,打开是杂项文件,VS没有sln文件解决办法 没有语法提示是因为打开C#代码时是杂项文件,无法和其他代码文件关联。 VS在有sln文件时把目录当成一个解决方案(项

    2024年02月08日
    浏览(63)
  • python-基础篇-文件-py脚本

    报以上错误,需要在根目录下创建test文件夹

    2024年01月25日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包