оружия, армора и всяких предметов я так понимаю мне нужно использовать SO?
Если данные там будут статические то да
данные будут статические
Тогда используйте со, все верно
правда еще планирую сделать обвесы для оружия чтобы статы менялись
Тоже можно использовать со
Из со выгружаете нужное оружие и его текущую настройку из префсов например, по этой настройке берёте обвесы и ставите куда нужно
Я тебе сейчас покажу как в террарии реализованы предметы, удивишься) они полностью все в кеше хранятся
спасибо, может есть какой то видос чтобы лучше понять?
Не видел таких видосов, не подскажу. Могу расписать примерный алгоритм: есть со с оружиями который хранит данные типа WeaponExemplar состоящий из строки ключа и класса оружия. Дальше есть сервис префсов который хранит в себе лист с json экземпляра WeaponSettings у которого тоже есть ключи. Берёте достаёте из со оружие, по ключу ищете в листе из префсов нужную настройку и дальше логику по которой достаются обвесы, бафы, вфиксы, звуки и тд. Все что нужно.
Нет. Лучше префабы, однозначно. Префаб можно инстансить и легко создавать экземпляры предметов. Так же можно делать префаб-варианты. Короче я не знаю откуда такая распиаренность использовать SO повсюду. Реально их почти не использую. Ты подумай сам: предмет это меш/текстура(визуал), данные, логика и очевидно что их будет множество. Это всё легко сделать одним префабом. Данные могут изменятся, вроде износа предмета и прочего. С SO это всё не прокатит.
только чтобы предмет цифровые данные по себе подтягивал с таблицы или из скрипта, а то заколебешься префабы прокликивать, когда захочешь все предметы сделать на 1 монету дороже
SO в общем бесполезная ерунда в моем случае?
Тебя ни что не избавит от таких кликов полностью, привыкай.
Ты знаком с паттерном mvvm? Знаешь как отделить модель от вью? Ты авторитетно заявляешь то в чем по всей видимости имеешь поверхностные знания.
Его избавит от таких кликов архитектура.
Лучше их не использовать. Представь что их нет) Ничего не потеряешь, только ошибок меньше сделаешь. Наверняка у них есть своё применение, но я пока этого не видел реально.
ну я все данные хранил в скрипте (если бы знал, что будет так много предметов, то вынес бы в xml таблицу, где удобно сравнивать характеристики и редачить в экселе)
Например?
Если тебе очень удобно работать в таблице, то окей, делай.
Например фабрики, которые будут собирать ему нужный экземпляр объекта по модели хранящейся в so.
Ты можешь всё тоже самое сделать представив что теперь роль SO выполняет префаб. Ты можешь создать отдельно префаб вью и префаб с твоими данными, потом инстансить и то и другое и менять вью в рантайме. Я правильно понял твой вопрос?
У тебя как-то кони с людьми смешались. Префаб это просто визуал, SO это про данные
Префаб это ассет для графических объектов. Хранить в нем данные не оптимальное решение.
Префаб может выполнять то что ты хочешь. Хочешь визуал - будет визуал. Хочешь данные - храни на нём скрипт с данными. Почему нет?
Не оптимальное по какой причине?
Соревнования и расширяемости проекта
ты добавил новую характеристику предмету, у тебя 500 префабов предметов, не весело это все прокликивать. Табличкой попроще заполнить.
Так мне-то в целом все равно, можно данные хранить где угодно, можно и вилкой суп черпать. Другое дело, что у инструментов есть назначение, и у SO назначение весьма явное. Здесь разбирается похожий вопрос, я не со всеми пунктами согласен, но в целом должно быть понятно https://answers.unity.com/questions/595559/are-there-any-reasons-why-i-should-use-a-scriptabl.html
Я не про таблицы спрашивал, ты немного перепутал возможно.
Обсуждают сегодня