• 【初阶】unity3d官方案例_太空射击SpacingShooter 学习笔记 年后整理


     

    这个案例的各版本教程

    【视频】官方版本 英语中字版 https://www.bilibili.com/video/av6125976/index_11.html#page=1
    【视频】58开发网 中文版 http://www.58kaifa.com/course/27/learn#lesson/557
    【文字】简书 中文版 https://www.jianshu.com/p/8cc3a2109d3b#

    1.导入AssetStore商店里 SpacingShooter的全部资源

    2.放背景plane 放飞船 放...

    3.不受场景里灯光影响的材质球:

     

    4.逻辑:任何一个3d object,被创建的基本组件:


    总结:

    组件1:Transform


    组件2:Mesh Filter    (Unity3d mesh Filter和mesh Render双生双克  https://blog.csdn.net/avi9111/article/details/52151385)


    组件3:collider   

    在目前版本里(2017.3.0),上述这些3d object都自带collider组件。

     

    关于这个collider的:注意:collider的耗资源情况,与它所代表的体的面数无关


    1).报错

      解决:不要用Mesh collider,或者把它的convex打开 


    2)


     组件4:Mesh Renderer 

     Mesh Renderer不是材质球!    不是material  !!!

    逻辑是:

    a.两个独立物体: Quad,  Material       

    b.一个组件:Mesh Renderer 

    最后:组件,连接两个独立物体


    the renderer is only able to use the texture,it is a part of material

    Mesh Renderer组件只能使用texture,texture是材质球的一部分。


    • “直接将texture拖拽的模型上”这个操作,unity都做了什么:

    a.检测texture是否有相关联的材质球,如果没有,自动创建材质球。(并且自动添加到materials文件夹中)

    b.添加到被拖拽模型的Mesh Renderer中 。       


     

     5.让飞船动起来:

    脚本注意1:脚本名 = 类名 首字母必须大写
    Rigidbody rig;
    void FixedUpdate()
    {
        float moveHorizontal = Input.GetAxis("Horizontal");
        float moveVertical = Input.GetAxis("Vertical");
        rig = GetComponent<Rigidbody>(); 
    }

     

    fixed update函数:

    有rigidbody这个组件,我们才能使用unity内置的物理引擎。

  • 相关阅读:
    Linux 下安装配置 JDK7
    win7下virtualbox装linux共享win7文件问题(已测试可用)
    Linix常用命令
    JAVA命令大全
    virtualbox 不能为虚拟电脑打开一个新任务/VT-x features locked or unavailable in MSR.
    VirtualBox下安装rhel5.5 linux系统
    redhat RHEL 5.5 下载地址
    ios开发@selector的函数如何传参数/如何传递多个参数
    U盘10分钟安装linux系统
    史上最浅显易懂的Git分布式版本控制系统教程
  • 原文地址:https://www.cnblogs.com/lizitang/p/8522346.html
Copyright © 2020-2023  润新知