* * * Форумы на Наша-Life THREAD * * * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- THREAD : HDR skybox и пара моментов Started at 17-01-2010 23:14 by redbox Visit at https://forum.nashalife.ru/showthread.php?threadid=53082 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 1] Author : redbox Date : 17-01-2010 23:14 Title : HDR skybox и пара моментов как говорится, хочется взять слона и вымыть дорогим хорошим шампунем, т.е. хочется чего то такого большого и чистого. вобщем надумал сделать небо. попарился с самой тестурой, ну и дабы завершить этот процесс побыстрее запек диффуз на купол. вот что получилось и этого мне достаточно. [url]http://img97.imageshack.us/img97/9239/40713302.jpg[/url] потом скомпилил модель, сделал материал и решил еще пройтись по этому тутору [url]http://developer.valvesoftware.com/wiki/HDR_Skybox_Creation[/url] в итоге получил такой вот материал [b]"sky" { "$hdrbaseTexture" "environment\sky/sky_hdr" "$nofog" "1" "$ignorez" "1" "$basetexture" "environment\sky/sky" }[/b] на sky_hdr у меня, как их называют, хайлайты, т.е. просто подсвеченые участки, а на sky у меня базовая текстура, т.е. то что в туторе называют LDR. надеюсь я все понял правильно... поставил купол над скай камерой, скомпилил, вобщем и целом вышло неплохо, но... хочется добавить жизни. насколько я понимаю анимированная текстура здесь не катит, HDRа на ней не будет. вариант - анимированная модель? хотелось бы услышать ваше мнение... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 2] Author : FishMan Date : 18-01-2010 02:49 Есть такая штука как прокси, ей можно анимировать всё что угодно, саму модель ская можно сделать как слоеный пирог, тогда у тебя появится такое понятие как deph, то бишь глубина, иными словами эффект объёмности появится, а не просто плоско всё это будет, далее можно каждый слой этого пирога анимировать и тогда вообще всё круто будет... Далее... [quote]как говорится, хочется взять слона и вымыть дорогим хорошим шампунем[/quote] Чтобы помыть слона, нужно пойти в магазин, купить там шампунь и щётку, слон у тебя уже есть, должен быть в гараже, посмотри, в общем намыливаешь слона шампунем и трёш щёткой пока черные пятна не пропадут, потом поливаешь его водой пока шампунь весь не стечёт и можно сказать, что почти вышло. Останется только протереть слона на сухо и готово. Не за что... А модели поддерживают "sky" шейдер? Оо HDR, я так понимаю, ты компилировал? По поводу, что работает, что не работает думаю лучше маньяка тут никто не проконсультирует... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 3] Author : manJak Date : 18-01-2010 08:51 Не вижу причин, по которым Sky не может работать на моделях, но.. как-то это.. необычно)) Есть, кстати, шейдер Cloud. Правда хз чем он от UnlitTwoTexture отличается) Посмотреть можно в nature/cloud001c.vmt и в shadertest/ ещё есть. И в контре на 3д-скаёвой купольной модельке ещё. > на sky_hdr у меня, как их называют, хайлайты, т.е. просто подсвеченые участки, а на sky у меня базовая текстура Гм.. Вообще, $hdrbasetexture используется только в хдр-режиме, а $basetexture - только в лдр. Так что просто хайлайтами не обойдёшься) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 4] Author : Barnacle Date : 18-01-2010 09:18 [QUOTE][i]Оригинальное сообщение от manJak [/i] [B]Не вижу причин, по которым Sky не может работать на моделях, но.. как-то это.. необычно))[/B][/QUOTE] Ну, почему же необычно? Я знаю, по крайней мере, одну игру, где используется такой метод - Painkiller. :D Там используется купол максимум из 4-х слоёв мешей, на каждом из которых в тамошнем редакторе можно смешать до 2-х текстур. :) Думаю многие видели небо в Painkiller'е - выглядит оно классно. Если постараться, то можно и на Source повторить подобное. :) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 5] Author : manJak Date : 18-01-2010 09:25 Нее, "необычно" - это я про использование шейдера Sky на моделях. А слоёные облака-модельки, они, конешно, рулез) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 6] Author : redbox Date : 18-01-2010 09:42 так собственно вопрос и не решен, будет ли работать хдр на анимированной текстуре? я так понимаю он запекается, а если текстуру двигать, то это будет черти что... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 7] Author : manJak Date : 18-01-2010 10:11 Эмм, запекается куда?) В лайтмапы на карте? Неа, в лайтмапы запекается эмбиент light_env. Так что дело просто за тем, чтобы создать анимированную текстуру формата RGBA16161616 или RGBA16161616F)) Ну или скролить её просто.. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 8] Author : Lex4art Date : 18-01-2010 11:19 В круизисе я делал так так: - заюзал чистое HDR-небо без облаков. Если хочешь - могу дать уже скомпиленное дневное HDR-небо для сорса (чистая синева, без облаков). - сделал гигантскую модель полусферы с инвертированными внутрь поликами, накрывающую весь уровень куполом. - на эту модель наложил текстуру легких перистых облачков с облачным шейдером(в сорсе - ключ $additive 1 в vmt наверно и все дела). - для разнообразия дублировал эту полусферу, наложил на неё текстуру с другими облачками. Остается анимировать мееедленное вращение этих двух полусфер в противоположных направлениях и готово (или проще - анимировать текстуры на них проксей вращения). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 9] Author : FishMan Date : 18-01-2010 11:39 Что я собственно и сказал в начале ) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 10] Author : redbox Date : 18-01-2010 13:55 ну я седня в анриле попробовал... получилось почти нормально, правда там есть пара неприятных моментов. мои 8 битные маски почему то херятся, и получается то что вы видите, + там один шов на текстуре провтыкал, ну это такое... вобщем получилось 2 тектуры + 2 альфа маски, ну и все это дело двигается + маски дивайдятся одна на другую. выглядит как то так [url]https://www.youtube.com/watch?v=B7Ye5uFP5eg[/url] терь надо придумать как это в сорсе сделать. буду вечером пробовать. спасибо за советы. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 11] Author : manJak Date : 18-01-2010 15:42 Прикольно вышло. :) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 12] Author : redbox Date : 18-01-2010 20:38 мдя, а запхнуть какую либо свою текстуру в качестве маски альфа канала нельзя получается? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 13] Author : Lex4art Date : 19-01-2010 02:36 А какой формат текстуры ты заюзал, когда ужимал в dds? Если DXT1-3-5 - логично, они грубоваты для неба (cжатие с потерями). Надо uncompressed RGBA - тогда все будет ок. Для сорса аналогично - uncompressed with alpha нужно, все остальное даст грубые квадратики артефактов. P.S. смотрится круто! ^^ -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 14] Author : manJak Date : 19-01-2010 08:00 redbox, нет, низя( -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 15] Author : redbox Date : 19-01-2010 08:06 manJak, отож, ладно, видимо прийдется слоеной моделью делать. вариант еще покопаться в шейдерах и сделать своих проксей и переменных для таких дел. странно конечно что такая возможность не поддерживается... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 16] Author : Stone Date : 19-01-2010 12:25 [quote]странно конечно что такая возможность не поддерживается...[/quote] You are welcome (c) Source engine :D -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 17] Author : redbox Date : 19-01-2010 17:42 ну, я не ради навороченного рендера к сорцу вернулся. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 18] Author : FishMan Date : 20-01-2010 02:32 Почему нельзя то? "$cloudalphatexture" "test/cloudalpha" Пример: [code] "Cloud" { "$baseTexture" "test/sky_clouds1" "$translucent" "1" "$cloudalphatexture" "test/cloudalpha" "$cloudscale" "[ 4 4 4 ]" "$maskscale" "[ 1.00 1.00 1.00 ]" "Proxies" { "TextureScroll" { "Texturescrollvar" "$baseTextureTransform" "Texturescrollrate" 0.01 "Texturescrollangle" 0.05 } "TextureScroll" { "Texturescrollvar" "$envmapmasktransform" "Texturescrollrate" 0.005 "Texturescrollangle" 0.1 } } } [/code] -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 19] Author : manJak Date : 20-01-2010 08:57 FishMan Ыть я слепой. :D Хотя там выше я про Sky говорил в любом случае.. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 20] Author : FishMan Date : 21-01-2010 11:57 А это говорит о том, что все не идеальны ) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 21] Author : Xelious Date : 21-01-2010 13:38 FishMan "все не идеальны" Спасибо, Кэп! :D -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 22] Author : FishMan Date : 22-01-2010 00:07 Ой убейся троль :D -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 23] Author : manJak Date : 23-01-2010 12:58 > все не идеальны Ну ясное дело) Для того и форумы, в частности, чтоб каждый каждого поправлял) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 24] Author : redbox Date : 24-01-2010 21:30 ну вобщем получилось. 3 полусферы, одна меньше другой, на первой базовое небо, на двух последующих 2 слоя облаков. я сделал 2 варианта. в первом базовое небо чистое и на горизонте солнце. естессно в том месте и засвет облаков самый высокий. при таком раскладе все прикольно видно, но небо палится тем что оно полусферное. видно как облака "падают" за горизонт. во втором варианте на базовом небе облака, статические. при этом небо не палится, но все очень как то размыто получается. и еще для каждого из вариантов приходилось отдельно подбирать значения экспозиции. и наверно я их еще покручу. есть один глюк. когда я опускаю взгляд ниже горизонта, там где по идее куполы заканчиваются, на небе появляются блики. видимо это из за того что там 3 полусферы одна под другой и начинается какой то z-файтинг что ли, хотя полусферы где то на 5% одна меньше другой. ну хз. если есть идеи говорите. продемонстрирую оба варианта, не знаю правда что вы там разглядите в ютубовском качестве... [url]https://www.youtube.com/watch?v=Ya5tEig9iyM[/url] [url]https://www.youtube.com/watch?v=8261ugLAaMk[/url] ну и самое главное что все это без добавления своих шейдеров проксей и проч. всем спасибо! :) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 25] Author : Lex4art Date : 25-01-2010 06:51 Чтобы с края облака меньше палились - можно в этом месте сжать UV-разверстку на сфере - тогда они будут "перетекать и сжиматься" что мб ближе к реальному виду горизонта :). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 26] Author : STRELOK Date : 25-01-2010 07:14 Ребят, я не очень понял. Сферу(или купол, что расположим в скайбоксе), получается, можно покрыть анимированой текстурой неба? Как же hdr тут будет действовась? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 27] Author : redbox Date : 25-01-2010 08:45 нет, анимированные текстуры не катят. материал облаков не хдрный, хдрный только базовый материал неба на самой верхней полусфере, и он статический. облака обычные translucent additive. [size=1][i]redbox добавил [date]1264409654[/date]:[/i][/size] [b]Lex4art[/b] скорей всего я решу эту проблему туманом :) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 28] Author : STRELOK Date : 25-01-2010 12:32 redbox, получается небо просто покрыть текстурой, а вот облака это все эффект на подобии Cloud? Ну да, как пирог получиться :) А можно на сами карты глянуть, когда завершите? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 29] Author : redbox Date : 25-01-2010 13:04 карты-уровни или карты-текстуры? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 30] Author : STRELOK Date : 25-01-2010 17:33 Карты-уровни. Я бы хотел глянуть пример такого "чуда" ;) А если что, в будущем попробую что то в этом роде состряпать с парочкой хороших знакомых [size=1][i]STRELOK добавил [date]1264441245[/date]:[/i][/size] Ну пример разумеется на видео я видел, мне этого мало. Хотел еще кое что проверить -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 31] Author : Stone Date : 25-01-2010 19:33 Да, 100% развертку неплохо бы сжать к низу купола, причем весьма основательно - сейчас фокус "купола" сразу становится очевиден. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 32] Author : redbox Date : 26-01-2010 06:00 еще такой момент хотелось бы уяснить. в еп2 скайбоксовые текстуры front, back и т.д. имеют размер 512*256. т.е. она маленькая по высоте. ну они и пишут "$basetexturetransform" "center 0 0 scale 1 2 rotate 0 translate 0 0" но на скайбоксе текстура все равно вытянутая. они где то еще ее скейлят или так и должно быть? просто когда смотришь в игре, кажется что ниче там не вытянуто... О_о -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 33] Author : manJak Date : 26-01-2010 07:30 redbox, по идее просто бокс рисуется не 1x1x1, а 1x1x0.5. Где-то всё же это включается/выключается, но хз где. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 34] Author : redbox Date : 26-01-2010 07:51 угу, понятно, надо порыться на их картах, может чего прояснится. не может это быть в свойствах скай камеры? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 35] Author : manJak Date : 26-01-2010 07:58 Врядли.. Скай камера ведь не обязательна для размещения на карте. Может в настройках мира, может в консольных переменных, может и вовсе в слиентском коде) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 36] Author : redbox Date : 27-01-2010 19:58 попробовал сделать как у них, оказалось что vtex нехочет компилить неквадратную текстуру, потому что квадратная нужна для кубомап. кто нить знает инструкцию которой это можно того?.. [size=1][i]redbox добавил [date]1264629299[/date]:[/i][/size] ладно, перекинул через фотошоп. а все таки есть команда? немного прояснилось то что я назвал z-файтингом. альфатест ничего не изменил, наоборот сделал еще хуже, ну думаю вы в курсе, там видимо 8 битная альфа не катит. я досмотрелся что мерзание происходит когда взгляд камеры переходит с неба на любой объект в мире, концы полусфер здесь роли не играют. видимо это проблемы рендера. есть еще вариант поставить облака не на скайбоксе а на карте, но мне кажется что с сорцовским размером карт это самая неудачная идея. :) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 37] Author : ROCK Date : 31-01-2010 00:02 транслюсент это ахиллесова пята dx9 рендера. в большенстве извстных мне движков проблема никак не решена. когда мы столкнулись с такой проблемой в диффиред шейдинг рендере то все просто-напросто уперлось в производительность. поэтому решение либо отказаться от транслюсента вообще либо делать его однослойным =( -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 38] Author : Lex4art Date : 31-01-2010 00:51 На сколько я понимаю - и в DX10/10.1/11 тоже, но в DX11 уже можно через внешний вызов CUDA/DirectCompute выполнять точные вычисления для прозрачности (у АТИ есть демка с роботом как раз про это). Не знаю почему не сделали через шейдеры - мож я чего напутал, может выгоднее так. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 39] Author : manJak Date : 31-01-2010 09:17 Эммм.. Выачом? о_О Я не понял о чём речь ни в посте Редбокса, ни в постах Рока и Лекса. :D [i]Покажите[/i] мне) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 40] Author : KLIMaka Date : 31-01-2010 09:58 О Гоги-гоген! Опять транслюсент!!!! Ну не нужно транспарент называть транслюсентом, это же разные вещи! Ну что с того что вальвы так говорят? Ну они еще диффуз называют альбедо, ну не перенимайте дурных привычек! -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 41] Author : Lex4art Date : 31-01-2010 10:37 Маньяк - обсуждается глюк: [url]http://enc.nashalife.ru/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Translucent.jpg[/url] (нарушение порядка наложения друг на друга текстур, имеющих полу-прозрачность). Решается в dx11 как то так: [url]http://developer.amd.com/samples/demos/pages/ATIRadeonHD5800SeriesRealTimeDemos.aspx[/url] (или [url=http://www.ixbt.com/video3/cypress-part1.shtml]тут[/url] прокрутить до Order Independent Transparency). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 42] Author : manJak Date : 31-01-2010 11:46 Аа, дык блин ёмаё)) OIT реализуема на практически любом железе методом depth peeling-а.. Хотя, когда об этом заботится само железо, эт конечно хорошо. :) Только в данном случае это всё - как из пушки по воробьям) Полусферы надо тупо рендерить в определённом, вручную устаномленном, порядке. Котинга - код наплакал) KLIMaka =D -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- The messages has been download from Форумы на Наша-Life at https://forum.nashalife.ru at 02.11.2024 06:36:57