Unity学习日记17(虚拟轴、光)

虚拟轴

调用方法:

1.复制Unity虚拟轴详细轴的名称

2.填到GetAxis里,带双引号。一般用float接收 

       float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");

        Debug.Log("H:"+h+"V:"+v);

虚拟按键

        if (Input.GetButtonDown("Jump"))
        {
            Debug.Log("jump");
        }

 有些材质不能制作阴影。

可以选择一下几种光

方向光

点光源:MC火把

聚光灯:有点像手电筒

烘焙光、面光:拍证件照的平面射光


烘焙光、面光

:拍证件照的平面射光

1.设置投射平面的属性

2.放置面光

3.生成光照

生成光照(等一小会)

在场景存放位置附近能看到生成的光照贴图,因为烘焙(?),然后是可以节省性能。


摄像机 

拍摄指定对象

Culling Mask(剔除遮罩):摄像机不渲染(不拍摄)那个层(layer)的对象物体。例如我这里不勾选UI,那么层级是UI的对象物体将不会被拍摄。

 


同框出现(仅深度)

解决情况:一个摄像机拍摄不完,但是又想让里面出现的物体同框出现在画面中。

1.出主摄像机外,再添加一个摄像机

2.修改为“仅深度”,并将该摄像机的深度值修改成比主摄像机更高的值。

图中主摄像机深度为-1,副摄像机的深度为0。

 3.效果图

 4.测试:添加第三个摄像机,摄像机深度为1(前两个为-1和0)

 允许添加。

小地图

俯视、显示区域


在场景中看到实时的画面——挂载在摄像机上的render textture

1.创建一个摄像机、一个渲染纹理(render textture)

 2.将渲染纹理挂载到摄像机上,将渲染纹理赋值给场景中的物体

 

当场景中的摄像机发射移动、旋转变换时,渲染纹理也会实时变化,场景中的被复制了渲染纹理的物体的纹理(画面)也会发生变化。

应用:后视镜、小地图 


简易角色控制移动

挂载脚本+添加charactercontroller

移动的代码是c.simplemove。输入方向。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class movement_Component : MonoBehaviour
{
    private CharacterController c;
    // Start is called before the first frame update
    void Start()
    {
        c = GetComponent<CharacterController>();
    }

    // Update is called once per frame
    void Update()
    {
        float horizontal = Input.GetAxis("Horizontal");//横轴
        float vertical = Input.GetAxis("Vertical");//纵轴
        Vector3 dir = new Vector3(horizontal, 0, vertical);//方向
        c.SimpleMove(dir);//移动代码

        Debug.Log(dir);//方向
        Debug.DrawRay(transform.position, dir, Color.red);//射线直观表示方向
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值