[UNITY3D] Как сделать загрузку пользовательских аватарок в своей игре? (Android)

  Рет қаралды 12,247

ANDROIDHELPER [UNITY3D and more]

ANDROIDHELPER [UNITY3D and more]

Күн бұрын

Пікірлер: 71
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Извиняюсь если говорил как-то быстро либо ещё что-то. В группе попросили сделать урок на эту тему, и я сразу же без подготовки решил заснять. И как обычно, тайм коды в описании. Мало ли хотите для начала посмотреть финальный результат :D.
@konstantin5971
@konstantin5971 7 жыл бұрын
19:20 - можно было дестроить не каждый объект, а в самом начале все под панель отдельную и уничтожать ее.
@konstantin5971
@konstantin5971 7 жыл бұрын
"я сразу же без подготовки решил заснять" - прощается!)))
@konstantin5971
@konstantin5971 7 жыл бұрын
Кстати, а что на счет выбора файла через проводники которые установлены на устройстве? На пример ES проводник, Total Commander и т.п.?
@ПавелСорокин-ц8я
@ПавелСорокин-ц8я 7 жыл бұрын
Вот мне это тоже бы пригодилось
@aleksandrgaziev4470
@aleksandrgaziev4470 4 жыл бұрын
Отлично, а как на счет загрузки привью? Что б сразу было видно фото? Не хватает этого(((
@Lesh50
@Lesh50 3 жыл бұрын
А можно к примеру вызвать сам проводник (как это делают многие приложения) и выбрать в нём нужный файл?
@SERG__ZV
@SERG__ZV 5 жыл бұрын
Слава тебе добрый человек наконецто у меня скриншоты загружаються которые я сделал в игре уже не один день мучаюсь сколько всяких советов и на англ форумах перерыл.. По очереди всё пробовал но вот тот вариант в котором ты всё вместе собрал как раз работает.. Однозначно лайк. И ещё не большая поправка правильно делаеться ударение на обЯвим а не обявИм... (переменную) слух режет..
@ANDROIDHELPERRU
@ANDROIDHELPERRU 5 жыл бұрын
Когда уже такие учителя английского и русского языка поймут, что смотрят УРОК, который снимается ИМПРОВИЗАЦИЕЙ. Конечно в нём будут присутствовать оговорки, и на них каждый раз не обязательно указывать, т.к я и сам о них знаю.
@pomidor2013
@pomidor2013 5 жыл бұрын
наконец-то; загружаются; объявим; делается... запятые... глаза режет)
@konstantin5971
@konstantin5971 7 жыл бұрын
Спасибо! То что нужно!
@КоляКолючий-д1ж
@КоляКолючий-д1ж 7 жыл бұрын
Очень годный материал
@DirtyBasta
@DirtyBasta 5 жыл бұрын
Спасибо за урок!!!
@МихаилСадыков-щ5л
@МихаилСадыков-щ5л 5 жыл бұрын
Спасибо за урок
@progneo
@progneo 7 жыл бұрын
Можно видео снимать почаще? Очень полезные видео)
@РусланАсташенко
@РусланАсташенко 5 жыл бұрын
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class FileScript : MonoBehaviour { public Text fileNameText; //[HadeInInspector] public int index; // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void OnClick(){ FileManager.instance.SelectAvatar(index); } }
@KtoTytKrichal
@KtoTytKrichal 5 жыл бұрын
🤗🤗🤗, спасибо
@ZingerFM
@ZingerFM 7 жыл бұрын
Привет, отличные уроки, но было бы совсем круто, если бы в начале видео вы показывали результат, то есть то, что вы собираетесь сделать на этом уроке, как это будет выглядеть и как работает.
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Я это и делаю, если у меня урок заготовлен. Вот и заранее написал комментарий о том, что как я снимал этот урок и что можно воспользоваться таймкодами в описании, чтобы посмотреть финальный результат.
@ZingerFM
@ZingerFM 7 жыл бұрын
оооу, да, не заметил сразу, так даже намного удобней, круто, спасибо)
@МихаилСадыков-щ5л
@МихаилСадыков-щ5л 5 жыл бұрын
----------------------------------------------------------------------------- [Scripts из этого видео:] ----------------------------------------------------------------------------- --------------------------------------------------------------------------- [FileScript:] --------------------------------------------------------------------------- --------------------------------------------------------------------------- using UnityEngine; using UnityEngine.UI; public class FileScript: MonoBehaviour { public Text fileNameText; [HideInInspector] public int index; public void OnClick() { AvatarManager.instance.SelectAvatar(index); } } --------------------------------------------------------------------------- --------------------------------------------------------------------------- [AvatarManager:] --------------------------------------------------------------------------- --------------------------------------------------------------------------- using UnityEngine; using UnityEngine.UI; using System.IO; using System.Linq; public class AvatarManager: MonoBehaviour { public GameObject fileListPan, fileContent, filePrefab; public RawImage avatarImg; private DirectoryInfo dirInfo = new DirectoryInfo("/mnt/sdcard"); private FileInfo[] files; private GameObject[] instanceObjs; public static AvatarManager instance; private void Awake() { instance = this; } public void LoadAvatarsList() { fileListPan.SetActive(true); avatarImg.gameObject.SetActive(false); files = new string[] { "*.jpeg", "*.jpg", "*.png" }.SelectMany(ext => dirInfo.GetFiles(ext, SearchOption.AllDirectories)).ToArray(); instanceObjs = new GameObject[files.Length]; for (int i = 0; i < files.Length; i++) { FileScript file = Instantiate(filePrefab, fileContent.transform).GetComponent(); file.fileNameText.text = files[i].Name; file.index = 1; instanceObjs[i] = file.gameObject; } } public void SelectAvatar(int index) { WWW www = new WWW("file://" + files[index].FullName); avatarImg.texture = www.texture; fileListPan.SetActive(false); avatarImg.gameObject.SetActive(true); foreach(GameObject obj in instanceObjs) Destroy(obj); } } --------------------------------------------------------------------------- --------------------------------------------------------------------------- [Поставь Lke] ---------------------------------------------------------------------------
@AntonHlebov
@AntonHlebov 3 жыл бұрын
file.index = i, а не 1
@MelloMix
@MelloMix 2 жыл бұрын
А че делать если путь андроида не работает?
@MelloMix
@MelloMix 2 жыл бұрын
У меня ничего не ищет на андроиде, скрипт правильные и ошибок юнити не дает, в инспекторе тоже всё повесил. А вот если я впишу путь какой нибудь папки в пк, он находит. Без понятия что может быть не так...
@zmuser1462
@zmuser1462 7 жыл бұрын
Кстати, где реклама?? Почему на этом канале ее нет?
@ai-arts-manet
@ai-arts-manet 6 жыл бұрын
Привет! Спасибо за видео, очень полезно! Подскажи пожалуйста как лучше сделать размещение аватарок на хостинге? Есть ли какой-то способ автоматически обрезать картинку под нужный формат - например, пользователь загружает картинку в 50 мегабайт с разрешением 3200*3200. Нужно сконвертить её в маленькую иконку 32*32 и загрузить на хост. Подскажи пожалуйста куда копать?
@CrafterMinecrafter
@CrafterMinecrafter 5 жыл бұрын
Пусть пользователь конвертирует её сам в плей маркете куча приложений.
@zerobox6322
@zerobox6322 2 жыл бұрын
@@CrafterMinecrafter согласен
@krieefeth2258
@krieefeth2258 Жыл бұрын
Не могу найти как поставить Write Permission для Windows проекта ( аесли это вообще возможно), очень надо чтобы у проэкта был доступ к файлам, как это сделать?
@Kroaton77
@Kroaton77 7 жыл бұрын
Добрый день! Очень полезное видео, спасибо. Но нужна помощь вот на какую тему... Проект под андроид. Есть файл с данными уровней игры(трехмерный массив). К примеру level.sg. В него уже внесены данные при разработке. Теперь необходимо разместить этот файл в проект и собрать игру. Далее после запуска игры, файл должен быть прочитан в массив и дальше понятно. Под ПК без проблем, все работает. А вот под Андроид - это кошмар какой то!. Во первых не совсем ясно куда его закинуть. Перепробовал все. Не ясно входит ли он в состав пакета после компиляции. Затем нивкакую не хочет читаться из игры. Явно его не находит. Вот здесь очень нужна ваша помощью. И думаю подобный урок будет полезен для многих. Спасибо.
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
У вас файл создаётся сам в игре или он уже создан при компиляции?
@Kroaton77
@Kroaton77 7 жыл бұрын
Он создан еще при компиляция. Фактически это массив данных уровня. Плеер префабом, как известно не выйдет прочитать. В принципе решено. Но урок сделайте. Очень многие сталкиваются с такой проблемой. string oriPath = System.IO.Path.Combine(Application.streamingAssetsPath, "lvlopt.sg"); // Android only use WWW to read file WWW reader = new WWW(oriPath); while ( ! reader.isDone) {} realPath = Application.persistentDataPath + "/lvlopt.sg"; System.IO.File.WriteAllBytes(realPath, reader.bytes); dbPath = realPath; // } StreamReader sw = new StreamReader(realPath); TEST = System.Convert.ToInt16(sw.ReadLine()); sw.Close(); Я думаю, Вам понятно что здесь написано. Ждем урока - Спасибо.
@Kroaton77
@Kroaton77 7 жыл бұрын
Да и еще. Исходный файл обязательно должен лежать в папке StreamingAssets
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Так это уже давно понятно всем. Мы делали это при создании мультиязычности для игры. Так что нету смысла делать отдельный урок по этому.
@shnik7213
@shnik7213 3 жыл бұрын
18:09 хехех
@viktorkatsava595
@viktorkatsava595 7 жыл бұрын
Здравствуйте. Не могли бы вы сделать урок по ИК?
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
ИК?
@kokses3678
@kokses3678 5 жыл бұрын
@@pkowak IK
@dmitriypermyakov6579
@dmitriypermyakov6579 3 жыл бұрын
Нихера не понятно. Это талант нужен так подать.
@ДанилНедорубан
@ДанилНедорубан 7 жыл бұрын
Привет, сними пожалуйста видео про то как сделать симулятор открытия кейсов на андроид пожалуйста
@ДанилНедорубан
@ДанилНедорубан 7 жыл бұрын
Я знаю что ты уже делал про кейсы видео но запиши ещё уроки по кейсам чтобы можно было открывать инвентарь , продавать оружия и чтобы была денежная система пожалуйста!
@АльбертАвагян-м9т
@АльбертАвагян-м9т 7 жыл бұрын
Откуда вы получаете всю эту информацию, документацию юнити читаете или что ?
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Просто уже натренирован навык поиска информации. Если чего-то не знаем, ищем в интернете и собираем всё воедино.
@MrVoronaExtra
@MrVoronaExtra 4 жыл бұрын
Официальная документация, Stackoverflow, сайты по типу "ответы на вопросы"... Столько способов найти нужную информацию, главное не лениться
@yerbolkabzitov9216
@yerbolkabzitov9216 7 жыл бұрын
Добрый день! Когда ввожу текст, вместо казахских букв вылезает знак вопроса? Пробовал импортировать свой шрифт с казахскими буквами, но все равно вылезает ????
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Это в юнити не поддерживается кодировка казахского языка. Поищите в интернете, может есть ответы.
@ZeroDPI
@ZeroDPI 5 жыл бұрын
А как убрать ползунки?
@alexthebitlock8656
@alexthebitlock8656 6 жыл бұрын
Всем привет, никто не знает как загружать пользовательские модели в игру (после компиляции)?
@РусланАсташенко
@РусланАсташенко 5 жыл бұрын
Кто напечатает, скиньте в комменты !
@luciferofficial7574
@luciferofficial7574 5 жыл бұрын
Выдает ошибку на строке FileScript file = Instantiate (filePrefab, filesContent.transform).GetComponent(); Ошибка в GetComponent юнити выделяет его красным и не билдит
@ANDROIDHELPERRU
@ANDROIDHELPERRU 5 жыл бұрын
Ну так прочитайте что за ошибка
@luciferofficial7574
@luciferofficial7574 5 жыл бұрын
@@ANDROIDHELPERRU Assets/Scripts/ImageManager/ImageManager.cs(29,92): error CS1061: Type `UnityEngine.Object' does not contain a definition for `GetComponent' and no extension method `GetComponent' of type `UnityEngine.Object' could be found (are you missing a using directive or an assembly reference?) . Я не понимаю что надо сделать?
@ANDROIDHELPERRU
@ANDROIDHELPERRU 5 жыл бұрын
@@luciferofficial7574 filePrefab типа GameObject?
@luciferofficial7574
@luciferofficial7574 5 жыл бұрын
ANDROIDHELPER [UNITY3D and more] да
@luciferofficial7574
@luciferofficial7574 5 жыл бұрын
ANDROIDHELPER [UNITY3D and more] версия юнити 5.4.1
@rinky6813
@rinky6813 7 жыл бұрын
А можно это соеденить с другим проектом?
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
В каком смысле?
@rinky6813
@rinky6813 7 жыл бұрын
ANDROIDHELPER [UNITY3D and more] Ну типо ты сделал это.Но у тебя есть игра на другом проекте.То можно этот проект как бы вставить в другой и чтобы эти два проекта были едины
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Что-то вы меня ломаете. В чём суть этих действий? Что вам мешает просто изменить код в своём первом проекте?
@ANDROIDHELPERRU
@ANDROIDHELPERRU 7 жыл бұрын
Если вы хотите какой-то сборник игр делать, то можно использовать разные сцены в одном проекте и всё.
@achies-j3i
@achies-j3i 7 жыл бұрын
Нет, он имел ввиду, что это в свой проект вставить. Такие люди не пытаются учиться, они просто копируют начисто код, не пытаясь разобраться. Но кому я это рассказываю, вы уже привыкли, наверное.
@a-pl7mi
@a-pl7mi 6 ай бұрын
не работает(
@РусланАсташенко
@РусланАсташенко 5 жыл бұрын
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using System.IO; using System.Linq; public class AvatarManager : MonoBehaviour { public GameObject filesListPan, filesContent, filePrefab; public RawImage avatarImg; private DirectoryInfo dirInfo = new DirectoryInfo("ВАШ ПУТЬ"); private FileInfo[] files; private GameObject[] instancedObjs; public static FileManager instance; private void Awake(){ instance = this; } // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void LoadAvatarList(){ filesListPan.SetActive(true); avatarImg.gameObject.SetActive(false); files = new string[] {"*.jpg", "*.png"}.SelectMany(ext => dirInfo.GetFiles(ext, SearchOption.AllDirectories)).ToArray(); instancedObjs = new GameObject[files.Length]; for(int i = 0; i < files.Length; i++){ FileScript file = Instantiate(filePrefab, filesContent.transform).GetComponent(); file.fileNameText.text = files[i].Name; file.index = i; instancedObjs[i] = file.gameObject; } } public void SelectAvatar(int index){ WWW www = new WWW("file://" + files[index].FullName); avatarImg.texture = www.texture; filesListPan.SetActive(false); avatarImg.gameObject.SetActive(true); foreach(GameObject obj in instancedObjs){ Destroy(obj); } } }
[UNITY3D] Как защитить свою игру от взлома? (PC/Mobile)
11:23
ANDROIDHELPER [UNITY3D and more]
Рет қаралды 31 М.
How I wrote online shooter on C++ in a week
25:31
Vectozavr
Рет қаралды 1 МЛН
小路飞和小丑也太帅了#家庭#搞笑 #funny #小丑 #cosplay
00:13
家庭搞笑日记
Рет қаралды 12 МЛН
Cheerleader Transformation That Left Everyone Speechless! #shorts
00:27
Fabiosa Best Lifehacks
Рет қаралды 7 МЛН
Уроки Unity Где брать модели для Unity, импортируем их в проект
7:41
Изучаем мир ИТ / Олег Шпагин / Программирование
Рет қаралды 46 М.
Загрузочный экран и смена сцен в Unity 3D
20:59
[UNITY3D] Как сделать индикатор загрузки? (Loading Progress Bar)
14:41
[UNITY3D] Как сделать эффект вылетания текста в кликере?
19:16