22 Сентября 2024, 10:46:11
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Навигация по форуму







guest3d
Quest3D - Русскоязычное сообщество > Quest3D > Логика > Плоскость сечения
Плоскость сечения
(Прочитано 17546 раз)
  [1] 2
Печать
shkas | * | Новичок | Сообщений: 3 | « 08 Ноября 2009, 01:03:00 »
Плоскость сечения |
0
Привет всем, задали мне задачку -постепенный рост строящегося здания, как на приатаченной анимашке. Я так понимаю , что нужно сделать поднимающуюся плоскость , которая бы обрезала часть здания. Как это можно реализовать? В 3D пакете это можно сделать посредством булевых операций, а в Квесте есть подобное? 

* domik.gif (27.58 Кб, 160x120 - просмотрено 1438 раз.)
« Последнее редактирование: 08 Ноября 2009, 01:04:32 от shkas »
Viik | **** | Старожил | Сообщений: 302 | «Ответ #1 08 Ноября 2009, 01:31:10 »
Re: Плоскость сечения |
1
Цитата с офф форума:
Цитировать
You have a clip plane example in the Quest3D folder at "./Examples/Small Examples/clip plane.cgr"
shkas | * | Новичок | Сообщений: 3 | «Ответ #2 09 Ноября 2009, 13:22:55 »
Re: Плоскость сечения |
2
О, спасибо! Под носом лежало не заметил.
Плохо только, что это Clip plane не показывает у обьекта сам срез. Это реально как-то победить?

* vopros 1.jpg (24.57 Кб, 400x203 - просмотрено 1420 раз.)
Viik | **** | Старожил | Сообщений: 302 | «Ответ #3 09 Ноября 2009, 14:33:26 »
Re: Плоскость сечения |
3
Кто-то делал такое по хитрому, помоему брали копию модельки, флипали полики, и отрисовывали только эмисивом, например красным или синим цветом. Таким образом копия какбы заполняет места срезов.
Ну или шейдером покрасить. В нем же и клипинг можно мсделать.
shkas | * | Новичок | Сообщений: 3 | «Ответ #4 09 Ноября 2009, 15:08:43 »
Re: Плоскость сечения |
4
Супер! Получилось! Просто как все гениальное!Спасибо огромное!!
Campo | ** | Пользователь | Сообщений: 50 | «Ответ #5 24 Декабря 2009, 12:11:50 »
Re: Плоскость сечения |
5
кто знает как ограничить область сечения плоскостью (Clipping Plane)? к примеру как-нибудь ограничить её кубом или цилиндром...??

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

* pic.JPG (100.48 Кб, 1035x489 - просмотрено 1489 раз.)

* nods.JPG (42.37 Кб, 718x557 - просмотрено 1420 раз.)
« Последнее редактирование: 24 Декабря 2009, 12:15:35 от Campo »
DimiS | **** | Старожил | Сообщений: 284 | «Ответ #6 24 Декабря 2009, 15:17:15 »
Re: Плоскость сечения |
6
как ограничить область сечения я не знаю, но в случае с теми зданиями я бы разделил их на отдельные модельки и для каждой из них применял сечение отдельно.
Campo | ** | Пользователь | Сообщений: 50 | «Ответ #7 24 Декабря 2009, 21:33:04 »
Re: Плоскость сечения |
7
даже если модельки в разный рендер закинуть, а команду секущей между рендерами поставить, то она и на второй действует, а очистка от Clipping plane`ов убирает сечение и на первом рендере...

у модели вроде только к вертекс дате можно прикрутить эту Clipping plane, а толку ))
вообщем без понятия куда что прицеплять, чтобы плоскость резала только один объект, а остальные не трогала.

картинки и исходник ( версия 4.2.2 ) - в бетте 4.3.1 и демке 4.0.0  почему-то не работают Save Group\As\All Publish.  ((
* Clipping plane.cgr (75.91 Кб - загружено 749 раз.)

* nods.PNG (85.07 Кб, 540x570 - просмотрено 1434 раз.)

* pic.JPG (15.41 Кб, 723x316 - просмотрено 1410 раз.)
DimiS | **** | Старожил | Сообщений: 284 | «Ответ #8 24 Декабря 2009, 23:42:45 »
Re: Плоскость сечения |
8
второй рендер подключи на место пустого слота, а клиар рендер плейнс после него, и будет тебе счастие)
Campo | ** | Пользователь | Сообщений: 50 | «Ответ #9 25 Декабря 2009, 09:28:27 »
Re: Плоскость сечения |
9
эврика! спасибо за помощь, DimiS )
а множественное использование рендера не сделает проект более требовательным к ресурсам пк? грубо говоря тормозить будет больше или нет, если я подключу к примеру 20 рендеров..?

сейчас буду пробовать прицепить секущую к какому-нибудь объекту...

--- с наступающим всех!!! ))) ---
« Последнее редактирование: 30 Декабря 2009, 12:43:47 от Campo »
DimiS | **** | Старожил | Сообщений: 284 | «Ответ #10 25 Декабря 2009, 16:40:33 »
Re: Плоскость сечения |
10
ну если количество полигонов увеличить то и тормоз увеличиться, если та же геометрия будет нарисована с большим количеством вызовов то производительность уменьшится совсем не на много, на 20-ти вызовах ты этого не заметишь
Campo | ** | Пользователь | Сообщений: 50 | «Ответ #11 23 Января 2010, 22:12:11 »
Re: Плоскость сечения |
11
кто-нибудь представляет себе как реализовать подобное при помощи команд плоскости сечения?
т.е. здесь её задать нужно либо боксом, либо тремя плоскостями...наврное )

* box_cut.jpg (34 Кб, 400x365 - просмотрено 1383 раз.)
« Последнее редактирование: 23 Января 2010, 22:37:45 от Campo »
Sqwer | ***** | Ветеран | Сообщений: 540 | «Ответ #12 24 Января 2010, 01:49:24 »
Re: Плоскость сечения |
12
Лучше поставить несколько моделей, чем так расправляться с одной.

Но если и крайне нужна двнная реализация то:
надо в цикле вызывать одну и туже геометрию несколбко раз
и перед каждым вызовом создавать клип плейн  - рендить-
переместить клип - рендать-...... рендть- закрывать клип плейны.

в твоём случае понадобится 3 вызова
Sqwer | ***** | Ветеран | Сообщений: 540 | «Ответ #13 24 Января 2010, 01:51:26 »
Re: Плоскость сечения |
13
О, спасибо! Под носом лежало не заметил.
Плохо только, что это Clip plane не показывает у обьекта сам срез. Это реально как-то победить?

Это делается вершинным шейдером.
пару условий - и всё готово.
Campo | ** | Пользователь | Сообщений: 50 | «Ответ #14 24 Января 2010, 16:00:13 »
Re: Плоскость сечения |
14
Sqwer,
- интересный ход мысли про подключение 3х одинаковых моделей и их обрезание) единственный минус - модель может оказаться высокополигональной, и тогда этот вариант (его ещё надо опробовать) отпадает (.
на оф форуме задавал этот вопрос..)
http://forum.quest3d.com/index.php?topic=68269.0
- а пример с вершинным шейдером можешь скинуть?
или хотя бы схему, как это делается)?
 
  [1] 2
Печать
 
Quest3D - Русскоязычное сообщество > Quest3D > Логика > Плоскость сечения
Перейти в: