Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Вниз

Проблема с QuadTree   Найти похожие ветки 

 
VolanD666   (2005-11-11 06:23) [0]

Привет, всем! Вот такая проблема:
Не могу определить вижу или не вижу QuadCell (обычный квадрат с ну левым y). Я думаю что для этого нужно проверить два устовия:
1) Хотя бы одна точка QuadCell принадлежит Frustum
2) Player находится внутри QuadCell

Или я не прав?


 
XProger ©   (2005-11-11 15:51) [1]

1) неверно
2) если игрок в QuadCell, то зачем что-либо проверять? Frustum Culling бокса сделает своё дело ;)

Посмотри l_camera.pas демки Landscape
http://xproger.mirgames.ru/?id=2


 
VolanD666   (2005-11-11 17:33) [2]

Ой, что то ничего не понятно. Объясни, пожалуйста, на языке геометрии, при каком условии считать, что Player видит QuadCell...


 
A22 ©   (2005-11-11 18:31) [3]

XProger говорит, что проверка бокса ячейки quadtree по фрустуму скажет тебе, видит ее камера или нет. следовательно, никаких дополнительных проверок не требуется

проверка тебе подойдет в виде:
для каждой плоскости фрустума должна быть хотя бы одна точка бокса, лежащая по внутреннюю сторону от плоскости (т.е. внутри видимого объема сцены), при такой проверке дополнительные условия (бокс внутри фрустума, но точки - нет) не нужны


 
VolanD666   (2005-11-11 18:40) [4]

Интересно, я тоже так думал. Но только, данный метод не всегда работает. Например, когда я смотрю на стенку корневого QuadCell, то все точки лежат вне фрустума.


 
XProger ©   (2005-11-11 19:48) [5]

VolanD666, вне фрустума - ещё не значит, что все точки лежат по одну сторону от плоскостей его образующих (у меня 4) ;)


 
VolanD666   (2005-11-11 19:57) [6]


> VolanD666, вне фрустума - ещё не значит, что все точки лежат
> по одну сторону от плоскостей его образующих (у меня 4)
> ;)

Это как?


 
VolanD666   (2005-11-11 19:58) [7]


> VolanD666, вне фрустума - ещё не значит, что все точки лежат
> по одну сторону от плоскостей его образующих (у меня 4)
> ;)

Это как? Пожалуйста, по подробней, а то у нас уже ночь, плохо соображаю :-)


 
XProger ©   (2005-11-11 20:50) [8]

Проспись, завтра на свежую голову нарисуй фрустум (вид сверху) из 2-ух прямых линий. Затем расставь 4 точки посиди подумай, при каких условиях бокс виден :)

l_camera.pas -> TCamera.BoxInFrusrum лучше посмотри, понятнее будет...


 
VolanD666   (2005-11-12 10:17) [9]

Так, давайте по порядку. Я правильно понимаю, что условия
> проверка тебе подойдет в виде:
> для каждой плоскости фрустума должна быть хотя бы одна точка
> бокса, лежащая по внутреннюю сторону от плоскости (т.е.
> внутри видимого объема сцены).

не достаточно?


 
XProger ©   (2005-11-12 13:42) [10]

VolanD666, рисовал то о чём я тебя просил? Или хочешь понять не вникая? ;)


 
VolanD666   (2005-11-12 15:33) [11]

Эврика! Дошло, извините, за мое тормозное мышление. Всем спасибо! :-)



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.01 c
15-1149513333
oldman
2006-06-05 17:15
2006.07.02
Нужен совет (не могу пока найти онколога)... :(


1-1148205429
RUNaum
2006-05-21 13:57
2006.07.02
Поворот PNG без искажений.


1-1148476437
alec_sey
2006-05-24 17:13
2006.07.02
Массивы


15-1149325813
ChelovekABCDEF
2006-06-03 13:10
2006.07.02
Правильно ли решена задача?


15-1149361173
Аленка
2006-06-03 22:59
2006.07.02
реферат по химии на английском языке





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский