1 - думаю тег Unity тут лишний ))
2 -
3. Если несколько неизвестных элементов стоят в ряд, то значение float первого из таких элементов является средним арифметическим первого известного элемента перед этим рядом и первого известного элемента после этого ряда.
ну тут что то из ряда выпадает.. почему не построить дискретный ряд средних между начальным и конечным? .. но это тоже мысли в слух. если у вас условия
заданы извне или вы жестко настаиваете что
так и только так дело то хозяйское
3 - все три (ваших. по тексту вопроса) пункта, весьма просты. вопрос(ы) только в том:
- когда вы обнаруживаете нехватку значений?
- когда коррекцию надо выполнять?
- .. как то сведите эти события к решению ;)))
4 - а вот тут, единственный момент, который, на мой взгляд, вам важнее всего усвоить в контексте вопроса
- ключ в
c# dictionary уникален
- вы ограничиваете значения диапазоном [0-360] (кстати, почему не [0-359] или [1-360]? ну как хотите)
- вам точно проще использовать массив
float[360]
.
не благодарите вру, люблю отметки. и этот пункт, на данный момент, самый ценный для вас ;))
ps что то подумалось.. вам наверное надо как то отличить значения, которые еще ни когда не инициализировались?.. возможно подойдет
float?[360]
(
Nullable) это хороший способ отличить значение, которое еще не принимало численную величину, не создавая при этом каких других заумных абстракций..
.. и даже обозначить случай, когда ранее определенной величине, надо присвоить значение, которое четко говорит
а теперь мы опять не знаем числа, и настаиваем на неопределенности значения