Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 03.02.2017, 14:49   #2416
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

При использовании ScriptableObject для инвентаря столкнулся с проблемой получения нужного ScriptableObject'а через код. Сделал костыль-базу_данных где есть List<>, который заполняю всеми доступными для инвентаря ScriptableObject'ами через редактор и далее в коде уже ищу по имени нужное. Есть ли еще какие-нибудь варианты поиска нужного ScriptableObject через код?
(Offline)
 
Ответить с цитированием
Старый 03.02.2017, 18:36   #2417
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Помести в Resources и делай загрузку из ресурсов по имени.
var inventoryItem Resources.Load<MyScriptableObject>("inventory_items/"+itemName
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
Mimi Neko (06.02.2017), Nex (03.02.2017)
Старый 06.02.2017, 01:59   #2418
Mimi Neko
AnyKey`щик
 
Регистрация: 06.02.2017
Сообщений: 4
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Вопросы от новичка

Сообщение от RegIon Посмотреть сообщение
Корутина WWW неплохо нагружает поток,FPS падает до 15.
Загружаю встречно основным действиям картинку с диска.
До этого грузил по необходимости (т.е нужно сменит - останавливаю обработку, загружаю, обновляю), сейчас решил сделать как-то так:
Работаю с текущим изображением + гружу новое, а потом обновляю, когда нужно. Но это нехило грузит.

Что посоветуете?
Можно попробовать без корутин, в отдельном потоке.
корутина-то в общем потоке работает.
(Offline)
 
Ответить с цитированием
Старый 06.02.2017, 12:53   #2419
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Как из unity3d editor выгружать не нужное? При запуске юнити занимает в памяти 176мб, но после работы в течении дня начинает занимать в памяти уже ~500мб. Так же замечал иногда, что каждую секунду процесс начинает потреблять на пару килобайт больше и через какое то время начинает отжирать довольно много памяти. Никаких юзер скриптов работающих в редакторе у меня нет за исключением атрибута [CreateAssetMenu] в одном из скриптов. Так же никаких левых ассетов из стора и кряков не использую.
(Offline)
 
Ответить с цитированием
Старый 06.02.2017, 14:04   #2420
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Сообщение от Nex Посмотреть сообщение
Как из unity3d editor выгружать не нужное? При запуске юнити занимает в памяти 176мб, но после работы в течении дня начинает занимать в памяти уже ~500мб. Так же замечал иногда, что каждую секунду процесс начинает потреблять на пару килобайт больше и через какое то время начинает отжирать довольно много памяти. Никаких юзер скриптов работающих в редакторе у меня нет за исключением атрибута [CreateAssetMenu] в одном из скриптов. Так же никаких левых ассетов из стора и кряков не использую.
Иногда не выгружаю Unity по 3дня и не замечал такой проблемы. Папка Temp растет конечно катастрофично.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 18.03.2017, 16:26   #2421
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Вопросы от новичка

Как в играх делают частичную паузу допустим при диалогах, всплывающих окнах при которой всё кроме ключевых персонажей, объектов останавливается?
Время ставить в ноль получается не вариант, ибо остановится вся игра. А делать в каждом скрипте проверку на что то типа GameController.IsPause как то бредово.
(Offline)
 
Ответить с цитированием
Старый 18.03.2017, 18:50   #2422
Taugeshtu
scientist.alien
 
Аватар для Taugeshtu
 
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений
(для 2,593 пользователей)
Ответ: Вопросы от новичка

Сообщение от Nex Посмотреть сообщение
Как в играх делают частичную паузу допустим при диалогах, всплывающих окнах при которой всё кроме ключевых персонажей, объектов останавливается?
Время ставить в ноль получается не вариант, ибо остановится вся игра. А делать в каждом скрипте проверку на что то типа GameController.IsPause как то бредово.
Вот именно поэтому имеет смысл не пользоваться стандартными Update() напрямую. Мне довольно удобно работать когда у меня есть выделенный класс, который занимается инстанциированием, другой - запуском игровых процессов, третий - обращением к хранилищам данных.

Если у тебя запуск игровой логики на обсчёт сконцентрирован в одном месте (или хотя бы в Update() класса, от которого всё игровое наследуется, и внутри родительского Update() происходит запуск виртуального DoLogic()) - это легко решается. Оверхед от вкручивания чуть более громоздкой архитектуры окупается
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab.
We LOVE you. We MADE you.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nex (19.03.2017)
Старый 18.03.2017, 22:42   #2423
seaman
Знающий
 
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений
(для 180 пользователей)
Ответ: Вопросы от новичка

Время ставить в ноль получается не вариант, ибо остановится вся игра.
В скриптах, которые не должны останавливаться использовать вмеcто deltatime - Time.unscaledTime
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо seaman за это полезное сообщение:
L-ee-X (25.03.2017), Nex (19.03.2017), Жека (23.03.2017)
Старый 16.05.2017, 17:50   #2424
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Блин, никак не пойму как крутить объект типа LookAt вокруг определенной оси. Типа как вращается LineRenderer. Т.е вокруг оси направления dращается LineRenderer.

Красные - как есть, голубые - как надо.



Это квады, кручу выставляя ось right.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 16.05.2017, 18:28   #2425
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Не особо понял что там нарисовано и как что крутишь, я обычно прибегаю к векторному произведению и восстанавливаю нужной мне осью не правильную.
А в твоем случае - сделай пустышку (парента), поверни внутри нее свой квад как надо и делай лук эт этой пустышке.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 16.05.2017, 18:55   #2426
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вопросы от новичка

Сообщение от pax Посмотреть сообщение
Не особо понял что там нарисовано и как что крутишь, я обычно прибегаю к векторному произведению и восстанавливаю нужной мне осью не правильную.
А в твоем случае - сделай пустышку (парента), поверни внутри нее свой квад как надо и делай лук эт этой пустышке.
Нужно крутить Квад со стримерами (электроразряды) по оси образованной усам подков (от красной к синей) к камере.
Что бы стримеры всегда располагались на этой оси и смотрели на камеру.

Логично, что если 2 подковы будут параллельны взору, то я не увижу эти квады, но этого и не нужно.
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 16.05.2017, 19:35   #2427
Taugeshtu
scientist.alien
 
Аватар для Taugeshtu
 
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений
(для 2,593 пользователей)
Ответ: Вопросы от новичка

Сообщение от RegIon Посмотреть сообщение
Нужно крутить Квад со стримерами (электроразряды) по оси образованной усам подков (от красной к синей) к камере.
Что бы стримеры всегда располагались на этой оси и смотрели на камеру.

Логично, что если 2 подковы будут параллельны взору, то я не увижу эти квады, но этого и не нужно.
Посмотри вот на этот метод.
Вторым параметром можно задать плоскость относительно Look-вектора. Скорее всего в твоём случае будет что-то типа:
var magnetPoseDiff = magnetB.position - magnetA.position;
var cameraDiff = Camera.main.transform.position - magnetA.position;
var rotation = Quaternion.LookRotation( magnetPoseDiff, cameraDiff );
m_quadTransform.rotation = rotation; // обрати внимание, что здесь в глобальных координатах действуем
// опционально может понадобиться довернуть квад на 90 градусов:
m_quadTransform.localRotation *= Quaternion.Euler( Vector3.right *90f );
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab.
We LOVE you. We MADE you.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 12:50.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com