Russian Qt Forum

Разное => Говорилка => Тема начата: Igors от Июнь 05, 2019, 07:59



Название: Статьи на Хабре
Отправлено: Igors от Июнь 05, 2019, 07:59
Добрый день

Вот наткнулся на эту статью (https://habr.com/ru/post/343096/).

Я не фанат Хабра, но этот источник часто встречается при любом гуглении, поэтому заглядывать приходится. Понятно что "статья статье рознь", но в целом у меня такое впечатление: чем меньше я понимаю в теме - тем больше мне нравится статья. А если в данном вопросе я нулевой - то статья просто прекрасна :) Но когда у меня имеются свои знания и опыт - оценка статьи уже иная. Совсем иная :) Не исключено что я переоцениваю свои силы, это нормально и свойственно каждому.

В общем, верно ли я понимаю, что в основном там все нацелено на начинающих?
Да, и не смущайтесь OpenGL, это всего лишь "способ реализации", чего-то своего он никогда еще не придумал


Название: Re: Статьи на Хабре
Отправлено: Авварон от Июнь 05, 2019, 09:17
Внезапно, статья с названием Learn OpenGL оказалась для начинающих ;D

Яхз, я писал на олг2 и ничего не знал о огл3.2 и мне цикл статей был полезен, правда я до 3й главы только дочитал(

Вот бы по Vulkan такой бы цикл статей был, а то "эксперты" огл скоро не у дел останутся ;)


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 05, 2019, 09:49
Внезапно, статья с названием Learn OpenGL оказалась для начинающих ;D
А для кого же? Конечно изучение (гнусного) API никто не отменял, так что - нахватался API - уже и спец?  :)

Яхз, я писал на олг2 и ничего не знал о огл3.2 и мне цикл статей был полезен, правда я до 3й главы только дочитал(

Вот бы по Vulkan такой бы цикл статей был, а то "эксперты" огл скоро не у дел останутся ;)
Я тоже до 3.2 не дотянулся и похоже путь туда мне закрыт - apple устроил козу с "Metal". Пока не смотрел но наверно придется.

Однако я не о том. Какие ф-ции дергать выучить придется (деваться некуда), ну а "в прынцыпе"-то оно верно? Напр, вот картинка из статьи (аттач). Вопрос: что изменится если осветить пр-ки (зеленый и красный) источником света? Ну ясно цвета будут другие, но изменится ли альфа-канал?


Название: Re: Статьи на Хабре
Отправлено: sergek от Июнь 05, 2019, 10:22
А если в данном вопросе я нулевой - то статья просто прекрасна :) Но когда у меня имеются свои знания и опыт - оценка статьи уже иная. Совсем иная :) Не исключено что я переоцениваю свои силы, это нормально и свойственно каждому.
Написать статью, в которой нет ошибок или предмет раскрыт не полностью, практически невозможно) Многие пишут с целью помочь другим не делать своих ошибок или сэкономить время на некоторых неочевидных деталях.  Мне самому статьи на хабре помогали не раз, когда влезаешь в область, которую совсем не знал до этого. Ну да, наверное, многое там написано для начинающих. Всегда есть порог изучения нового предмета, его трудно преодолеть, если нет под рукой специалиста. А вот писать такие вещи я сам часто остерегаюсь в силу особенности наших форумов))
Кстати, где ваши комментарии по поводу опубликованного материала? А, ну да - там только авторизованные пользователи...



Название: Re: Статьи на Хабре
Отправлено: Old от Июнь 05, 2019, 14:07
ну а "в прынцыпе"-то оно верно? Напр, вот картинка из статьи (аттач).
Да Бог с ней с картинкой...

Вот несколько статеек:

https://habr.com/ru/company/intel/blog/450964/
https://habr.com/ru/post/454856/
https://habr.com/ru/post/454916/

вы посмотрите, в них "в прынцыпе"-то все верно?
А я вам буду еще докидывать сюда статеек... ок?


Название: Re: Статьи на Хабре
Отправлено: Авварон от Июнь 05, 2019, 18:49
Однако я не о том. Какие ф-ции дергать выучить придется (деваться некуда), ну а "в прынцыпе"-то оно верно? Напр, вот картинка из статьи (аттач). Вопрос: что изменится если осветить пр-ки (зеленый и красный) источником света? Ну ясно цвета будут другие, но изменится ли альфа-канал?

Ну а чо бы и не верно-то? Задачу решает? Решает.
Собсно основное отличие огл 3.2 и выше в том, что мы обязаны писать свои шейдеры под наши конкретные нужды вместо встроенного "god-class" шейдера.
Надо нарисовать треугольник? - вот простой шейдер
Надо нарисовать освещенный треугольник? - ну, тут уже сложнее.
Надо нарисовать освещенный прозрачный треугольник? - ну тут совсем сложно
Тема освещения начинается во второй главе, а возвращаются к ней в пятой. Не всё сразу.

Поинт в том что под разные задачи у нас разные шейдеры и делать "god-class" шейдер в качестве _обучения_ не имеет никакого смысла.


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 06, 2019, 06:33
Ну а чо бы и не верно-то? Задачу решает? Решает.
Неверно решает :) Вот первый пример с травой - верно, правда хз почему автор избегает популярного и удобного термина clip (или clipping). Т.е. это просто "вырезание" типа булевской маски. Сначала считаем "сколько резать", если 100% - то и шейдить незачем, все равно эффект нулевой.

А вот transparency (прозоачность) - это совсем др дело. 100% прозрачная точка может оказаться прекрасно видимой и считать/шейдить ее обязательно. Смысл в том что "прозрачность" подавляет лишь некоторые компоненты (обычно диффузу и люминансу), др компоненты роялят. См аттач, альфа-канал справа. Transparency=3/4 (удобнее opacity = 1/4). Две стенки сферы, итого альфа 1/4 + 1/4 * 3/4 = 7/16, ну так и есть. НО - обратите внимание на бубочки спекуляра - в них альфа канал гораздо больше.

"А кто сказал что так правильно? (дайте пруф линк)" :) Да просто наш жизненный опыт и здравый смысл. Вот стекло, оно прозрачно, может быть и почти 100%, мы видим сквозь него, а самого стекла как бы и нет. Но если на стекле блики (или отражения) - мы их прекрасно видим, а если они достаточно мощные, то сквозь них уже ничего и не видно.

А поэтому надо шейдить с учетом прозрачности и (аккуратно) пересчитывать альфу, а не так себе, только бленд включать. Здесь статья, как говорится, "вводит читателя в заблуждение".


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 06, 2019, 07:02
Собсно основное отличие огл 3.2 и выше в том, что мы обязаны писать свои шейдеры под наши конкретные нужды вместо встроенного "god-class" шейдера.
У меня требования - совместимость с 2.1, но шейдеры писать приходится - зажали, без них не обойтись

Надо нарисовать треугольник? - вот простой шейдер
Надо нарисовать освещенный треугольник? - ну, тут уже сложнее.
Надо нарисовать освещенный прозрачный треугольник? - ну тут совсем сложно
Тема освещения начинается во второй главе, а возвращаются к ней в пятой. Не всё сразу.

Поинт в том что под разные задачи у нас разные шейдеры и делать "god-class" шейдер в качестве _обучения_ не имеет никакого смысла.
А Вам не кажется что такой подход - идиотизм? Почему на каждый чих нужен свой шейдер? Почему я не могу написать шейдер только для того что мне нужно оставив остальное "default"? Зачем заставлять всех "писать шейдеры" если к этому нет ни способностей ни желания? Ведь лет 20 назад начиналось все нормально - выставил нужные установки материала - получил. Теперь "каждая кухарка" не то что "может", но "обязана" писать весь шейдинг (большевики отдыхают).


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 07, 2019, 15:51
И вот еще хотел упомянуть/поговорить. Разница между "нашей" и "буржуйской" статьей отлично заметна невооруженным глазом. "Наши" обычно выглядят "корявее" но содержат больше честных мыслей. Статья этого топика - явно буржуйская. Обратите внимание на такие моменты

- все "вылизано", лично у меня не возникло ни одного вопроса, думаю у других тоже. Даже при беглом просмотре (вникать необязательно) все ясно - причем ВСЕМ и КАЖДОМУ.   

- очень быстро (и, надо признать, ловко и умело) внимание читающего переключается на "матчасть", т.е. какими вызовами API достичь того или иного рез-та. И, конечно, дается готовый кусок кода который можно просто передрать. Никакой "удочкой" здесь никогда и не пахло, это откровенная спекуляция на низменных инстинктах программиста, которая - увы - прекрасно работает. Хоть я и понимаю что "здесь меня давно ждали", но "взять готовое и не париться" так заманчиво. И вообще это "конкретно", "по делу", без всяких там ненужных философий! "Прямиком к коду!" (где-то видел), пусть мы и не очень понимаем чего кодируем. Результат налицо - "чего же боле?"

И таких статей, по моим наблюдениям, большинство. Это уже как бы "стандарт" к которому все стремятся. Так что, выходит ничего читать не надо? Или как? :) Я этого не говорил - читать так или иначе придется. Только вот особо обольщаться прочитанным не следует - сам инет честно признает что никаких гарантий не дает.

Когда-то читал мемуары (уж и не помню чьи) и запомнился такой момент: ребят из стройотряда отпустили раньше с работы, и по дороге они столкнулись с поваром который.. купался в их бочке с питьевой водой. И тут до них дошло
Цитировать
Так ты что, каждый день так делаешь ????


Название: Re: Статьи на Хабре
Отправлено: Авварон от Июнь 07, 2019, 16:32
Я посмотрю на вас как вы под Вулкан будете писать без такой статьи=)
Там один сетап занимает 3 экрана кода тупо чтобы начать рисовать хоть что-то.


Название: Re: Статьи на Хабре
Отправлено: sergek от Июнь 07, 2019, 20:51
"Наши" обычно выглядят "корявее" но содержат больше честных мыслей. Статья этого топика - явно буржуйская.
Вы наблюдательны  ;) К этим наблюдениям еще можно добавить фамилию автора и то, что это перевод))


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 10, 2019, 07:23
Я посмотрю на вас как вы под Вулкан будете писать без такой статьи=)
Там один сетап занимает 3 экрана кода тупо чтобы начать рисовать хоть что-то.
Не смотрел еще, но оба зверя (Vulkan и Metal) смотрятся явно лучше - по меньшей мере вводятся новые понятия, концепции, пусть пока и не знаю какие. А 3 экрана кода меня не пугают, хоть 30. Конечно API никто не отменял, но для этого есть дока и SDK. А статьи должны посвящаться др вещам, а не паразитировать на API


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 10, 2019, 08:02
...чтобы начать рисовать хоть что-то.
Немного в сторону, но мы же в "говорилке" :) А что Вы собсно хотите "рисовать"? По моим наблюдениям проблема подавляющего большинства увлекающихся "компьютерной графикой" в том что они не имеют никаких целей. Да, это вроде бы модно, современные технологии и все такое. И вот они учат и учат, API, шейдеры и все подряд. Но зачем - хз, внятного ответа обычно нет. Ну иногда хотят сделать "великую игру всех времен и народов", хотя наивность таких мечтаний очевидна. Ну в конце-концов это их личное дело.


Название: Re: Статьи на Хабре
Отправлено: Old от Июнь 10, 2019, 09:29
Да, это вроде бы модно, современные технологии и все такое.
Это уже давно не модно, интерес к компьютерной графики, по сравнению с каким нибудь началом века упала "в ноль".

И вот они учат и учат, API, шейдеры и все подряд. Но зачем - хз, внятного ответа обычно нет.
Это все нужно, чтобы просто отобразить тот же вращающийся куб в центре экрана. :)

Ну иногда хотят сделать "великую игру всех времен и народов", хотя наивность таких мечтаний очевидна.
Если у человека будет хорошая база знаний, то он сможет попасть в серьезную команду и поучаствовать в разработке "великой игры всех времен и народов".


