Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/120: Рейтинг темы: голосов - 120, средняя оценка - 4.84
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
1

Переход на другую сцену

29.07.2016, 18:41. Показов 23284. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вся моя проблема, что поиском пользоваться не умею. Наверняка ответ где-то ранее уже был по данному вопросу. А суть вопроса вот в чём.
Когда создаешь новую сцену, и используешь готового по умолчанию персонажа "First Person Controller"- из (Standart Assets -> Character Controller), какую надо использовать команду, чтоб при соприкосновении его с предметом был переход в другую сцену?

...
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2016, 18:41
Ответы с готовыми решениями:

Переход на другую сцену
При переходе со сцены на вторую сцену использую обычный скрипт: public GameObject Personage;...

Переход на другую сцену в Unity C#
Здравствуйте , такая идея - хочу сделать так чтобы , когда игрок нажимал на пробел допустим ,...

Переход в другую сцену в Unity
Здравствуйте! я столкнулся с одной проблемой, при создании игры в Unity переход из главной сцены...

Переход на 2 сцену
Подскажите как добавить 2 сцену и осуществить переход на нее работаю с 2Д Добавлено через 12...

17
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
29.07.2016, 19:56 2
https://docs.unity3d.com/Scrip... Scene.html
0
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
29.07.2016, 20:25  [ТС] 3
Cr0c, Я не доволен ответом. И дело даже не в том, что на мною поставленный вопрос я получил ответ в виде ссылки, на мне не понятный сайт, где и слова по Русски нет. А в том, что в ходе долгих часов практики был написан код...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using UnityEngine;
using System.Collections;
 
public class NextLvl : MonoBehaviour
{
    public string nextScene, Personage;
 
    // Use this for initialization
    void Start () 
    {
 
    }
    // Update is called once per frame
    void Update ()
    {
 
    }
    
    void OnCollisionEnter(Collision col)
    {
        //var a = 5;
        //Debug.Log("Test");
        //Debug.Log(collision.gameObject.name);
        if(col.gameObject.name == Personage)
        {
            Application.LoadLevel(nextScene);
        }
    }
}
Проблема в том, что он работает, но не в данном случае. Почему в данном случае он не работает - мне не ведомо... Быть может конкретно к данному элементу управления применим иной способ перехода на другую сцену? Поэтому мой вопрос и имел такую форму.
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
29.07.2016, 20:38 4
Jylik, плохо, что Вас не устраивает ОФИЦИАЛЬНАЯ документация движка.
Дебагом проверили теги, они совпадают?
nextScene содержит имя сцены? По индексу грузить сцену пробовали?
0
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
30.07.2016, 02:25  [ТС] 5
Cr0c, Не думаю, что понимаю о чём речь.... Как пользоваться дебагом? и как по индексу?

Добавлено через 1 час 10 минут
Cr0c, Создал новый проект, посмотреть в чем ошибка. Там тоже нечего не работает.
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
30.07.2016, 07:54 6
Jylik,
C#
1
2
3
Debug.Log("collision name: "+col.name);
Debug.Log("Check name: "+Personage);
Debug.Log("Scene name: "+nextScene);
C#
1
Application.LoadLevel(2);
1
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
30.07.2016, 12:14  [ТС] 7
Cr0c,
Assets/Standard Assets/Scripts/NextLvl.cs(25,50): error CS1061: Type `UnityEngine.Collision' does not contain a definition for `name' and no extension method `name' of type `UnityEngine.Collision' could be found (are you missing a using directive or an assembly reference?)
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
30.07.2016, 13:25 8
Jylik,
C#
1
col.gameObject.name
перепутал немножко. Остальное совпадает?
1
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
30.07.2016, 15:32  [ТС] 9
Cr0c, И что должно произойти? Нечего не происходит (._.')
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
30.07.2016, 15:36 10
Jylik, должно в лог писать при коллизии. Если не пишет - нет коллизии. Я надеюсь, Вы дебаги написали ДО условия?
1
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
30.07.2016, 18:40  [ТС] 11
ну да.... нет колизии (
раз нечего не пишет.
А как её сделать?

Добавлено через 28 секунд
Cr0c, и почему нет? Стандартный персонаж

Добавлено через 6 минут
Cr0c, Добавил персонажу Капсульный коллайдер, эффекта по прежнему нет.

Добавлено через 8 минут
Cr0c, вот
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using UnityEngine;
using System.Collections;
 
public class NextLvl : MonoBehaviour
{
    public string nextScene, Personage;
 
    // Use this for initialization
    void Start () 
    {
 
    }
    // Update is called once per frame
    void Update ()
    {
 
    }
    
    void OnCollisionEnter(Collision col)
    {
        //var a = 5;
        //Debug.Log("Test");
 
        //Debug.Log(collision.gameObject.name);
        
        Debug.Log("collision name: " +col.gameObject.name);
        Debug.Log("Check name: "+Personage);
        Debug.Log("Scene name: "+nextScene);
        if(col.gameObject.name == Personage)
        {
            Application.LoadLevel(nextScene);
 
        }
    }
}
Добавлено через 2 часа 1 минуту
Cr0c, Вот сам попробуй создать проект с нуля и воспользуйся стандартным персонажем.
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
30.07.2016, 19:34 12
А на объекте стоит не триггер, случайно?
1
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
30.07.2016, 22:24  [ТС] 13
Cr0c, неа ( Оба объекта сталкиваются и не прускают пройти на сквозь....
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
30.07.2016, 22:35 14
Лучший ответ Сообщение было отмечено Jylik как решение

Решение

Обратите внимание, что события о столкновениях присылаются только если один из коллайдеров так-же имеет присоединенный rigidbody с выключенным параметром IsKinematic
Это проверьте
1
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
31.07.2016, 02:04  [ТС] 15
Cr0c, а вот присоединив rigidbody всё заработало.....

Добавлено через 9 минут
Cr0c, Заработало, но все равно, надо раз 5-10 подойти к предмету, прежде он перекинет в 2 сцену.....

Добавлено через 1 час 6 минут
Cr0c, Все, спасибо. Вроде перестало тупить. А как убрать просмотр сквозь стены?!
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
31.07.2016, 07:43 16
Jylik, збс описание проблемы.
0
109 / 50 / 14
Регистрация: 06.03.2012
Сообщений: 810
31.07.2016, 15:17  [ТС] 17
Cr0c, ну вот когда персонажем идешь вдоль стены - то видно, что находится за ней - (небо, стены за ней, и прочее открывается взору.... ) А я лабиринт делаю (для викторины), в котором есть секретные проходы...
0
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
31.07.2016, 16:02 18
Jylik, это камера в стенку не упирается. Проверяйте коллизию камеру при перемещении и сдвигайте от стенки.
0
31.07.2016, 16:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.07.2016, 16:02
Помогаю со студенческими работами здесь

Переход на сцену через Dropdown
Здравствуйте, как сделать переход на нужную сцену через элемент dropdown, привязать элемент...

Не происходит переход на следующую сцену
Написал скрипт на C#, по идее ничего сложного, но почему-то не работает. using System.Collections;...

C# - Переход на следующую сцену по нажатию на кнопку
Решил сделать игрулю простую, ничем не примечательную, но столкнулся с проблемой. По нажатию на...

Переменная в другую сцену(и спрайт)
Здравствуйте. Есть 2 сцены. 1-ая с кнопками где выбираешь level, и вторая - игровая сцена. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru