2 голоса 712 просмотров 2.09.2017 / 07:49
Death
Нужно от источника света окружностью осветить карту.Есть массив float[][], где 1 - самое светлое, а 0 - темно. Цель: осветить вокруг источка света xl и yl окружность, где источник света - 1 освещать, и освещать вокруг до 0. Притом что если ground.getBlock(i, j) != null, то отнимается 0.2f, а если неьу блока, то 0.1f. Пожалуйста, помогите. Зарание, спасибо.
2.09.2017 / 12:35
Витаминыч
Через попу голова твоя работает и код так же пишет
Ответы
1 голос
В общем, самое главное здесь обход кольца и всего диска
2.09.2017 / 09:15
Death
Мне то нужно, что бы оно мне от центра освещала вокруг, так что бы свет во все стороны темнел.Хотя... Ночью вся карта превращается в 1 уровень света, а потом только тень рисуется, а вот ночью это - 0. Хотел сделать, что бы каждый null блок выдавал свет по окружности. Так, а факел будет чуть сильнее. То есть, то что в light[][] -= n; можно делать n * силаСвета. У каждый null блок будет выдавать свет в 1 силу, то есть light[][] -= n * 1, а факел в 2.
2.09.2017 / 09:16
Death
Но!
Будет всё одним "закрашено".
2.09.2017 / 09:23
Death
Стоп. Я понял! Всё будет работать. И "градиентом" закрашено будет.
2.09.2017 / 09:27
Death
2.09.2017 / 10:54
Death
Алгоритм работает... Только в таком виде как мне дали - работает через попу. Я его фиксил как только мог. И всё же, он не кругом рисует, а -----+++ -----+++ +++----- +++----- (где + это обрабатывает, а - не обрабатывает сторону) И то кажется, что там выберает "случайные" для обработки
2.09.2017 / 11:41
vlavolk
Отразить ещё по горизонтали нужно, то есть получить блок с негативным y и его проверить
Всего: 1
|
Реклама |