http://100oboev.net/upfile/img/thumbs/760x550/image1252253723866.jpg, или скорее даже
http://ic.pics.livejournal.com/karpukhins/42169992/331412/331412_original.jpg . Хочу реализовать силами движка Source 2009 [hl2dm]. Вообще, достаточно упрощённо можно представить это как актор heightfog из UE3. Мне нужно, чтобы на определённую высоту над уровнем поверхности, скажем, воды, шла полупрозрачная дымка. В рамках мультиплеера на открытой карте на движке Source смоуквольюм для этого дела не подходит. Помогите придумать оптимальное решение.
Моя идея под номером 1 - постелить на воду модель размером со всё игровое пространство, представляющую из себя сендвич из плоскостей минимальной прозрачности. Вытекающая из этого дела проблема - наложение альфатестов друг на друга, я не пробовал, но подозреваю, что появятся артефакты. Поскольку я все эти месяцы мучаю концепцию болота, у меня полно альфатестовых камышей, и если друг с другом эти камыши дружат, то как будут дружить с транслючентным сендвичем плоскостей - хрен его разберёт.
Моя идея под номером 2 - делать всё дисплейсментами с анлитгенериком и $vertexcolor, $vertexalpha-материалом. Однако, если дисплейсменты и не будут иметь проблемы прозрачности "$translucent", то они будут иметь овердохрена полигонов. Пусть это и позволит убрать лишний туман над сушей и вообще деформировать его, сделав не мёртво-горизонтальным, а волнистым, но (два полигона)*(количество слоёв в одном сендвиче) всяко меньше чем 2*(4^(хрен знамо какой displacement power))*(количество слоёв)*(количество использованных по всему игровому пространству дисплейсментов в одном слое).
Прошу помощи, поскольку душа просит маппинга, а ленивое тело развалилось в кресле и играет с Барнаклом в стрит файтер.