Суббота, 27 Апреля 2024, 06:31

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Записи участника » ReWire [6]
Результаты поиска
ReWireДата: Пятница, 11 Августа 2017, 18:10 | Сообщение # 1 | Тема: Почему я получаю NullReferenceException???
был не раз
Сейчас нет на сайте
Ничего не понимаю, вроде делаю всё правильно, но получаю NullReferenceException. Откуда?

Код

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

public class Testing: MonoBehaviour {

    public string[] demoArray = {"EMPTY","EMPTY","EMPTY","EMPTY","EMPTY"};
    public List<string[]> data;

    // Use this for initialization
    void Start () {
  data.Add (demoArray);
    }

}


NullReferenceException: Object reference not set to an instance of an object
Testing.Start () (at Assets/Scripts/Testing.cs:12)

Ватафак, куда копать?


Сообщение отредактировал ReWire - Пятница, 11 Августа 2017, 18:11
ReWireДата: Воскресенье, 09 Июля 2017, 12:08 | Сообщение # 2 | Тема: Как правильно заполнить текстовый массив из скрипта?
был не раз
Сейчас нет на сайте
Чёт не пойму, как из кода заполнить уже существующий текстовый массив. Пробую через array = {"1слово", "2слово","3слово"};
Но юнити ругается:


Вот сам код:
Код

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

public class WordsArray : MonoBehaviour {

    public class levels
    {
  public static string targetword;
  public static string[] words  = {"1","2","3","4","5"};

  void CurrentLevel(int level){
   switch (level) {
   case 1:
    targetword = "first";
    words = { "aza", "azaza", "za", "za", "azaz" };
    break;
   case 2:
    targetword = "second";
    words = { "az", "zaza", "azaza", "wtf", "azaza" };
    break;
   }

  }
    
    }


Сам массив создан изначально и в зависимости от величины, передаваемой в функцию CurrentLevel, должен заполняться разными словами. Но как их заполнить я что-то не догоняю. Через ={srtings}; не получается(
ReWireДата: Пятница, 10 Марта 2017, 23:48 | Сообщение # 3 | Тема: Освещение - отличие baked от realtime
был не раз
Сейчас нет на сайте
Цитата Wite ()
Да и правда. Тут поинт лайты виноваты


Не думаю, что проблема в них. Если отключить все поинты, и запечь только дайрекшенал, то результат тот же - темно и не соответствует рилтайму.

Добавлено (10 марта 2017, 23:48)
---------------------------------------------
Пошерстил англоязычные сайты. Это оказалось багом юнити. Неправильно отображаются лайтмапы, если платформа проекта Android. Исправлено в версии Unity 5.5.0p1

Подробнее тут:
http://answers.unity3d.com/questions/1280013/unity-550-android-lightmap-problem.html
https://forum.unity3d.com/threads/unity-5-1-3-completely-different-illumination-using-lightmapping.350577/

Если у кого-то такая же проблема - обновляйтесь до последней 5.5.2. Проверял сегодня в ней - всё норм запеклось.

ReWireДата: Среда, 08 Марта 2017, 22:26 | Сообщение # 4 | Тема: Освещение - отличие baked от realtime
был не раз
Сейчас нет на сайте
Цитата
Предупреждение ниже Derectional видишь.
Ставь not derectional. Попробуй непомню уже была чехорда с мобильными шейдерами.


В том предупреждении написано, что они автоматически задаунгрейдятся до non-directional при запекании. Но я таки ставил non-directional - результат тот же самый.

Вся неподвижная геометрия в static, generate lightmap uv's в импортере моделей галка выставлена, в источниках света render mode выставлено в baked. Все условия адекватного запекания света соблюдены. У тебя платформа PC,Mac,Linux у проекта, у меня проект на платформу Android. Версия юнити 5.5.0f3 64-bit.
ReWireДата: Среда, 08 Марта 2017, 18:37 | Сообщение # 5 | Тема: Освещение - отличие baked от realtime
был не раз
Сейчас нет на сайте
Цитата
Какаие шейдеры вы используете ? (Очень похоже что мобильные)


Верно, стандартные Mobile/Diffuse (игра на андроид)

Цитата
Что у вас в настройках окна lighting ?


ReWireДата: Среда, 08 Марта 2017, 17:26 | Сообщение # 6 | Тема: Освещение - отличие baked от realtime
был не раз
Сейчас нет на сайте
Есть сцена, с несколькими источниками света с режимом рендеринга realtime. В этом режиме сцена выглядит красиво и хорошо. Но если попытаться запечь свет, т.е. не меняя никаких параметров света, просто переключить их рендеринг в режим baked - сцена кардинально меняется. Почему я получаю совсем другое освещение, а не то же самое, только не рендерящееся каждый кадр, а уже запеченное в лайтмапу? Почему такая кардинальная разница в освещении?
P.S. На всех моделях в сцене галки Generate Lightmap UV's стоят.

Realtime:


Baked:


В чём проблема?

Добавлено (08 марта 2017, 17:26)
---------------------------------------------
При этом, при запекании освещения, лайт пробы освещаются корректно, соответствуя освещению при realtime. Конечно, косяк яркости можно уравновесить простым повышением интенсивности в свойствах ИС, но тогда начинают пересвечиваться лайт пробы, которые используются для динамических объектов в сцене. В итоге получается поднять общую яркость геометрии до уровня освещения при realtime, но все динамические объекты начинают сиять, как новогодняя ёлка.
Что не так? Почему освещение при baked не соответствует realtime?

Форум игроделов » Записи участника » ReWire [6]
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг