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

Декабрь 2021. Январь 2022. Unity C#. Мусин Михаил

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

Мне вчера ключик подарили от игры Candy Maker https://store.steampowered.com/app/1810840/Candy_M...
И за такую поделку люди просят деньги и просят блогеров их прорекламировать...
Интерфейсы глюча
т, двери глючат. Настройки игры тоже глючат. Всё глючит.
Обучение ограничивается полотнами текста на экране.
Ужас...
---
Что-то я даже на теме справочника "перегораю". Минутные видео, а мне не охота их делать...
Скорей всего это из-за отсутствия понимания что я делаю.
Материала много, большинство я использовать в работе не буду, а тратить время на изучение этих материалов мне неохота.
Сейчас хотел начать писать видео о списках. В справочнике Unity этого нет.
Нужно открывать в справочнике Мicrosoft, но этот список меня демотивирует.
https://docs.microsoft.com/en-us/dotnet/api/system...
Скорей всего буду создавать подобные видео, но на темы которые попадаются мне на практике.
И точно не буду стараться делать одно видео в день.
---
Хотя может пройдёт время и желание вновь появится.
Сейчас начал ходить в спорт зал. Для моего организма это стресс.
Скорей всего это сказывается.
---
Ещё буду пробовать делать маленькие проекты специально для канала. Только нужно придумывать идеи или найти где эти идеи можно найти.
---
Сразу легче стало. :)
---
Ради интереса перенёс данные из справочника в таблицу. Class List
Получилось 220 строк...
Там есть однотипные, которые объединяться в одно видео, но всё равно много...
---
Начал готовить материал для списков List
Решил сделать одно видео обо всём. 220 строк с темами. Готово 12. Уже 260 строк кода.

---
Всего готово 29 тем.
Вроде работа не сложная, но довольно однообразная и в какие-то моменты голова престаёт соображать.
Но даже на этом этапе нашёл методы, которые мне были неизвестны. И которые будут мне полезны в будущем.
И правильно, что я решил делать одно видео, а не куча мелких.
Раньше были моменты, что я выложил видео с первой темой, а на момент записи последней темы понимал, что первые видео можно было записать лучше и более подробно, но я просто этого не знал. А перезаписывать мне лень. И не совсем понимал, что делать со старым видео. Удалять его или давать ссылку на новую версию.
Сейчас корректирую все свои материалы в процеcсе изучения.

-2

---
Готово 54 темы.
На данный момент я не понял логику только в одной MemberwiseClone. Но там унаследование от object. Реального применения я не нашёл и не смог никак реализовать
В дальнейшем пойдут подобные темы.
GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>)
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)
SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)
Которые тут даже в строчку не влазят. И мне в этом нужно будет разбираться

-3

---
Я сейчас случайно заметил, что в документации microsoft все примеры можно запустить на сайте и посмотреть на результаты.
Также можно прямо там отредактировать код, чтобы протестировать.

-4

---
Видел на YouTube несколько видео с передвижением пауков сделанных в Unity.
Попробовал сделать своего. Пока за место ног просто линии.
Двигаются ноги скольжением от точки к точке. Нет эффекта перешагивания. Позже добавлю.
И ноги на текущий момент не пропорциональные. Но когда появятся сочленения, то будет лучше.

-5

---
Добавил для паука одно соединение в ногах. И добавил ещё 2 лапы, чтобы было 8.
---
Добавил ещё одно соединение.
Пока не пропорционально. Я тут не высчитываю длину ног.
---
И несколько глаз

-6

---
Осталось сделать эффект перешагивания
И добавить отслеживания длины лап, чтобы части лапы не меняли свою длину.
После немного с анатомией повозиться.
Записал видео текущие версии.
https://drive.google.com/file/d/1ZBO6svgkPjuh-qrEv... ---
Добавил ещё видео, где паук меняет траекторию движения.
https://drive.google.com/file/d/1AaR5iruo0D9uZz18x...

-7

---
Нужно было в школе лучше учиться. Хотя без практики знания всё равно бы забылись.
Пытался сделать так, чтобы длина ног у паука была одинаковая. Но не мог найти коэффициент для расчётов. Даже написал код который перебирает значения для поиска. Но не помогло.
В итоге нашёл формулу которая ищет биссектрису треугольника. И теперь две стороны всегда одного размера. Если не учитывать небольшую погрешность.
Дальше буду пробовать делать тоже самое, но чтобы эти отрезки были с разной длинной.
---
Как я понимаю, мне нужно искать длину медианы.
---
Хотя нет. Мне же нужно не из середины отрезка вести линию к углу.
Сейчас я ищу перпендикуляр к стороне. А если ввести линию из середины отрезка, к углу где стороны разной длинны, то придётся высчитывать угол поворота до этого угла.
Но в принципе это тоже можно организовать.
---
Буду изучать геометрию...
---
Формула высоты треугольника тоже подходит, но только если треугольник равнобедренный.
Иначе они могут двигаться только в определённом диапазоне. И пока не получается сохранить у них неизменную длину.
Нужно менять принцип расчётов.
Или добавлять промежуточные треугольники к текущим. Но они все будут равнобедренными. Но я могу менять длину этих сторон.
---
Я опять пытаюсь сделать универсальную систему...
Хотя я могу сделать фиксированное количество сегментов ног и настроить каждый сегмент.
Это будет быстрее.
Но сейчас я учусь. Если я сделаю то, что у меня получается, то и эффекта от этого не будет.
Поэтому продолжу делать универсальную систему. :)

-8
-9

---
Закончил темы с интерфейсами списка. И ничего не понял.
Часть таких же методов как и напрямую со списками.
Придётся в видео повторять те же самые слова, только с другими типами IList, IEnumerable, ICollection ...
Всего готов 71 тема.
Сейчас начнутся темы, в которых мне придётся "поломать" голову.

-10
-11

---
3 в ряд в 3D.

2022-01-22 21-12-31.mov

Хочу ещё на основе этого находить кратчайший путь от одной сферы до другой.
---
Добавил бесконечную генерацию сфер. Но пока без управления камерой.
И создал архив с "игрой"

Line3D1.zip
-12
-13

---
Готов первый версия поиска пути.
На данный момент находится не оптимальный путь.
А иногда вообще ничего не находит.
Нужно алгоритмы доработать.
---
Получается это самый первый путь который получилось построить.
Сейчас нужно как то создавать разные пути и сравнивать их.

-14

---
Сейчас ищется самый короткий путь. Но нужно ограничивать количество вариантов.
Сейчас путь в 14 сфер и 200000 вариантов пути.
Можно увеличить путь, но каждый новый шаг увеличивает количество вариантов в 2 раза, а может и больше мне лень ждать расчётов.
Буду оптимизировать алгоритм.
---
Есть вероятность, что оптимизировать не получиться.
У меня растёт "Дерево" от начальной точки по всем сферам.
И чем дальше точки друг от друга, тем больше вариантов.
Если я сюда добавлю ещё сфер, то на тоже расстояние будет больше вариантов.
---
Ради интереса.
сейчас на 8 сфер 3600 вариантов
Добавлю ещё столько же сфер.
Получаете, на тот же путь в 8 сфер, нужно перебрать 28000 вариантов.
---
Сократил 130000 до 18000. и 768744 до 210510. Расстояние разное и разница отличается.
С помощью предварительной сортировки координат по расстоянию до цели
---
Это не количество вариантов, а количество шагов.
Путь в 13 шагов был выбран из 12 вариантов. Но чаще всего остаётся самый первый вариант. Он вернулся быстрее всего, значит он самый короткий.

-15