Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Полупрозрачность в HMM
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III
Страницы: 1, 2, 3
Spartak
Я вот подумал, а можно ли сделать Подводную месность, что бы спомощью полупрозрачности на такой местности появлялиь различные пузырики.. подводные течения и т.п.
???
FCst1
Можно ещё вопрос - с помощью какой программы создаются APNG?
Aleee
Предлагалась подобная идея (и даже лучше) - разделение водного пространства на зоны по глубине: прибрежная, обычная, глубинная и т.п.

404, повторите правило правописания "не" с прилагательными и причастиями и не заставляйте меня каждый раз натыкаться взглядом хотя бы на "не объяснимо".
FCst1
Цитата(Aleee)
Предлагалась подобная идея (и даже лучше) - разделение водного пространства на зоны по глубине: прибрежная, обычная, глубинная и т.п.

HoMM IV?
Наложение одного ландшафта на другой с использовванием полупрозрачности (вода на песок - вот и мелководье wink.gif )
FCst1
Качаем мои первые эксперименты smile.gif
http://forum.df2.ru/index.php?showtopic=14482&st=20
Kastore
Указатель кривоват, мост в контуре. Остальное - высший класс. good.gif
FCst1
Кастор, как обычно повеселил. shum_lol.gif Указатель - из ВоГа, мост - вообще не то. smile.gif Тема-то про прозрачност, т.е. обратить внимание надо на туман и вуаль. biggrin.gif
-----
Ашыпка. ЭРА не может сделать прозрачным мой объект... Расширение с fc1 Поменял на pcx - не помогло.
Semen
нужно назвать так: evilpblue.fc.png
------------------------
Новая версия: http://slil.ru/27927430
Теперь может работать без Эры. Также выложены исходники.
Maestro
А инструкция по использованию прилагается, для чайников? (это я про себя laugh.gif)

Добавлено ([mergetime]1251141642[/mergetime]):
и невольный вопрос возникает...
PNG - это же непреведенное (к 256) многомиллионное изображение!
Каким образом там нарисовать обводку (255,255,0) и при этом сохранить размытость и плавность контура монстра?

Или я делаю реальное привидение, не имеющее четкого очертания, некая эфирная сущность - каким образом там обводку создавать?

Может просто сделать желтое расплывчатое сияние в нужных кадрах? Если не понятно, то могу примерчик выложить.

Хочется попробывать поднять графику на новый уровень, а четкость контура и обводки не дают душе разгуляться - толку-то от ПНГ с альфаканалом, если сглаженность монстра нарушается его обводкой. Ясен пень, что обводка лишь при наведении, но все же!
---
П.С. РЕСПЕКТ АВТОРУ!
Semen
Монстров наверное не получится делать полупрозрачными из-за бага в героях. В бою подойдите каким-нибудь монстром к другому и у него тень станет абсолютно чёрная. Это видимо из-того что под ним не перерисовывается фон и тень рисуется поверх уже нарисованной. То же самое будет и с полупрозрачностью.
Maestro
Значит - только для внешней графики?
Но и там есть нюансы того, что объекты могут настаиваться друг на друга, скажем, высокая башня а позади ее горы какие-нибудь.

Думаю, что нужно протестировать и то и другое.
feanor
А ссылки-то померли. У кого осталось - залейте на вог-архив?
Semen
У меня осталось biggrin.gif вот
MasterOfPuppets
Цитата
Изменения:
- Добавлена возможность запуска без Эры

