• Хорошо ли вы помните nullable value types? Заглядываем «под капот»

      image1.png

      В последнее время модной темой стали nullable reference types. Однако старые добрые nullable value types никуда не делись и всё так же активно используются. Хорошо ли вы помните нюансы работы с ними? Предлагаю освежить или проверить свои знания, ознакомившись с этой статьёй. Примеры кода на C# и IL, обращения к спецификации CLI и коду CoreCLR прилагаются. Начать предлагаю с интересной задачки.
      Читать дальше →
    • Это норма: что такое карты нормалей и как они работают

      • Translation
      На протяжении нескольких лет я пытался разобраться в картах нормалей и в проблемах, которые обычно возникают при работе с ними.

      Большинство найденных объяснений было слишком техническим, неполным или чересчур сложным для моего понимания, поэтому я решил попробовать объяснить собранную мной информацию. Я понимаю, что эти объяснения могут быть неполными или не совсем точными, но всё равно попробую.

      Первые созданные человеком 3D-модели выглядели примерно так:

      image

      Это замечательно, но у такой модели есть очевидное ограничение: она выглядит слишком полигональной.

      Наиболее очевидное решение: добавить больше полигонов, сделав поверхность более равномерной и гладкой, вплоть до того, чтобы полигоны казались единой гладкой поверхностью. Но оказывается, для того, чтобы сделать поверхности наподобие сфер гладкими, нужно огромное количество полигонов (особенно сегодня).
      Читать дальше →
      • +66
      • 34.5k
      • 5
    • МЕРЧ! МЕРЧ! МЕРЧ! и… единороги

        Очередной сезон конференций подошел к концу, и совсем уже уверенно нам на пятки наступает новогодний марафон, поэтому самое время сейчас нам поговорить о прекрасном и самом универсальном виде подарка – сувенирной продукции.


        Читать дальше →
      • Как работает альфа-композитинг

        • Translation
        image

        Возможно, прозрачность не кажется какой-то интересной темой. Формат GIF, позволявший некоторым пикселям просвечивать сквозь фон, опубликован более 30 лет назад. Почти в каждом приложении для графического дизайна, выпущенном за последние два десятка лет, поддерживается создание полупрозрачного контента. Эти понятия давно перестали быть чем-то новым.

        В своей статье я хочу показать, что на самом деле прозрачность в цифровых изображениях намного интереснее, чем кажется — в том, что мы воспринимаем как нечто само собой разумеющееся, есть невидимая глубина и красота.
        Читать дальше →