Название: Re: Статьи на Хабре
Отправлено: kambala от Июнь 10, 2019, 14:22
...чтобы начать рисовать хоть что-то.
Немного в сторону, но мы же в "говорилке" :) А что Вы собсно хотите "рисовать"? По моим наблюдениям проблема подавляющего большинства увлекающихся "компьютерной графикой" в том что они не имеют никаких целей. Да, это вроде бы модно, современные технологии и все такое. И вот они учат и учат, API, шейдеры и все подряд. Но зачем - хз, внятного ответа обычно нет. Ну иногда хотят сделать "великую игру всех времен и народов", хотя наивность таких мечтаний очевидна. Ну в конце-концов это их личное дело.
я не увлекаюсь графикой и ничего этого не знаю, но вот Эппл объявили о том, что опенгл поддерживать больше не планируют и переходите в будущем на Метал. Есть такая программа Kodi под многие платформы (в т.ч. все яблочные), которая все рисует через опенгл, и есть некий интерес/цель заменить отрисовку на Метал. И что надо делать, если не просто читать туториалы/изучать апи? :)


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 11, 2019, 04:51
я не увлекаюсь графикой и ничего этого не знаю, но вот Эппл объявили о том, что опенгл поддерживать больше не планируют и переходите в будущем на Метал. Есть такая программа Kodi под многие платформы (в т.ч. все яблочные), которая все рисует через опенгл, и есть некий интерес/цель заменить отрисовку на Метал. И что надо делать, если не просто читать туториалы/изучать апи? :)
Боюсь что "будущее на Метал(е)" наступит гораздо раньше чем хотелось бы. Т.е. начиная с какой-то версии OSX скажут "от винта" OpenGL(ю), пошли все на metal. Это вполне в духе apple. Насколько мне известно, уже сейчас OpenGL ограничен до 2.1 на OSX (наверное чтобы сильно там "не расписывались").

Собсно переход на Metal реален, хотя конечно геморрой будет как при любом портинге. Но беда в том что пока не видно кросс-платформенности. Поддерживать "разбежавшиеся" версии на OSX и Вындоуз (или на чем-то еще) - это невыносимо. А ситуевина на том же антисанитарном Вындоуз гораздо хуже.

Поэтому и не спешу "изучать API" (всегда успеется), надеюсь может появится какая-нибудь кросс-платформенная "фишка" (должна).


Название: Re: Статьи на Хабре
Отправлено: Авварон от Июнь 11, 2019, 14:36
Насколько мне известно, уже сейчас OpenGL ограничен до 2.1 на OSX (наверное чтобы сильно там "не расписывались").

3.3 минимум, я собирал примеры по ссылке выше на маке, всё работало (я ставил юзать минимум 3.2, но точную версию не помню, вроде даже 3.4 реальная была)


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 12, 2019, 14:59
3.3 минимум, я собирал примеры по ссылке выше на маке, всё работало (я ставил юзать минимум 3.2, но точную версию не помню, вроде даже 3.4 реальная была)
У меня "ставится" 4.1, т.е. я могу создать такой контекст, но вот дальше ничего не работает. Хотя может просто "не разобрался"


Название: Re: Статьи на Хабре
Отправлено: ViTech от Июнь 14, 2019, 11:18
Поэтому и не спешу "изучать API" (всегда успеется), надеюсь может появится какая-нибудь кросс-платформенная "фишка" (должна).

За время существования OpenGL и DirectX появилась какая-нибудь кроссплатформенная фишка для них?


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 14, 2019, 12:52
За время существования OpenGL и DirectX появилась какая-нибудь кроссплатформенная фишка для них?
Про DirectX ничего не знаю, а OpenGL - да, вернее "OpenGL ES", гарантируется совместимость везде

