Интересуют floating-point текстуры в WebGL. Если конкретнее, то в контексте неграфических вычислений. Вопросы примерно такого плана (возможно, наивные):
- можно ли представить текстуру в виде 2d-массива float-чисел и обрабатывать там произвольные данные?
- можно ли в такой текстуре хранить числа меньше 0 и больше 1?
- можно ли в таком массиве потом что-то искать, получать и вставлять куски?
- можно ли передавать данные между текстурой и типизированным js-массивом?
- существуют ли какие-то библиотеки под это дело (не под рисование и не под игры)?
Гуглил, но ничего внятного не нашел. Везде типичные поверхностные обзоры.
Вероятно, плохо гуглил. Наверняка должны быть какие-то места с хорошими материалами.
Про литературу нечего не подскажу, но на вопросы отвечу:
1- в webgl есть функция gl.readPixels, которая позволяет считать определенную область буфера кадра( чтение из текстуры) в определенный буфер. Если знать ширину и высоту области считывания, можно легко превратить одномерный массив в 2-х мерный.
2- диапазон значений в float point текстуре [- бесконечность, + бесконечность] с точностью в 32 бита на все 4 канала( 8 бит на канал- 256 цветов)
3- массив( буфер цветов) под полным контролем программиста
4- смотри 1- для чтения. gl.texImage2D может принимать в качестве последнего параметра буфер цветов( типизированный массив), которые необходимо записать в текстуру
5- хз
А, то есть float - это просто слепленные вместе 4 обычных канала по 1 байту? Я было подумал, что он умеет каждую компоненту RGBA делать вещественным числом.