Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
 Аватар для Чеволек Павук
29 / 24 / 5
Регистрация: 25.12.2018
Сообщений: 614

Unity не реагирует на команды в Visual Studio, все ли написал правильно?

25.12.2018, 14:46. Показов 2489. Ответов 4

Студворк — интернет-сервис помощи студентам
Вот что не происходит:
1) В Directional Light я добавил скрипт, и в скрипт нужно еще закинуть Объект Куб, но когда перетаскиваю куб в скрипт, то ничего никуда не закидывается.
2) При нажатии кнопки Space, свет не вкл\выкл.
3) При нажатии кнопки A, объект не удаляется.
4) При нажатии кнопок R и B объект не изменяет свой цвет.
Команды перепроверял кучу раз уже. Подскажите, что я забыл сделать, чтобы команды стали работать.
Обучаюсь C# и работе с unity, вот код:

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
36
37
38
39
40
41
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class Script : MonoBehaviour {
    public GameObject obj;
 
    public Light myLightt;
 
    public void Start() {
        myLightt = GetComponent <Light>();
    }
    public void Update()
    {
        if (Input.GetKeyUp(KeyCode.Space)) {
            myLightt.enabled = !myLightt.enabled;
            }
        if (Input.GetKeyUp(KeyCode.A))
        {
            Destroy(obj);
 
        }
        if (Input.GetKeyUp(KeyCode.R))
        {
            obj.GetComponent<Renderer>().material.color = Color.red;
            else if (Input.GetKeyUp(KeyCode.B))
                obj.GetComponent<Renderer>().material.color = Color.blue;
 
        }
        
 
    }
 
}
 
 
 
 
 
}
Заранее извиняюсь за столь глупую, ошибку, но если ее не преодолеть, не смогу двигаться в изучении дальше.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.12.2018, 14:46
Ответы с готовыми решениями:

Написал код в DevC++ а в Visual Studio не компилируется.Я нуб.
Вот код.Достаточно простенький #include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std ; int main() ...

Написал программу на Visual Studio 2012 вылетает ошибка
Написал программу на Visual Studio 2012 использовал 4 фреймворк и x86 разрядность. Программа работает, но после печати документов на компах...

Написал программу в Visual Studio но выдаёт ошибку на месте ввода символа |
Скриншот Вот сам код и скриншот ошибки #include &lt;iostream&gt; // std::cout #include &lt;algorithm&gt; // std::sort #include...

4
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
25.12.2018, 16:23
Чеволек Павук, мне кажеться ты не смотришь логи ошибок, и вообще,
Цитата Сообщение от Чеволек Павук Посмотреть сообщение
C#
1
2
3
4
5
6
if (Input.GetKeyUp(KeyCode.R))
{
    obj.GetComponent<Renderer>().material.color = Color.red;
    else if (Input.GetKeyUp(KeyCode.B))
    obj.GetComponent<Renderer>().material.color = Color.blue;
}
как это должно работать?

Еще и лишние скобки есть

Если это плохо отредаченый код, то извини, попробуй этот объект инициализировать в старте, obj = GameObject.Find("NAME");
Если и дальше не будет работать, то создай скрипт по новой с другим названиям, и проверь кинул ли ты его куда-то.
0
109 / 81 / 37
Регистрация: 13.01.2016
Сообщений: 409
27.12.2018, 06:41
Цитата Сообщение от Чеволек Павук Посмотреть сообщение
if (Input.GetKeyUp(KeyCode.R))
* * * * {
* * * * * * obj.GetComponent<Renderer>().material.co lor = Color.red;
* * * * * * else if (Input.GetKeyUp(KeyCode.B))
* * * * * * * * obj.GetComponent<Renderer>().material.co lor = Color.blue;
}
Во-первых, да, как было замечено выше, нужно вынести else if и всё, что ему принадлежит за фигурные скобки проверки условия if, то есть:
C#
1
2
3
4
5
if (Input.GetKeyUp(KeyCode.R))
{
    obj.GetComponent<Renderer>().material.color = Color.red;
}else if {(Input.GetKeyUp(KeyCode.B))}
    obj.GetComponent<Renderer>().material.color = Color.blue;
Либо убрать фигурные скобки вообще.
Затем, я бы сделал один большой условный оператор, вместо трёх ваших маленьких.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 public void Update()
    {
        if (Input.GetKeyUp(KeyCode.Space)) {
            myLightt.enabled = !myLightt.enabled;
            }
        else if (Input.GetKeyUp(KeyCode.A))
        {
            Destroy(obj);
 
        }
        else if (Input.GetKeyUp(KeyCode.R))
        {
            obj.GetComponent<Renderer>().material.color = Color.red;
        }
        else if (Input.GetKeyUp(KeyCode.B))
       {
                obj.GetComponent<Renderer>().material.color = Color.blue;
       }
    }
1
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
27.12.2018, 11:22
Цитата Сообщение от DarkPtect Посмотреть сообщение
Затем, я бы сделал один большой условный оператор, вместо трёх ваших маленьких.
а если одновременно нажать две кнопки?
1
109 / 81 / 37
Регистрация: 13.01.2016
Сообщений: 409
27.12.2018, 20:37
Тогда программа выполнит действие, которое привязано к последней кнопке, потому что одновременно нажать невозможно.
Я вас понял, если вы хотите, чтобы пр нажатии двух кнопок свет включался и менялся его цвет, то можно сделать один условный оператор на включение света и внутри него остальные условия для изменения цвета
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.12.2018, 20:37
Помогаю со студенческими работами здесь

Описание методов Unity в Visual Studio C#
Я начинающий в программирование, и мне интересно я просто даже не могу понять как задать этот вопрос. Как, почему или где... Как узнать...

Visual Studio не видит классы Unity
Создаю скрипт C# в Unity. Начинаю редактировать, но Visual Studio не выдает мне никаких подсказок по синтаксису Unity (Texture,Colaider и...

Работа с unity в visual studio 2017
Я абсолютный ноль в Unityи пытаюсь найти какие нибудь статьи для новичков. В частности нужно &quot;Создайте пользовательский слой окон,...

Unity сбрасывает настройки проекта Visual Studio
Запускаю Юнити. После этого сбрасываются настройки .csproj Открываю скрипт. Запускается Visual Studio. Часть изменений сделанных в...

Ошибка при отладке Unity и Visual Studio Code
Сначала запускаю отладку в Visual Studio Code, потом нажимаю воспроизведение в самой Unity в окне vs появляются переменные и прочее что...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru