Jump to content

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

Link to post
Share on other sites
 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Powered by Invision Community
Поддержка Invision Community в России

×
  • Create New...