Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
@Dahaka
Скину код моей попытки воссоздать godRays. Меньше кода и после него такая же проблема...
(Я знаю, это скорее всего не стоит в RenderWorldLast совать, но в других почему-то не работало...)
@SubscribeEvent
public void godRays(RenderWorldLastEvent event) {
int current =...
projectionMatrix достал, спасибо @tox1cozZ и @Ivasik.
Еще вопрос... эта матрица вообще изменяется? Я проверил ее значения, они вроде только при беге меняются
Проблему с рендером все еще не решил.
@Ivasik
vec4 tpos = vec4( 0, 2, 0 ,1) * gl_ProjectionMatrix;
tpos = vec4(tpos.xyz/tpos.w, 1.0);
vec2 pos1 = tpos.xy/tpos.z;
vec2 lightPositionOnScreen = (pos1+1)/2;
В общем вот что я вытащил из шейдера на оптифайне. Мне нужно расчитать позицию солнца на экране. в tpos я задаю тестовые значения...
@Ivasik , это видимо не то. Мне нужно как то через uniform передать Matrix4f (увидел это в оптифайне, но не нашел, как эта матрица создается)... либо я что то намутил. Не могу задебажить шейдер(
Рендерю в кастомном framebuffer'е обьекты и рисую их затем в майнкрафтовсую текстуру. В общем все как по туториалу вот тут: ссылка
Рендерю все точно так же в RenderWorldLastEvent.
Проблема: Когда пытаюсь нарисовать в мире что-то другое... например обычный квадрат без всяких применений шейдеров...
Применяю к текстуре дефолтного фреймбафера свой шейдер (Рисую новый Quad c такой же текстурой WorldRenderLastEvent), но сталкиваюсь со следующей проблемой
к "пустоте" шейдер не применяется. Насколько я понимаю, пустоты в текстуре вообще нет (отрисовал квад в мире с той же текстурой, и пустота...
Начал немного разбиратся в FrameBuffer, но не могу никак понять. Почитал начальный гайд на форуме с использованием шейдера блюр. Все по гайду вышло и решил немного продолжить эксперимент. Забиндил текстуру майнкрафтовского ФБ, отрисовал ее во весь экран ну и затем как по гайду. Все получилось...
Рендерю полупрозрачную модель поверх сущностей в майнкрафт, но все энтити позади данной модели, просто пропадают, будто бы их закрывала непрозрачная модель. НА скриншоте видно, что именно я имею в виду (овца пропала наполовину). Некоторые сущности, если они например больше, рендерятся на ура...
В общем оказалось, что моя проблема была решена не совсем верно. В общем задавая размеры своему ентити, они будто разширяют хитбокс только в одну сторону всех осей. Тоесть задавая размеры в setSize(2,2) визуально хитбокс расширяется в на -1 и +1 по оси х и так же с другими, но технически...
Не могу понять, как имзенить хитбокс entitythrowable. Ставлю this.sitSize(), на f3+B хитбокс отображается нормально, вот только на самом деле это будто бы только визуально. Тоесть коллизия работает только, если пройти в центр хитбокса. Если что, сетсайз делаю на сервере
Тебе не rotation ему задавать надо, а двигать. У EntityProjectile есть метон shoot. Ну а если это у тебя простая ентити, то можешь ей motion монять в зависимости от lookVector'a игрока
Ну в общем с водой видимо никак не получится починить. Конфликт между своими кастомными все же удалось устранить. в методе getFXLayer() оказывается можно указывать слой, на котором рендерится партикля... и поставив значение выше, текстура перестала ломать все текстуры, которые за ней.
Ну а с...
@Dahaka я вот задавался вопросом не чинит ли эту проблему оптифайн, но пока поставить не смог еще. Есть ли возможно какое нибудь решение для своих кастомных партиклей? Что бы забить на воду и как минимум между кастомными не было конфликтов, или это уже конечная?
@ZZZubec в таком случае все другие полупрозрачные блоки и партикли в игре становятся видимыми сквозь партиклю. Пытался поиграть с Depth_Test, но возвращаюсь тогда все равно к начальной проблеме