Unity_如何实现游戏中角色多段跳的效果(射线实现)<9/10/2017>
完全原创!!!
原理:很简单,从对象中心做一条垂直的射线,每当对象落地,计数器归零,每次按键跳跃计数器++.只有计数器小于N段跳的时候才能够进行Space空格跳跃.
该图射线做了可视化,故能在场景中观察轨迹来进行判断和实现
一个脚本挂小球身上即可:(请忽略方向,因为偷懒我并没有对准对应的轴)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
float speed = 0.1f;
float jumpNumber = 0;
float temp = 0;
void Update()
{
//从自身发一条射线垂直向下,然后给地面和方块设置Layer,如果碰到地面,该射线返回true直接将计数器归零
Debug.DrawLine(transform.position, new Vector3(transform.position.x, transform.position.y - 0.5f, transform.position.z), Color.yellow, 10);
if (
Physics.Raycast