Найти в Дзене
Мусин Михаил

Ноябрь 2021. Unity C#. Мусин Михаил

Перенос с другого сайта. Пытался в своих видео по справочнику повторять структуру справочника, но там часто повторяется код в разных категориях, а некоторые пункты не подходят некоторым категориям. Я начинаю путаться в них. Не хочется по несколько раз записывать видео об одном и том же.
Но в описаниях к своим видео я добавляю ссылки на конкретные скрипты и пункты в своей таблице.
Сейчас буду менять структуру и давать общие ссылки.
Для этого нужно поменять описание всех своих видео. Так как часть ссылок перестанет работать.
Для примера Find
https://docs.unity3d.com/ScriptReference/Transform...
https://docs.unity3d.com/ScriptReference/GameObjec...
GetComponent
https://docs.unity3d.com/ScriptReference/GameObjec...
https://docs.unity3d.com/ScriptReference/Component...
И это только начальные категории. Бывают и по 3 повторения. Может будет больше.
---
Научился определять границы коллайдера, чтобы научить ботов обходить объекты по кратчайшему пути. Слева или справа.
Могу эти точки ставить и

Перенос с другого сайта.

Пытался в своих видео по справочнику повторять структуру справочника, но там часто повторяется код в разных категориях, а некоторые пункты не подходят некоторым категориям. Я начинаю путаться в них. Не хочется по несколько раз записывать видео об одном и том же.
Но в описаниях к своим видео я добавляю ссылки на конкретные скрипты и пункты в своей таблице.
Сейчас буду менять структуру и давать общие ссылки.
Для этого нужно поменять описание всех своих видео. Так как часть ссылок перестанет работать.
Для примера Find
https://docs.unity3d.com/ScriptReference/Transform...
https://docs.unity3d.com/ScriptReference/GameObjec...
GetComponent
https://docs.unity3d.com/ScriptReference/GameObjec...
https://docs.unity3d.com/ScriptReference/Component...
И это только начальные категории. Бывают и по 3 повторения. Может будет больше.
---
Научился определять границы коллайдера, чтобы научить ботов обходить объекты по кратчайшему пути. Слева или справа.
Могу эти точки ставить и в углы.
Но понял, что препятствие может состоять из нескольких объектов с разными коллайдерами.
Теперь нужно придумывать другое решение.
Если просто всё простреливать лучами, это не помогает понять какая сторона короче. Или этих лучей будет очень много. И стены могу быть кривыми.
---
Но ради интереса, нужно доработать вариант с одним коллайдером.
---
Логику придумал. Считаю каких точек где меньше и поворачиваюсь в ту сторону.
Но не могу подобрать нужный код. Результаты выполнения методов отличается от задуманного.
Продолжу позже.

---
Научил программу определять с какой стороны находятся точки. С помощью метода SignedAngle, для определения угла.
Теперь буду определять в какую сторону, если с обоих сторон одинаковое количество точек.
Скорей всего буду высчитывать расстояние до точек.
---
Так и сделал. Суммирую расстояние до дочек справа и слева.
Определяет, но не совсем верно. Нужно думать ещё.
---
Это я в коде ошибся. Нормально работает для одного коллайдера.
Нужно будет для этого проекта отдельный репозиторий создать.
---
В теории, этот метод должен сработать с препятствием из нескольких объектов, но в определённых комбинациях.
Скорей всего будет массив точек собранных с нескольких коллайдеров. Нужно тестировать.
Но это в следующий раз.

-2

---
Хорошо жить в современном мире. Когда в интернете можно найти любую информацию.
Даже не техническую.
К примеру когда рассказывают о психологических проблемах людей.
О синдроме самозванца и прочих проблемах с самооценкой.
Предупреждён - значит вооружён.
Я себя так уверенно чувствую в последнее время. Я никогда не думаю, что я делаю что-то не так. Я просто делаю.
Мне может что-то не нравиться в окружении, я могу понимать, что я чего-то не знаю.
Но я никогда не обесцениваю свои усилия, свои результаты. Я могу понимать, что они незначительные в какой то степени, но это в любом случае лучше чем ничего.
Я часто пробую реализовать новую идею, пробую куча вариантов, но ничего не получается.
Зато теперь я знаю, какие варианты лучше не использовать в определённых задачах. Но эти знания пригодятся в других.
---
Хочу научится писать музыку. Сейчас начал изучать программу SunVox.
И не мог подобрать ноту для мелодии.
Вроде понимаю где эта нота должна находится. Но не попадаю в неё.
Стал сомневаться в своём слухе.
Запустил Adobe Audition, насвистел мелодию. Открыл режим где видно диапазоны.
Убелялся, что на слух я ноту определил примерно верно.
Ещё раз перебрал все ноты и подобрал нужную.
---
Сейчас просвистел произвольную мелодию. И довольно быстро по этой схеме подобрал.

-3
-4

---
Решил свой справочник загрузить на Яндекс Дзен.
Как же там всё плохо...
В описание очень мало места. Теги нельзя вводить пачкой, только по одному и выбирать доступные.
И всё. Название, описание и теги. Тегов всего 5 штук.
https://zen.yandex.ru/id/5ef673cabe099352eca7ee8e?...
---
Я научился парсить интернет страницы через Unity.
Только нужно делать настройки под каждый тип страницы.
Сейчас попробовал получить данные по видео с яндекс дзена

-5
-6

---
Объединил объекты в чанки.
Пришлось увеличить количество спрайтов для лучшей детализации.
При этом фпс падает. Буду включать чанки только в прямой видимости дронов.

-7
-8

---
Примерно так получается. Пока просто проверка расстояния от нулевых координат.
При этом я могу камеру отдалить подальше, и фпс не упадёт.
Карта не откроется, пока дроны не доберутся до той части. А они не доберутся, не уничтожив всё на своём пути, а это уменьшает количество спрайтов на сцене.

-9
-10

---
Ненавижу Quaternion...
Как в голове визуализировать что-то, у чего есть 4 координаты для построения угла.
Я точно больше часа пытался понять что означает результат данного метода.
https://docs.unity3d.com/ScriptReference/Quaternio...
Как всегда описание в справочнике не помогает ничего понять. И скорей всего неверно описывает метод.
В итоге я разобрался, но визуализировать на видео этот угол получилось с трудом.
---
В тоже время Quaternion очень часто используется и очень полезен.
Я даже рад, что дошёл до этой темы и мне теперь придётся всё это изучать. Чтобы в дальнейшем было легче работать.
---
Очередной мини проект.
Если не можешь найти нужную программу, сделай её сам.
Сейчас делаю аудиоплеер для смартфона. Всегда сложно найти нужное. Или куча наворотов, или реклама или чего-то не хватает.
На данный момент реализовал считывание аудио файлов из нужной папки и запуск музыки при нажатию на композицию.
Делаю плеер, чтобы слушать аудиокниги.
Следующий этап, сделать окно с текущей композицией. Ползунки для громкости и выбора места воспроизведения. Перемотка вперёд, назад. Переключение композиций стрелками и автоматом после завершения.
---
На данный момент это работает только на компьютере.
Нужно научится открывать проводник из приложения, чтобы указать путь к папке.
---
Как вариант, сделать подобное считывание и строить свой проводник.
---
Убрал EditorUtility.OpenFilePanel()
Добавил для начального пути DriveInfo.GetDrives()
Ошибка исчезла.
---
Начальный путь не подходит для андроида. Открываются системные папки. Из которых до нужных файлов не добраться.
---
Надоело искать нужный метод.
Добавил путь вручную
"/storage/emulated/0/"
файлы нашёл, плейлист сформировал, звука нет...
---
UnityWebRequest говорит ConnectionError
Информацию о дальнейшем шаге я найти не могу...
---
Нужно в начало пути добавить "file://"
При этом мой телефон не справляется и иногда вылетает...
Но звук есть.

-11
-12
-13

---
Добавил отображение линии проигрывания.
Зелёный круг показывает текущее значение.
Синим кругом можно устанавливать нужно значение.
Осталось добавить перемотку и переключение треков.
Большие файлы, такие как аудиокнига загружается долго.
---
И не решена проблема вылета приложения, при открытие большого файла.
---
Нужно научится читать сырые данные из файлов и грузить этот массив в аудиоклип
Это будет быстрее и без сбоев.

-14

---
Продолжаю ненавидеть Quaternion...
Этот метод высчитывает поворот между векторами.
Но я не могу это визуализировать.
Пытаюсь применить этот поворот на объект, но не понимаю где нулевые координаты. Где нулевой поворот.
Куча вариантов перепробовал. с двумя осями нормально, но добавляю поворот по третьей оси и голова перестаёт понимать происходящее.
---
Или для визуализации нужно писать две страницы кода.
Писать отдельный метод, который будет расставлять дополнительный объекты на промежуточных результатах.

-15
-16

---
Вроде сделал визуализацию.
Но всё ровно не то что я хочу. Не хватает знаний или желания, придумывать что-то ещё.

-17
-18