Фишки что я говорил уже есть, напр эта (https://moltengl.com/moltengl/). Ну и Qt там помаленьку чухается


Название: Re: Статьи на Хабре
Отправлено: ViTech от Июнь 14, 2019, 13:41
Фишки что я говорил уже есть, напр эта (https://moltengl.com/moltengl/). Ну и Qt там помаленьку чухается

При таком подходе получается, что кроссплатформенная фишка - это OpenGL (и далее Vulkan). Хочется надеяться, что так в конечном итоге и будет.


Название: Re: Статьи на Хабре
Отправлено: Авварон от Июнь 14, 2019, 19:04
У меня "ставится" 4.1, т.е. я могу создать такой контекст, но вот дальше ничего не работает. Хотя может просто "не разобрался"

Так может стоило статьи почитать для начала? ;)


Название: Re: Статьи на Хабре
Отправлено: Igors от Июнь 15, 2019, 05:42
Так может стоило статьи почитать для начала? ;)
Это, как обычно, бесполезно. Ситуация: контекст 4.1 создается, причем:

- запрашиваю 3.3 (QSurfaceFormat) - получаю 4.1
- запрашиваю 3.0 - получаю 2.1

Т.е. что дадут - то и дадут :) Ну думаю ладно, печатает версию OpenGL 4.1 и GLSL 4.1. Сразу начал вякать на шейдеры, мол, нужна #version. Ставлю #version 120 (для 2.1) - не поддерживается, скушал 330. Потом не понравились старые built-in переменные и.т.п. Не вопрос, заткнул дефайнами, все шейдеры компилятся и линкуются. Но ничего не выводится, все окна пустые :) В консоли ошибок нет. Рыпнулся (в очередной раз) на QOpenGLDebugLogger - опять облом, нету нужного extension.

Наверное правильно было попробовать контекст 4.1 для Qt примера(ов), и, если пойдет, дальше парить старый код через glError и/или "functions" - но это на неделю минимум. Пока забил. Вообще положение неприятное. Во-первых 2.1 никто не отменял. Собсно там не хватает только геометрического шейдера, использовать др фичи 4.1 планов нет. Во-вторых неясно стоит ли возиться с этим калом если не сегодня-завтра придется ползти на Metal.

А у Вас все статьи да статьи  :)


Название: Re: Статьи на Хабре
Отправлено: qtkoder777 от Август 13, 2019, 17:33
Очередной говнокодер выложил свой говнокод на хабр.
Это основное предназначение хабра.


Название: Re: Статьи на Хабре
Отправлено: qtkoder777 от Август 13, 2019, 17:46
Впрочем есть и просто дуры

На пенсию в 22
Карьера в IT-индустрии,
Читальный зал,
Здоровье гика
Привет, я Катя, я не работаю уже год.

Я много работала и выгорела. Уволилась и не стала искать новую работу. Толстая финансовая подушка обеспечила мне бессрочный отпуск. Я отлично провела время, а еще утратила часть знаний и психологически постарела.

Ни о чем не жалею. Я прочитала три десятка книг,переехала в Москву, выспалась на 10 лет вперед и узнала о себе много нового. Я не ездок по европам, не бизнесмен, не волонтер, у меня нет детей и не было увлечений, ради которых хотелось уйти с работы пораньше. И вместо того, чтобы искать новые источники самореализации, я посвятила себя работе. Я жила работой. Там были все мои друзья и вся движуха.

Я поняла, почему не могла постичь work-life balance.
Моя жизнь вращалась вокруг работы. Work превратился в life. Я работала по 12 часов не потому что мне было в кайф, а потому что еще 4 часа работы вели меня к какой-то цели, а те же 4 часа вне офиса не вели. Меня не смущало, что кроме стопки книжек ничего не влечет домой. То, что казалось важным, не было интересным, а все интересное казалось неважным. Я думала, что хочу путешествовать, но ни разу не мониторила Aviasales. Думала, что хочу выучить английский, но так и не купила учебник.

Мне хотелось играть в Скайрим и раскрашивать антистресс-раскраски, но когда сроки горят (а горят они всегда), кому нужны раскраски, это же так несущественно, так банально. И я сгорела раньше, чем сгорели сроки, потому что раскраски то были «антистресс».


За год работы начинающий программист зарабатывает толстую финансовую подушку. Не знал. Еще и на квартиру в Москве хватило пусть даже съёмную.