Мое приложение для заливки объемного луча в WebGL почти закончено. Но я нашел проблему. Мне нужно смоделировать 3D-текстуру с помощью 2D-текстуры. Это не проблема. Я создаю огромную текстуру из маленьких кусочков. Размеры огромной текстуры составляют около 4096x4096 пикселей. Проблема в том, что в некоторых примерах (это зависит от количества срезов) создается sth. как на изображении ниже (я заполнил огромную текстуру до белого, чтобы фрагмент стал более заметным).Текстура не работает (вероятно)
Я знаю, что кол-во полос зависит от NUM строк в огромной текстуры. Я создаю эту текстуру около 4096x4096px (но не совсем). Это может быть 4080x4060 и т. Д. Я думаю, проблема в том, что Three.js загружает мою текстуру в gpu, но не масштабирует ее до 4096x4096. Так что я читаю черный фрагмент черного цвета на границе текстуры, потому что webgl работает только с квадратные текстуры (512x512, 1024x1024 ... и т. д.). Это вызвало появление черных полос в изображении.
Проблема в том, что мое приложение Three.js не работает с WebGL Inspector..так я не уверен.
Любая идея, как исправить это?
Спасибо.
Томаш
EDIT:
Хорошо, я нашел problem..and "решение" ... но техника его подводит решение работа хорошо. У меня есть 2 набора данных. Все в порядке, вторая по-прежнему та же ошибка.
2 варианта кода (каждый из них прекрасно работает для одного набора данных, но не для второй):
Первый)
dx = mod(slice, numColsInTexture)/numColsInTexture;
dy = 1.0 - (floor(slice/numColsInTexture)/numRowsInTexture);
Второй)
dx = 1.0 - (mod(slice, numColsInTexture)/numColsInTexture);
dy = (floor(slice/numColsInTexture)/numRowsInTexture);
Я действительно не знаю, , почему он не работает для обоих наборов данных ... Я попытался свалить GPU (инспектор WebGL). Оба текстуры загружаются на GPU (одинаковая ориентация, одинаковые размеры). Все одинаково.
Пожалуйста, помогите мне .... спасибо.
Я знаю, что это старый пост, но вы заработали его правильно? Возможно ли ваше приложение где-нибудь случайно? Мне бы очень хотелось посмотреть. Лучший – Nicolas
Привет, вы можете видеть его там: https://www.youtube.com/watch?v=tVCJUmnxvIs – Xrew
Приятный материал! Это выглядит очень хорошо! Является ли код открытым исходным кодом? И если да, то с ним хорошо? – Nicolas