LINUX.ORG.RU

История изменений

Исправление LINUX-ORG-RU, (текущая версия) :

farbfeld

Согласен, ещё одно ненужно, вернее это уже есть, чем оно отличается от того же TGA? Ну в заголовок 28 байт vs 16. Ой велика ли разница, а дальше идёт тупо битмап как у всех лол. Laslo Hunhold тупо придумал в начало данных картинки записать ширину и высоту лол и всё. И это новый формат?

Я тоже так могу, такое ощущение что подобное придумывают чисто для пиара. TOML конфиг из той же оперы, ini переизобрели и всё.

Опять же тот же, а по форматам которым 100500 лет и которые широчайше распространены и важны жопа, конечно чё бы примитивщину которую используют три калеки то не заимплементить!

Можно вообще вместо всех этих псевдоворматов сделать форму загрузки изображения просто как шаблон изображения где ты указываешь некий велосипед и битовую шапку мол на таком байте*N ширина, а тут высота, а тут RLE есть иди нету, а тут цветовая таблица может быть или нету, а дальше данные идут тупо. И так без всяких имплементаций спец форматов отличающихся парой байтов заголовка и авторами форматов сам пользователь может просто указать мол у такого то вот расширения вот такие вот поля в начале, а дальше данные и всююооо.

Вэрнёмся к реальности, давече мол вот я, как есть стою, и уже неделю у меня не получается из текстурного атласа красиво разукрашивать терреин, ну атрефакты из за LOD BIAS текстур, ну я такой пердолюсь, пердолюсь понимаю что я дебил ибо у меня не получается, неврено вычисляю мип-памы и всё рябит или мылит, ну никак, уже руки опустил и полез в интернеты глядеть как люди делают, а хочется ведь всё самому и не подглядывать и не списывать (заберу вперед и скажу что принял волевое решение поднять версию шейдера с 120 на 130 реализовать TEXTURE_2D_ARRAY и загружать тайловую карту в него тем самым снизив скорость и полностью избавившись от жирных шейдеров с тоннами расчётов UV и градиентов смешивания линейной интерполяции и 32 пиксельные бордеры убрал повысив качество текстур) ну так вот, вперёд я забежал, а тогда я хотел визуально как деды аля printf отдебажить mip-map расчёты, ну и я такой думаю в DDS текстурах можно хранить готовые миппамы, GIMP умеет при экспорте их генерировать при сохранении, а дельше магия, есть взять текстуру сохраниь как DDS с нужным DXT1/2/3 и выбрать генерирование мипов то всё ок, но если потом открыть этот же DDS где гимп вежливо предложит загрузить уже имеющиеся миппамы потом по моей идее дебага я вручную раскрашиваю мипы в разные цвета (для того что бы когда видеокарта выбирает нужный мип для отрисовки я видел на сцене где какой мип по тому какой у него цвет) ну так вот разукрасил я мипы, сохраняю значит и ставлю галочку, мол оставь всё как есть, мипы сохрани те что уже есть просто перезапиши файл и всё гимп мне, ой ошибка!!!!!

Вот после этого момента, когда я уже и так на нервах был и блин мне даже визуально по получается мипы посмотреть наглядно в 3д сцене я окончательно взорвался, пошёл в час ночи бахнул кофя с пряником, сел и трясущщимися руками вбил в шейдер

-#version 120
+#version 130

+#ifdef GL_ARB_texture_query_lod
+    #extension GL_ARB_texture_query_lod : enable
+#endif

+#ifdef  GL_EXT_texture_array
+    #extension GL_EXT_texture_array : enable
+#endif

И полез в код делать из квадратного изображения с тайлами вертикальное для загрузки напрямую в массив текстур через glTexImage3D(GL_TEXTURE_2D_ARRAY,...)

Знаешь как тяжко было, жесть! И до сих пор тяжко ведь я ниже в коде делаю #ifdef и если вдруг человек с OpenGL2.1 не сможет в шейдере притянуть эти расширения у меня всё упадёт, а что-бы не упало нужно в #else до #endif дописать то самое с чем я мучался, а я нимагуууу в DDS мип уровни цветиками залить ААААААААААААААААААААААААААААААААААААААААААААААААААААААА!!!! ПАМАГИТЯЯЯЯЯ.

И (офтоп для душеньки) это ещё не всё у меня фундаментальная претензия к хроносу и всем его поднагодным выпускающим стандарты мол какого фига textureGrad для вычисления правильных гадиентов между суб изображениями в текстуре с тайлами есть только в шейдерах 130 версии там дже где появились массивы текстур когда в 120 где все пологовно использовали тестурные атласы это решалось через жопу!!!! Хотя атласы были первостепенно важнымии и 20 лет назад и сейчас в суперсовременных играх с динамической подгрузкой всего и вся в атласы, чё за бредятина!!! Всё вверх тормашками.

