Jump to content
Sign in to follow this  
Константин Орлов

Unity: Робот пылесос RobotVacuumCleaner Asset

Recommended Posts

Простой скрипт с префабом, который создает как бы робота пылесоса. Ничего особо не делает, просто ходит по комнате и при встрече с коллайдером меняет направление движения. Для установки просто вынесите префаб на сцену, и выставьте положение над полом (по наклонным поверхностям не ездит). Баг - иногда может пройти сквозь стены.

 

Скрипт. Можно самому сделать на основе скрипта объект, а может скачать ассет.

using UnityEngine;
using System.Collections;

/// <summary>
/// Робот пылесос, тупо ходит по комнате и отскакивает от препятствий
/// </summary>
public class RobotVacuumCleaner : MonoBehaviour
{
    /// <summary>
    /// скорость передвижения
    /// </summary>
    public float speed = 3.0f;
    /// <summary>
    /// расстояние до препятствия, когда робот повернется
    /// </summary>
    public float obstacleRange = 5.0f;

    void Update()
    {
        //передвигает робота вперед
        transform.Translate(0, 0, speed * Time.deltaTime);
        //пускаем луч, чтобы определить препятствие впереди
        Ray ray = new Ray(transform.position, transform.forward);
        RaycastHit hit;
        //если впереди по определенной окружности луча что-то есть
        if (Physics.SphereCast(ray, 0.75f, out hit))
        {
            //если дистанция ниже минимальной допустимой
            if (hit.distance < obstacleRange)
            {
                //выбираем случайно на какой градус повернуться
                float angle = Random.Range(-110, 110);
                //поворачиваемся
                transform.Rotate(0, angle, 0);
            }
        }
    }

}

 

RobotVacuumCleaner Робот пылесос.unitypackage

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×