Создание региона

Тема в разделе "WASM.BEGINNERS", создана пользователем Sturgeon, 9 июл 2007.

  1. Sturgeon

    Sturgeon New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2006
    Сообщения:
    111
    Mikl__
    Я в курсе:) Я про сорцы анимированных регионов с win32assembly. Это то, на что ты давал ссылку выше.
    Чего то плохо у меня получается с ними разобраться. Spanska уж больно хитро делает регионы. Как я понял, он из структуры bmp-файла получает смещение растра и по нему уже создает регион. Немного неудобно тем, что приходится таскать в ресурсах бмпэху. А если там 10 кадров размером 250х200, то размер... Там же все экзешники пожаты, а после распаковки весят по 500 кб. Чего-то для примитивных прог на асме очень много. прог Хотя может быть по другому и не получится.
    Еще раз перечитаю Петзольда (старикан уже наверное в гробу переворачивается).
    Я хочу сделать примерно следующее. Отображать статичную картинку и анимашку. И, чтобы регион обрезал и картинку и анимацию. Представляю себе это примерно так. В обработчике WM_PAINT рисовать картинку и очередной кадр анимации, после этого создавать регион уже для контекста окна. Пока результатов нет:dntknw:
     
  2. Mikl_

    Mikl_ New Member

    Публикаций:
    0
    Регистрация:
    14 ноя 2006
    Сообщения:
    907
    Sturgeon
    В настоящей анимации (Союзмультфильм, Дисней) всю картинку от кадра к кадру не перерисовывают. Рисуется фон, на него кладут кусок прозрачной пленки, на котором нарисован например Микки Маус. У самого Микки, тоже от кадра к кадру движется не вся фигурка, а только глаза, или сгибаются-разгибаются руки ноги, которые и будут прорисованы на следующем слое пленки - это идея спрайтовой анимации. Из твоих 10 кадров 250х200 вычленяется статический фон, на который накладываются небольшие квадраты (предварительно сохранив то, что под ними находится) с движущимися фигурками или частями фигурок
     
  3. Sturgeon

    Sturgeon New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2006
    Сообщения:
    111
    Mikl__
    Из этого вроде бы и следует отображение одновременно статика и анимации. Разве нет:)? Правда мои художественные способности оставляют желать лучшего, и я пока просто вожусь с прыгающими свинтусами.
    Вроде получилось сделать.
    Сделал с помощью LAYERED. Выше mc black говорил про такую возможность, но я сначала хотел попробовать именно с регионами поиграться. С регионами чего-то не получается, и поскольку я пока не нашел сильных отличий между регионами и LAYERED, то с чистой совестью использовал последнее. Вижу от этого только плюсы. В качестве картинки использую гиф, а не бмп, что крайне положительно сказывается на размере программы.
    В аатаче прикрепляю исходники анимированного региона.(10 кб) Кому интересно, прошу посмотреть и попинать за ошибки. Только не больно:)

    Чего-то при первой отправке нет возможности прицепить файлик. Сейчас поправим.