Выдыхаю.

Исходная версия LINUX-ORG-RU, :

farbfeld

Согласен, ещё одно ненужно, вернее это уже есть, чем оно отличается от того же TGA? Ну в заголовок 28 байт vs 16. Ой велика ли разница, а дальше идёт тупо битмап как у всех лол. Laslo Hunhold тупо придумал в начало данных картинки записать ширину и высоту лол и всё. И это новый формат?

Я тоже так могу, такое ощущение что подобное придумывают чисто для пиара. TOML конфиг из той же оперы, ini переизобрели и всё.

Опять же тот же, а по форматам которым 100500 лет и которые широчайше распространены и важны жопа, конечно чё бы примитивщину которую используют три калеки то не заимплементить!

Можно вообще вместо всех этих псевдоворматов сделать форму загрузки изображения просто как шаблон изображения где ты указываешь некий велосипед и битовую шапку мол на таком байте*N ширина, а тут высота, а тут RLE есть иди нету, а тут цветовая таблица может быть или нету, а дальше данные идут тупо. И так без всяких имплементаций спец форматов отличающихся парой байтов заголовка и авторами форматов сам пользователь может просто указать мол у такого то вот расширения вот такие вот поля в начале, а дальше данные и всююооо.

Вэрнёмся к реальности, давече мол вот я, как есть стою, и уже неделю у меня не получается из текстурного атласа красиво разукрашивать терреин, ну атрефакты из за LOD BIAS текстур, ну я такой пердолюсь, пердолюсь понимаю что я дебил ибо у меня не получается, неврено вычисляю мип-памы и всё рябит или мылит, ну никак, уже руки опустил и полез в интернеты глядеть как люди делают, а хочется ведь всё самому и не подглядывать и не списывать (заберу вперед и скажу что принял волевое решение поднять версию шейдера с 120 на 130 реализовать TEXTURE_2D_ARRAY и загружать тайловую карту в него тем самым снизив скорость и полностью избавившись от жирных шейдеров с тоннами расчётов UV и градиентов смешивания линейной интерполяции и 32 пиксельные бордеры убрал повысив качество текстур) ну так вот, вперёд я забежал, а тогда я хотел визуально как деды аля printf отдебажить mip-map расчёты, ну и я такой думаю в DDS текстурах можно хранить готовые миппамы, GIMP умеет при экспорте их генерировать при сохранении, а дельше магия, есть взять текстуру сохраниь как DDS с нужным DXT1/2/3 и выбрать генерирование мипов то всё ок, но если потом открыть этот же DDS где гимп вежливо предложит загрузить уже имеющиеся миппамы потом по моей идее дебага я вручную раскрашиваю мипы в разные цвета (для того что бы когда видеокарта выбирает нужный мип для отрисовки я видел на сцене где какой мип по тому какой у него цвет) ну так вот разукрасил я мипы, сохраняю значит и ставлю галочку, мол оставь всё как есть, мипы сохрани те что уже есть просто перезапиши файл и всё гимп мне, ой ошибка!!!!!

Вот после этого момента, когда я уже и так на нервах был и блин мне даже визуально по получается мипы посмотреть наглядно в 3д сцене я окончательно взорвался, пошёл в час ночи бахнул кофя с пряником, сел и трясущщимися руками вбил в шейдер

-#version 120
+#version 130

+#ifdef GL_ARB_texture_query_lod
+    #extension GL_ARB_texture_query_lod : enable
+#endif

+#ifdef  GL_EXT_texture_array
+    #extension GL_EXT_texture_array : enable
+#endif

И полез в код делать из квадратного изображения с тайлами вертикальное для загрузки напрямую в массив текстур через glTexImage3D(GL_TEXTURE_2D_ARRAY,...)

Знаешь как тяжко было, жесть! И до сих пор тяжко ведь я ниже в коде делаю #ifdef и если вдруг человек с OpenGL2.1 не сможет в шейдере притянуть эти расширения у меня всё упадёт, а что-бы не упало нужно в #else до #endif дописать то самое с чем я мучался, а я нимагуууу в DDS мип уровни цветиками залить ААААААААААААААААААААААААААААААААААААААААААААААААААААААА!!!! ПАМАГИТЯЯЯЯЯ.

И это ещё не всё у меня фундаментальная претензия к хроносу и всем его поднагодным выпускающим стандарты мол какого фига textureGrad для вычисления правильных гадиентов между суб изображениями в текстуре с тайлами есть только в шейдерах 130 версии там дже где появились массивы текстур когда в 120 где все пологовно использовали тестурные атласы это решалось через жопу!!!! Хотя атласы были первостепенно важнымии и 20 лет назад и сейчас в суперсовременных играх с динамической подгрузкой всего и вся в атласы, чё за бредятина!!! Всё вверх тормашками.

Выдыхаю.