Как отключить отрисовку объекта в Unity (mesh renderer) при его повороте на 90 градусов?

Что мне делать, я много вариантов перепробовал, но не выходит. Можете пожалуйста написать ответ через условие?


Ответы (2 шт):

Автор решения: Varan 941

Что именно не выходит? Отключить отрисовку или проверить поворот на 90 градусов. Оставляй пример своего кода. Вот как я сделал:

[SerializeField] MeshRenderer meshRenderer;
[SerializeField] Vector3 rotation;


private void FixedUpdate()
{
    CheckRotation();
}

private void CheckRotation()
{
    rotation = transform.rotation.eulerAngles;
    bool check = rotation.x % 90 != 0; // проверяем угол по оси х, смотрим есть ли остаток от деления на 90 
    SetMeshRend(check);
}

private void SetMeshRend(bool toggle)
{            
    meshRenderer.enabled = toggle;       
}
→ Ссылка
Автор решения: Nikita Nikitin

Сделал вот так:

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

public class LALALA : MonoBehaviour
{
    public Vector3 Dirrection;
    public Vector3 rotation;
    public float speed;
    [SerializeField] MeshRenderer meshRenderer;


    void Update()
    {
        transform.Rotate(Dirrection * Time.deltaTime * speed);

        rotation = transform.rotation.eulerAngles;
        if (rotation.x >= 90) {
            meshRenderer.enabled = false;
        }
        if (rotation.x <= 90) {
            meshRenderer.enabled = true;
        }

    }
}
→ Ссылка