[1.6.4]Освещение в измерении

Статус
В этой теме нельзя размещать новые ответы.

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#1
Добрый вечер. Интересует вопрос. Подскажите как регулировать освещение в своем измерении и где оно задается?
 

svk2140

Каменная лига
Сообщения
608
Лучшие ответы
6
Симпатии
12
#2
п
о
и
с 
к
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#3
У меня стоит такой метод.
Код:
protected void generateLightBrightnessTable() {
          float f = 0.0F;

          for(int i = 0; i <= 15; ++i) {
             float f1 = 1.0F - i / 15.0F;
             super.lightBrightnessTable[i] = (1.0F - f1) / (f1 * 3.0F + 1.0F) * (1.0F - f) + f;
          }

       }

Как я его не крутил, получается не то, что нужно. То освещение резко падает, то слишком ярко, а бывало когда ставил светокамень цвет света стал зеленым... Может есть другой метод?
 

AlexSocol

Золотая лига
Сообщения
1,951
Лучшие ответы
66
Симпатии
182
#4
RonyC написал(а):
когда ставил светокамень цвет света стал зеленым
О-па. У тебя этот код ещё остался? :D
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#5
Я наверное скоро за это деньги буду брать)
Код:
protected void generateLightBrightnessTable() {
          float f = -0.2F;

          for(int i = 0; i <= 15; ++i) {
             float f1 = 1.0F - i / 15.0F;
             super.lightBrightnessTable[i] = (1.0F - f1) / (f1 * 3.0F + 1.0F) * (1.0F - f) + f;
          }

       }
[merge_posts_bbcode]Добавлено: 17.06.2016 15:25:32[/merge_posts_bbcode]

А нет, нет. Это ставит зеленый цвет во всем измерении.
Код:
float f1 = 1.0F - i / 15.0F;
Крути 15.0F

[merge_posts_bbcode]Добавлено: 17.06.2016 15:26:01[/merge_posts_bbcode]

И там с тенями
 

wilah

Каменная лига
Сообщения
1,138
Лучшие ответы
6
Симпатии
1
#6
Да потому что лайтмапу делает неверную(верную, но не как в майне). Её и так можно увеличить, тогда свет будет цветным. Это делает ColoredLights =)
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#7
Нашел похожий метод
Код:
protected void generateLightBrightnessTable() {
          float var1 = 0.0F;

          for(int var2 = 0; var2 <= 15; ++var2) {
             float var3 = 1.0F - (float)var2 / 15.0F;
             super.lightBrightnessTable[var2] = (1.0F - var3) / (var3 * 3.0F + 1.0F) * 0.1F;
          }

       }
Чем ближе к нолю 0.1F, тем темнее. Но вот беда. Затемнение происходит, однако если ставить светящий камень, например, то его яркость падает в зависимости от значения параметра. Есть способ изменить освещение в мире, но при это сохранять яркость объектов?
 

AlexSocol

Золотая лига
Сообщения
1,951
Лучшие ответы
66
Симпатии
182
#8
На мой:
Код:
@Override
public void generateLightBrightnessTable() {
    float f = 0.5F;
    for (int i = 0; i <= 15; ++i) {
        float f1 = 1.0F - (float) i / 15.0F;
        this.lightBrightnessTable[i] = (1.0F - f1) / (f1 * 3.0F + 1.0F) * (1.0F - f) + f;
    }
}
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#9
Благодарю, но не то. Мне нужно снизить уровень освещения, а не делать ярче, в 0.5F пробовал минус поставить. Затемнение происходит, но получается темно-зеленый, а мне нужно именно темный спектр.
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#10
С минусом-то работает, но почему цвет становится темно зеленым?
 

RonyC

Каменная лига
Сообщения
687
Лучшие ответы
1
Симпатии
3
#12
Более удобно изменять освещение методом getSunBrightness. Спасибо за помощь) Закрывайте.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху