|
3D-программирование Вопросы, касающиеся программирования 3D мира |
28.06.2011, 18:50
|
#46
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Сообщение от Mr_F_
одни инженерные и математические познания не позволят тебе писать эффективные программы. следует понимать как работает оборудование хотя бы в общих чертах и стараться использовать его для выжима наибольшей производительности.
|
О, эти слова ранили меня в самое сердце.
Сообщение от Mr_F_
построение тени по законам начерталки тебе никак не поможет в реалтайме.
в общем, МоКа всё правильно написал.
|
Мои препод по начерталке выцарапал бы ответ циркулем на внутренней поверхности вашего черепа, милорд. У начерталки нет законов, есть приемы Это не наука. Это как каллиграфия, что ли.
Mr_F_, поверьте причины сподвигшие меня на эксперименты с блитз не совсем тривиальны И да, программист тоже инженер
|
(Offline)
|
|
28.06.2011, 18:59
|
#47
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Имитация водной поверхности.
dsd
Начерталка - это одно дело, но инженерия в плане программного обеспечения - другое. Наличие хорошего мозга - это не заслуга начерталки.
Я тоже занимался архитектурингом, полтора года отработал ассистентом, под конец всё сам делал. И считал тоже (инженерия) конструкции. Круто конечно, развивает некоторые аспекты логики и способности, что влияют на общую степень образованости и прогрессивности в мышлении, но не имеет ничего общего с програмным обеспечением.
Тут с тенями например, тоже смекалка. И тени в next-gen - это не геометрия вовсе, там всё совсем иначе, например Shadow Maps - вообще никакой связи с геометрией, там чисто смекалка..
|
(Offline)
|
|
28.06.2011, 19:03
|
#48
|
Бывалый
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений (для 450 пользователей)
|
Ответ: Имитация водной поверхности.
Никто не спорит что ты взяв циркуль (или че там надо (не обучен начерталке)) построишь тень. Однако в 3д графике используются несколько другие методы (есть даже пара вариантов на блице), ибо нужна высокая производительность.
|
(Offline)
|
|
28.06.2011, 19:39
|
#49
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Имитация водной поверхности.
Да это глупо сравнивать такие вещи, это как художник скажет химику что он может создать любого типа краситель, ведь он работает с цветом!
|
(Offline)
|
|
28.06.2011, 20:01
|
#50
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Нашел приличную текстуру воды и прилепил велосипед. Теперь похоже на воду
Последний раз редактировалось dsd, 10.08.2011 в 03:06.
|
(Offline)
|
|
28.06.2011, 20:39
|
#51
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Имитация водной поверхности.
Давно писал на шейдерах, когда только начинал это дельце изучать.
Более реалистично и с красивенькими рефлекциями и рефракциями.
Основной "прикол" в том что тут не юзается никакая деформация геометрии. Волны да, для озёрной воды, или мелких источников, не для океана или моря. Но и это дело можно сделать, нада тупо посидеть..
Более ранние потуги:
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
|
|
28.06.2011, 21:22
|
#52
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Если ввести переменную связанную с глубиной, т.е. Фактически высота воды — высота террэйна в данной точке, и найти ближайшую точку пересечения плоскости воды с террэйном(для изменения направления распространения волны), то можно организовать практически правильный прибой(изменение волн по мере приближения к берегу). Надо найти таки математическую модель воды походу довольно легко можно организовать интересную в игровом плане воду.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
28.06.2011, 22:13
|
#53
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Имитация водной поверхности.
Сообщение от dsd
Если ввести переменную связанную с глубиной, т.е. Фактически высота воды — высота террэйна в данной точке, и найти ближайшую точку пересечения плоскости воды с террэйном(для изменения направления распространения волны), то можно организовать практически правильный прибой(изменение волн по мере приближения к берегу). Надо найти таки математическую модель воды походу довольно легко можно организовать интересную в игровом плане воду.
|
Прибои и т.п. реализуются очень просто исходя из шейдеров. Представь у тебя есть сетка воды, и есть уровень. Один раз в начале анализируешь уровень (с ландшафтом просто, сложнее с другой медией), находишь вершины где должны быть прибои и т.п. это может быть динамичный параметр, и записываешь его в вершину. С нормальными движками, в таком случае заюзать нужно кастомный класс вершин, но в том же Xors3D можно заюзать один из каналов цвета вершины.
Это делается один раз лишь, можно даже сделать предрасчётом в редакторе, и сохранить в файл, и грузить из файла инфу, чтобы не делать большие расчёты при загрузке игры.
Далее, всё очень просто, в вершинном шейдере делаем все расчёты волн, плюс учитывая один из каналов цвета у вершины который мы сохранили, мы знаем где прибой, и таким образом можно сделать при повышении волны в том месте, повышать на 50% выше. Плюс - это как маска для пены.
Всё просто на деле, но нужно найти смекалку, сделать маленькое исследование и затем тупо реализовать. Многим это проблематично, т.к. они не могут найти решения до реализации, и начинают много эксперементировать..
Также, используя depth карту, можно реализовать плавный переход воды:
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
28.06.2011, 23:33
|
#54
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
А как в хорсе кол-во точек в сюрфэйсе посчитать? О_о Вроде команда есть, но в справке её вроде нет.
|
(Offline)
|
|
28.06.2011, 23:41
|
#55
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Имитация водной поверхности.
так же, как и в блице.
наскоко я помню ещё в блице сюрфейсы по непонятной причине начинались с 1, а в ксорсе, как положено, с 0.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
|
|
28.06.2011, 23:48
|
#56
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Хм, короче надо экспериментировать с начала, пока выяснил, что в хорсе поверхности начинаются с 0, а не 1 как в блитце. Вот не люблю я этого, чилды с единички, а вертексы с нуля
Это не единственное отличие судя по мавам моей воды, не получилось на прямую портануть воду добавкой x
|
(Offline)
|
|
28.06.2011, 23:53
|
#57
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Имитация водной поверхности.
такого нет ни в блице, ни в ксорсе
|
(Offline)
|
|
29.06.2011, 00:00
|
#58
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Ну значит пригючилось мне, но по моему чилды имеют номера с 1, а не с 0.
|
(Offline)
|
|
29.06.2011, 00:02
|
#59
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Имитация водной поверхности.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
29.06.2011, 00:11
|
#60
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Имитация водной поверхности.
Как вертикальную синхронизацию убить в хорсе? Хочу полную скорость, а то так не понятно лучше хуже мои 3д извращения. Или проще таймеры ставить и мерять по функциям?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 17:52.
|