Эмм... скорее, не добавлена, а заменена. А я, например, хочу использовать библиотеку как ранее - именно как плагин для ЭРЫ, без каких-то дополнительных параметров запуска, без inject_dll.exe.
Но так она не работает. (
baratorch
Цитата(hippocamus @ 06 Aug 2008, 01:09)
А также - попробуйте героем зайти за мельницу. Мельница станет полупрозрачной.

Несколько раз на форуме встречал подобные слова. Развенчиваю заблуждение smile.gif (хоть это ничего и не меняет)
В игре, когда герой находится за препятствием, карта рисуется так:
сначала рисуются почва и плоские объекты (реки, дороги, пр.),
поверх рисуется тень героя,
поверх рисуется герой,
поверх рисуется рельеф (горы, леса, мельницы, замки)
и поверх этого всего рисуется полупрозрачный дубль героя.

То есть это не мельница полупрозрачной становится а часть нижележащего непрозрачного героя отсекается, и становится видна часть вышележащего полупрозрачного героя.
Во как smile.gif.
Semen
Цитата(Master Of Puppets @ 21 Nov 2009, 19:52)
Эмм... скорее, не добавлена, а заменена. А я, например, хочу использовать библиотеку как ранее - именно как плагин для ЭРЫ, без каких-то дополнительных параметров запуска, без inject_dll.exe.
Но так она не работает. (

просто скопируй alpha.dll в папку EraPligins. У меня так работает.
MasterOfPuppets
Дык, я о том и говорю. Первая версия длл (без номера, 191 Кб) так работала/ет, а 1.1 (158 Кб) - нет.

Добавлено ([mergetime]1258851342[/mergetime]):
Или не работает, или вылетает.
MasterOfPuppets
Тема заглохла, а зря. Длл всё ещё далека от совершенства. Самый большой баг: с каждой новой картинкой всё больше возрастает время загрузки игры, всё больше жрётся памяти процесса. При размере папки replace в 33 мб (всего 120 файлов) процесс занимает 93 мб сразу при запуске, затем подскакивает до 145 мб в игре (обычный, ничем не патченный TE.exe ест всего около 18 при запуске и максимум 70 в игре). Процесс и вся система начинают тормозить, игра стала чаще вылетать без причины (возможно, затирается память). В общем, использование dll в нынешнем виде считаю нерациональным - разве что по самому минимуму. sergroj верно сказал, что ресурсы следует загружать по мере необходимости и выгружать, когда в них нет нужды.
Astaroth
У кого-нибудь есть alpha.dll? Плюс Семен вроде бы выкладывал исходники, может у кого есть?
Просто все ссыли битые
Etoprostoya
Как обычно, в ВоГ-архиве, http://wogarchive.ru/files/%D1%EE%F4%F2/alpha1.1.rar
Astaroth
Цитата
Как обычно, в ВоГ-архиве...

Ошибка 404. Страница не найдена sad.gif
Etoprostoya
http://zalil.ru/29808885
Тогда бери отсюда. Вытащил из одного мода к Героям. Мод называется ТПМ, не слышал о таком?
Astaroth
Цитата
Тогда бери отсюда. Вытащил из одного мода к Героям. Мод называется ТПМ, не слышал о таком?

Туплю, он у меня стоит, а я не видел smile.gif

Было бы зачотно, если б у кого-нить исходники были
feanor
http://zalil.ru/29809523
сорцы
Axolotl
Цитата(Semen @ 25 Aug 2009, 15:39) *
Монстров наверное не получится делать полупрозрачными из-за бага в героях. В бою подойдите каким-нибудь монстром к другому и у него тень станет абсолютно чёрная. Это видимо из-того что под ним не перерисовывается фон и тень рисуется поверх уже нарисованной. То же самое будет и с полупрозрачностью.



Цитата(Maestro @ 25 Aug 2009, 18:48) *
Значит - только для внешней графики?
Но и там есть нюансы того, что объекты могут настаиваться друг на друга, скажем, высокая башня а позади ее горы какие-нибудь.

Думаю, что нужно протестировать и то и другое.


Перескакиваю на эту тему, Feanor, Maestro вот вроде бы же Маэстро ты сам пишешь, что нельзя сделать существ.
Хоть без обводки попробовать хочется, ну и подумать заодно про обводку...
И второе, все ссылки мертвые... idontno.gif
FCst1
Держи:
http://rghost.ru/3793938
Не факт, что последняя...

А, не, последняя smile.gif
Axolotl
Так а все-таки о существах, как им сделать, если можно. С объектами я вроде бы понял, а тут как.
FCst1
Я не знаю - попробуй сделать несколько кадров существа "полупрозрачными" PNG, кинь в replace (несколькими страницами ранее было написано как и зачем) и попробуй протестить в игре. За результат не ручаюсь smile.gif
totkotoriy
Господа! Тут еще такая проблема с alpha.dll - при просмотре карты мира (или заклинания просмотр воздуха и т.д.) спрайт с альфа каналом превращается в полосочки banghead.gif Пытался разными способами обойти это: назначить другой тип объекту, чтоб при просмотре не отображался - не получилось, первую строку спрайта делал прозрачной - получилось, но тут поперли самые разнообразные ошибки в скриптах... что делать?
У меня есть исходник alpha.dll, но никак не могу даже его скомпилировать...
totkotoriy
Друзья! Сегодня знаменательный день! Некоторые баги alpha.dll побеждены! blink.gif
Теперь на карте мира полупрозрачные спрайты не превращаются в уродские полосочки и перестало вылетать, или автор давно исправил эти глюки, но не скомпилил или они устранились после немного другой сборки, в общим так или иначе теперь можно сносно использовать эту библиотеку!

Киньте alphaSE.dll в папку EraPluggins, остальные два файла просто в папку с героями, лучше старый alpha.dll удалить - не знаю что будет b_smoke.gif

alphaSE.dll

Напишите если найдете какие-либо баги!...

Кто захочет использовать без ЭРЫ напишите - расскажу как...
feanor
добре.

Теперь еще:

привязка к оригинальному разрешению

Код
    if( pInfo->screen_size.x != 800 || pInfo->screen_size.y != 600 )
        return OriginalDraw( Type, pImage, pInfo );


Код
    rect_cross( &Pos, &Size, vector( 0, 0 ), vector( 800, 600 ) );


Код
    color16 *pOld = &pInfo->pscreen[Pos.y*800 + Pos.x];

Код
        pOld += 800 - Size.x;


При этом действительное разрешение экрана передается в качестве pInfo->screen_size.x, pInfo->screen_size.y
Etoprostoya
Вот это я и хочу изменить, только скомпилиовать не смог.
feanor
Еще бы вылечить спрайты с шириной, не кратной восьми(
totkotoriy
Цитата(feanor @ 10 Mar 2011, 17:20) *
Еще бы вылечить спрайты с шириной, не кратной восьми(

Это не страшно края всегда можно прозрачными сделать...
Поставил 1600x1200 с HD+alpha работает, но пока какие то глюки.... если получиться вылажу альфу со всеми разрешениями

Ан нет! (*?:%;№
Прикиньте! Работает!
Тормозить аж начало...
Тестите короче....

alpha1600x1200
feanor
Цитата
Это не страшно края всегда можно прозрачными сделать...

Оппа. А я все время думал, что спрайт должен быть по размеру дефа. Сейчас проверил - действительно, работает, только смещается не очень понятно

Ага, ясно, оно просто идет не от левого верхнего угла, а центрируется
totkotoriy
Цитата(feanor @ 10 Mar 2011, 18:42) *
Оппа. А я все время думал, что спрайт должен быть по размеру дефа. Сейчас проверил - действительно, работает, только смещается не очень понятно

Ага, ясно, оно просто идет не от левого верхнего угла, а центрируется


А смещается потому-что в позиционировании спрайта как дефовские размеры участвуют, так и пнгшные... нужно исправлять код... оно вам надо?
feanor
Цитата
А смещается потому-что в позиционировании спрайта как дефовские размеры участвуют, так и пнгшные... нужно исправлять код... оно вам надо?

Нет. От центра - так от центра.
totkotoriy
Цитата(feanor @ 10 Mar 2011, 19:13) *
Нет. От центра - так от центра.

Спорить не буду, сильно не разбирался... ну все равно нужно тогда будет подправить код...
Etoprostoya
Цитата
Еще бы вылечить спрайты с шириной, не кратной восьми(

А что там за проблема?
feanor
Цитата
А что там за проблема?

Там спрайты определенной ширины (насчет кратности я наврал), к примеру, кадры для itpa.def, превращаются в странную мешанину красок
Etoprostoya
В общем, потестировал я разные PNG. PNG от тогокоторый в его версии плагина для ХД показываются нормально, а мои и Фикса - неправильно.

Цитата(feanor @ 10 Mar 2011, 18:33) *
Цитата
А что там за проблема?

Там спрайты определенной ширины (насчет кратности я наврал), к примеру, кадры для itpa.def, превращаются в странную мешанину красок

А если подробнее, а то я так ничего и не понял?
Etoprostoya
Некоторые PNG читает, а некоторые - нет (в частности, ВСЕ мои и FCst1):
totkotoriy
Цитата(etoprostoya @ 10 Mar 2011, 19:57) *
Некоторые PNG читает, а некоторые - нет (в частности, ВСЕ мои и FCst1):

А каким способом вставлены объекты? У меня тоже что-то подобное наблюдалось, например если я стандартный деф поменяю на свой - тогда не читаются, а если оставлю и заменю только его кадры пнг тогда все нормально... Это как-то легко должно исправляться...
Etoprostoya
Цитата
например если я стандартный деф поменяю на свой - тогда не читаются, а если оставлю и заменю только его кадры пнг тогда все нормально... Это как-то легко должно исправляться...

Точно! Мы же создавали новые дефы, а не заменяли стандартные.
Попробуй изменить тут (0xFFFF - стандартный для Героевских дефов бэкграунд RGB(0, 255, 255), а мы часто используем другой):
Код
if( ( *pNew & 0xFFFFFF ) == 0xFFFF ) // color for replacement
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2026 IPS, Inc.