пятница, 17 июня 2011 г.

Второй отчёт


Потихоньку двигаюсь вперёд. Со времён первого отчёта подшаманил поведение противников , сделав несколько моделей поведения. Внешне в общем ничего пока не изменилось , сейчас всё ещё доделываю геймплей и задники.


Собственно  отсюда начались проблемы. Решил заделать красивое небесное светило на задний план, полтора часа осветлений, затемнений и размазывания пальцем в GIMP'е и светило было готово, но вот беда с прозрачностью возникла.
Само светило не должно быть прозрачным, но прозрачным должен быть ореол света вокруг него, стандартный материал сцены  не позволяет наложить маску чтобы прозрачность не распространялась на всё, а чтобы вообще всё хорошо было, надо  чтобы анимированное светило было . На скринах светило с прозрачностью от интенсивности.


Такая вот беда.

to be continued...

7 комментариев:

  1. Шейдеры тебя спасут, либо стенсил буфер и DirectOpenGL... но шейдеры проще) Если есть желание и время это все прикручивать.

    А вообще, форматы png и dds (из того что сам проверял) позволяют ведь хранить частичную прозрачность, и сцена их вроде бы загружает, нет?

    Или я неверно понял задачу?

    ОтветитьУдалить
  2. Ну вот и сам думал шейдерами делать, только опыта в этом маловато, а насчёт dds и png даже не знаю, ну спасибо попробую

    ОтветитьУдалить
  3. В шейдерах все упрется опять же в то, что тебе придется как-то загружать подобную маску. Но если задача именно в полупрозрачных областях, то png точно поможет.

    При сохранении png нужно сохранять interlaced png - тогда сохраняется для каждого пикселя альфаканал. Не знаю, но GIMP должен уметь его сохранять :)

    При загрузке в сцену принудительно альфу не указывал (т.е. tiaDefault или как-то так), указывал TextureMode =tmModulate, BlendingMode=bmTransparency и все

    ОтветитьУдалить
  4. С PNG не получилось, делфи со старой сценой не может скомпилить GLTextureFormat и сам GLFilePNG , Лазарус с последней сценой нормально загружает , но без прозрачности.
    Попробовал TGA на Лазарусе всё нормально грузит с прозрачнотью. В общем спасибо решил эту проблему, если делфи со старой сценой не загрузит ускорю переезд проекта на лазарус.

    ОтветитьУдалить
  5. Хм, я перешел на относительно новую сцену - стараюсь ее постоянно обновлять с SVN-репы. Кстати, насчет шрифтов - не уверен, что на старой сцене без багов заведется TGLWindowsBitmapFont. Яр там чего-то шаманил, как с ним, так и с TGLBitmapFont

    ОтветитьУдалить