Unity3D新手教学,让你十二小时,从入门到掌握!(一)[通俗易懂]

Unity3D新手教学,让你十二小时,从入门到掌握!(一)[通俗易懂]unity入门教学,新手教学,新手到大神的教学。。。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

(日期2021.3.6)声明!


此系列文章是我多年前自学时写的几篇随笔,漏洞百出,承蒙大家的厚爱!
即日起,最新**《Aries-Unity入门》**系列课程开始更新,欢迎大家关注赏脸,也请大家多多指教
本站:https://blog.csdn.net/aries_h/category_10841366.html
B站:https://space.bilibili.com/818634/video
QQ交流群:794690306

以下为2015年原文


首先声明一下,我用的Unity版本是4.6.6,编译环境是VS2010,其余的我会慢慢介绍,安装的过程这里我就不做讲解了,度娘那会做的比我详细。安装包可以在最下面的联系方式找我要,现在开始进入主题。
打开Unity以后,我们先新建工程,这里要注意,一定要一个汉字都不能有,**一定!**避免出现不必要的Bug。
这里写图片描述

打开工程以后,就可以看到我们的Unity的操作界面。

这里写图片描述

这个我用着不方便,按照我个人的习惯,变成了这样的布局,当然这是个人喜好,可以不用模仿我。

这里写图片描述

那么这里每个模块的每个功能我就不一一介绍了,具体功能介绍我推荐给大家几本书,以供参考。

这里写图片描述

这里写图片描述

首先看这里

这里写图片描述

快捷键从左至右为QWERT,功能为
Q:调整视图
W:移动工具
E:旋转工具
R:缩放工具
T:选择工具
鼠标右键为旋转视图,鼠标中键等于按下Q的左键操作。

现在,我们来创建一个GameObject来练习如何操作Unity3D。

首先,创建一个Cube。

这里写图片描述

然后调整到MainCamera能观看到的范围内。

这里写图片描述

在这里我要介绍一下MainCamera,这个是游戏的主摄像机,也就是说我们玩游戏的视图都是这个东西拍摄下来的游戏引擎里的游戏对象。因为,场景没有光源,所以MainCamera看到的东西比较暗,那么我们为场景添加光源,然后选中这个Cube按F2重命名为Floor,并将Floor通过缩放工具变成我们需要用的地板。

这里写图片描述

这里写图片描述

下面我们在Floor的上方再新建一个Cube,作为我们的主角,命名为Player。

这里写图片描述

现在我们点击Unity上方像播放似的那个按钮,就是运行游戏,可以法线并没有什么变化,现在我们给主角添加刚体。—-Rigidbody
并运行游戏。

这里写图片描述

这里写图片描述

可以看到我们的Player掉到了Floor上,因为我们添加了物理引擎。他可以模拟重力,模拟碰撞、、、等等。

下面开始用代码让我们的Player动起来吧!

首先先创建C#脚本文件。

创建脚本前以防我们的工程文件会很乱,所以我们要新建一些文件夹,为我们的资源分类,我分了这些类,并且创建了一个PlayerMove的C#脚本。

这里写图片描述

这里写图片描述

双击用VS2010打开脚本。

这里写图片描述

下面我们开始写移动的代码。

public class PlayerMove : MonoBehaviour {

    //定义移动的速度
    public float MoveSpeed = 2f;
    //定义旋转的速度
    public float RotateSpeed = 0.01f;


	void Start () {

	}
	
	void Update () {

        //如果按下W或上方向键
        if(Input.GetKey(KeyCode.W)||Input.GetKey(KeyCode.UpArrow))
        {
            //以MoveSpeed的速度向正前方移动
            this.transform.Translate(Vector3.forward*MoveSpeed*Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow))
        {
            this.transform.Translate(Vector3.back * MoveSpeed*Time.deltaTime);
        }

        //如果按下A或左方向键
        if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
        {
            //以RotateSpeed为速度向左旋转
            this.transform.Rotate(Vector3.down * RotateSpeed);
        } 
        if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
        {
            this.transform.Rotate(Vector3.up * RotateSpeed);
        }
	
	}
}

把这个代码托给Player。

这里写图片描述

好了,运行游戏,你的Player已经可以移动了。

这里写图片描述

按下Ctrl+S保存场景,第一讲到此结束,未完待续。。。 。。。

联系方式
QQ交流群:794690306

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191655.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 五子棋人机对战思路「建议收藏」

    五子棋人机对战思路「建议收藏」五子棋人机对战:人机对战,我们可以想象一下我们在玩QQ游戏五子棋时的场景,根据每次下的步骤来分析电脑是怎样解析我们下棋的步骤的。下五子棋的步骤:1、第一步,黑子先下2、白子的第一步的最好的位置就是在黑子周围的八个点上3、接着黑子的第二步必然也是根据白子周围的八个点和自己的黑子所在的位置来下。4、如此循环下去。。。。那么对于计算机来说,就是让他找到第一个黑子周围的八个点,并且随机选中一个下白子。…

    2022年6月16日
    186
  • pytest指定用例_测试用例怎么编写

    pytest指定用例_测试用例怎么编写前言测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果.有些同学在写用例的时候,用例写了先后顺序,有先后顺序后,后面还会有新的问题(如:上个用例返回

    2022年8月6日
    6
  • jquery的ajax例子

    jquery的ajax例子Jquery实现Ajax登录验证页面<%@pagecontentType=”text/html;charset=UTF-8″language=”java”%><html><head><title>Title</title><scriptsrc=”${pageContext.request.contextPath}/static/js/jquery-3.6.0.js”></script>

    2022年7月26日
    7
  • javaweb-springboot-2-73

    javaweb-springboot-2-73

    2021年5月18日
    131
  • git学习——设置gitlab、github默认push的用户名和密码

    在使用git的时候,不同的环境下,当你重新安装git,最好在开始的时候就配置一下默认的git的用户名和密码,这样子就可以在每次的push的时候不需要手动的在去输入git的用户名和密码,提高执行的效率。 环境:Windows环境已经安装git,我使用的gitlab(github和这样配一样),gitlab的用户名742981086@qq.com 下面在Windows环境中进行配置过程的演示, 1

    2022年2月25日
    323
  • VIM命令模式与输入模式切换

    VIM命令模式与输入模式切换

    2021年10月11日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号