• Создание 1k intro Chaos для ZX-Spectrum


      Изначально я не планировал делать демо на Chaos Constrictions 2018, однако за 2-3 недели до cc понял, что с пустыми руками идти на демопати никак нельзя, и решил написать небольшую демонстрацию для 386/EGA/DOS.

      Скомпилировав в Turbo-C под DOS свою либу AnotherGraphicsLibrary, которая идеально ложиться в битплановую структуру EGA режима, я разочаровался, от тормозов, прежде всего тормозов EGA. Демо в том виде, в котором я хотел бы его видеть, за этот весьма ограниченный срок, сделать было невозможно.

      Однако сдаваться и не делать что-либо, я уже не мог. И тут я вспомнил, что давно хотел принять участие в ZX-Spectrum конкурсах демо. А так, как за последний год у меня появилось целых два 48k реала, я мог получить определенное удовольствие от создания демо. К слову — для меня самое главное в написании демо это именно тестирование на реале, эмульгаторы не дают такого наслаждения от процесса, уж очень это замечательное чувство, когда после очередного изменения в коде ты закачиваешь демо на реал, и видишь как настоящая железка тасует байтики в памяти, отрисовывая эффект.

      Поскольку из реалов у меня только 48k, то и демо я решил сделать для 48k. А из-за ограниченности сроков и отсутствия каких-либо наработок, выбор пал на создание 1k intro(демо объёмом всего 1 килобайт, или 1024 байта).
      Читать дальше →
    • Разработка культовой игры S.T.A.L.K.E.R. 2 возобновлена



        Разработка игры S.T.A.L.K.E.R. 2 возобновлена! Да, да, да, то, чего многие из нас так ждали — случилось! Многие, уже и не надеялись на то, что игра S.T.A.L.K.E.R 2 увидит свет, но видимо продажа Казаков 3, позволила найти необходимые средства для возобновления разработки.
        Читать дальше →
      • Disс Error


          Внимание!
          Не судите особо строго графоманию автора, он никогда не занимался ничем подобным, и хорошо, если в год читает хоть одну художественную книгу. Извиняюсь за не очень хорошее умение пользоваться русским языком, бесконечные «я» и т.д.

          Данный «рассказ» был рожден мной в реалтайме(отрывок за отрывком) в /b/ кто знает тот поймет :)

          Была спокойная летняя ночь, родители были на даче, а я в одиночестве перепроходил любимые игры. Есть что-то романтичное в таких посиделках в полном одиночестве, и нет, позвать друзей не вариант — пропадет та самая атмосфера.

          Когда на часах было около трех ночи, я решил все-таки сходить в магазин за полуфабрикатами, готовить было лень, но и голодным сидеть тоже не хотелось. Выйдя на улицу, я почувствовал приятную ночную свежесть, небольшой ветерок дул в лицо, а на небе мерцали едва видимые за дымкой звезды. Эх, как жалко что магазин находится в двух шагах и это приятное мгновение нельзя продлить на долго…

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

          Зайдя в подъезд, я увидел, точнее напротив, что лампочка, за время моего путешествия перегорела, пришлось достать свой старенький Optimus One на таком же старом Android 2.3. Приближаясь к своей двери, я запнулся о какую-то, старую и пыльную, коробку с надписью «Синклер совместимый компьютер 512к». Стало любопытно, что это за такой «Синклер» и что там, с чем совместимо, оглядевшись по сторонам и убедившись что никого рядом нет, я поднял довольно увесистую коробку и занес ее домой.
          Читать дальше →
        • VCL, избавляемся от мерцания, раз и навсегда

          • Tutorial

          Delphi и C++Builder разработчики, использующие VCL не по наслышке знают о вездесущей проблеме мерцания контролов. Мерцание происходит при перерисовке, вследствие того, что сначала отрисовываеться фон компонента, и только потом сам компонент.


          И если в случае с наследниками от TWinControl частичным решением проблемы является установка свойства DoubleBuffered в True, что заставляет контрол отрисовываться в буфере (однако DoubleBuffered работает тоже не идеально, к прим.: контрол перестает быть прозрачным), то в случае с TGraphicControl решение с DoubleBuffered просто невозможно, из-за отсутствия у TGraphicControl окна, установка же DoubleBuffered в True у родителя не помогает, из-за того что отрисовка вложенных TGraphicControl-ов происходит уже после прорисовки родителя в буфере.


          Обычно остается только одно — смириться с мерцанием, и максимально упростить отрисовку для минимизации эффекта, или использовать по возможности исключительно TWinControl-ы, что не всегда возможно и удобно.


          Однажды намучившись с мерцанием, я не выдержал и решил решить эту проблему, раз и навсегда!


          Как мне удалось решить проблему?


          Читать дальше →
        • Fire-Monkey help and tips



            За годы существования фреймворк Fire-Monkey(FMX) претерпел множество изменений, и если с самого начала он был очень сырым и ненадежным, то сейчас это намного более стабильная и надежная платформа.

            Данная заметка представляет из себя сборник из нескольких полезных советов для разработчиков использующих данный фреймворк.
            Читать дальше →
          • Заметки о встрече с Оперой



              Я, как преданный поклонник оперы на Presto понимаю, что статья выйдет субъективной, но я буду стараться писать как можно объективнее.
              Прошу не сильно пинать, если вышло сумбурно, впервые пишу подобный отчет.
              Прежде всего, хочется сказать спасибо Опере за проведенную встречу, было очень интересно.

              Встреча прошла в It-баре KL10CH и состояла из двух частей, двух лекций и неформальной сессии вопросов и ответов.
              Продолжение
            • Стиль WS_EX_LAYERED для дочерних окон в Windows 8

              • Tutorial
              В Windows Вы не можете просто так сделать полупрозрачный элемент управления, Вы должны либо рисовать все контролы сами(Qt, FMX) либо использовать DrawThemeParentBackground, что неминуемо приводит к тормозам.
              Регионы тут не помогут т.к. они не поддерживают частичную прозрачность.
              Было бы удобно использовать окна со стилем WS_EX_LAYERED («Слоистые» окна поддерживающие альфа прозрачность отдельных пикселей), однако Windows поддерживает этот стиль только для окон верхнего уровня. Так было до Windows 8 в которой, не прошло и полвека, наконец-то стало возможно назначать этот стиль дочерним окнам.

              Что это дает? Первое что приходит в голову, это то, что композицией окон будет заниматься видео карта, что даст прирост производительности.

              Под катом небольшое исследование этой возможности Windows 8.
              Читать дальше →
            • Обзор Appmethod [Много картинок]



                Upd 10.11.16: Статья во-многом потеряла свою актуальность, начиная в RAD Studio Seattle, FMX стала более-менее пригодной для разработки.

                В данном посте я выражаю свое мнение, и он может показаться слишком эмоциональным.
                Некоторое время назад Embacadero анонсировала Appmethod — среда разработки для Windows, OSX, iOS, Android, с помощью Firemonkey.
                На Techcrunch обещали, что будет Express версия но сразу после официального выхода Appmethod стало известно что, возможно будет, но будет иметь ограничения: http://www.embarcadero.com/products/rad-studio/appmethod-faq. Скачать триальную версию можно здесь: http://www.appmethod.com/.
                Лично я возлагал большие надежды на Appmethod, надеялся что они, наконец, исправили глупые баги Firemonkey.
                Читать дальше →
              • Немного о создании демок, часть 1

                • Tutorial
                Здравствуйте!
                Эта статья, прежде всего для новичков, тех, кто только решил заняться демосценой, если статья будет положительно принята сообществом, то я сделаю цикл из нескольких статей о создании демок. Каждая статья будет короткой, но в конце каждой статьи будет вполне рабочий пример.
                Сразу предупрежу, эта статья не о том как делать Demo с помощью OpenGL, DirectX, и миллионов шейдеров, об этом есть много хороших статей, я буду писать о рисовании в памяти.
                Подробности
              • Создаем Splash Screen на Delphi

                image
                Если при загрузке программы, показывается Splash Screen (это небольшое окно с картинкой), то к таким программам пользователи относятся лучше, чем программам, при запуске которых несколько секунд ничего не происходит.
                В интернете есть много примеров изготовления Splash Screen-а в Delphi, однако обычно это квадратная форма с натянутой на ней картинкой.
                Но у многих программ это не квадратная форма, а красивое окно со сглаженными краями.
                Я пытался сделать такое окно с помощью регионов, но края были неровные и смотрелись неказисто.
                Выходом стали «Слоистые окна» (LayeredWindow).
                Читать дальше →