Добре дошли

Потребителско име:

Парола:


Запомни ме

[ ]

Свържи се с нас

Форуми

Редактори:Kobri, Lucky, SleepWalker, perfektnoto savur6enstvo, Lummox, -ThugLife-, Xfirb, pochti perfekten*, Keep Hope Alive
Автор Отговор
DragonClaw
сб мар 12 2011, 03:49
Регистриран потребител #18
Регистриран: пт фев 20 2009, 01:58
съобщения: 791
Преди да започнем с практиката, нека първо предложа малко теория. При компилиране на карта, тя бива разбивана/нарязана на отделни полигони, наречени BSP leaves. Това се прави с цел да се съберат, определят и визуализират само полигоните, които са видими от моментната позиция на играча. Проблемът обаче е, че тези полигони не винаги са разделени по най-ефективния начин, което води до изобразяването на някои такива, които не са видими за играча и не е необходимо, да се изрисуват. В такива случаи можем да добавим блок с текстура "hint" за да коригираме това.
Ето една проста картинка, показваща такава ситуация:

Черното са просто стени, заформящи някаква пътека, или по-точно завой. Синята линия е hint бръш, а жълтото кръгче е играч. Докато играчът не влезе в зоната, защрихована със зелено, на него няма да му бъдат визуализирани полигоните от зоната, защрихована с червено. Така естествено се спестяват обекти за рендване, а кадрите в секунда се увеличават.
Сега нека погледнем две положения от моя проект със и без ползването на hint:





Както виждате, има чувствителна разлика и в броя на изобразените полигони, и в кадрите за секунда.
Въпреки подобрението обаче, не трябва да ползваме hint за всеки завой. За да подобри нещата, hint блока изрязва нови полигони. Въпреки, че се визуализират по-малко в определен момент от играта, те като цяло за картата стават повече, а hlvis си има определена граница за броя им. За това е препоръчително hint да се ползва само за по-тесни и ключови пространства. Така той ще минава по-дължината на по-малко бръшове и ще прави по-малко полигони след себе си.
Също така, поставянето на hint не е лесна работа. Понякога при неправилното му позициониране освен да не помага, той и влошава обстановката.
За да проверите дали успешно сте използвали hint на дадено място в катата си, напишете gl_wireframe 2 в конзолата по време на игра. Сравнете резултатите с тези от преди поставянето на hint. Друг начин е чрез програмката BSP Viewer, за целта в етикета Render трябва да имате тикче на Edges.
Трябва да отбележа, че в някои подобни статии има съвет hint блока да стои на поне 1 unit разстояние от всяка стена, за да не я разрязва на нови полигони, но след тестовете които направих, при мен подобно нещо не се случи.
Като за край, бих обобщил, че използването на hint е мощен инструмент за подобряване качеството на картата от към кадри в секунда. Но тъй като е и едно от по-сложните неща в мапинга като цяло, можете да го ползвате само в наистина краен случай.

[ Редактирано сб мар 12 2011, 05:02 ]
Най-отгоре
{SENDPM=18}
 

Иди:     Най-отгоре

Colour Key:
Главен Администратор, Администратор, Support, Екип, CS Админ, VIP, Miss Sector.BG, Потребител

Публикувайте тази тема: rss 0.92 Публикувайте тази тема: rss 2.0 Публикувайте тази тема: RDF
Powered by e107 Forum System