Команда разработчиков Counter-Strike:Promod в данный момент работает над улучшением простреливаемости объектов на картах своей модификации CS 1.6 на основе движка Source.
На своём официальном форуме они решили поделиться с сообществом результатами своих экспериментов, о которых вы узнаете ниже.
Из поста становится понятно, что у ребят сначала возникли проблемы с прострелом подвижных объектов. Например, двери карты de_nuke на точке B:

Красная линия — траектория пули, хит-бокс — точка попадания
По словам одного из разработчиков, дверь отчего-то не простреливалась тем же способом, что и другие подобные объекты, поэтому для решения проблемы был применён метод рекурсивной трассировки, благодаря которому осуществляется проверка каждого объекта со свойством «prop_static» на твёрдость и за тем поиск точки выхода из этого объекта.
(1)
(2)
(1)Жёлтый хит-бокс — точка выхода пули из объекта (2)Синия линия — пройденное пулей расстояние внутри объекта
Тем не менее, не все «браши» реагируют на прострел подобным образом. Так, например, для объектов класса world_brush, коим являются стены, используется нерекурсивный метод, при котором дополнительный трассировочный луч определяет местонахождение следующей (ближайшей) стены и определяет таким образом точку выхода в первой стене. Данным способом были исправлены ошибки прострелов в нижней «тёмке» на de_dust2:
(1)
(2)
(1)Новый de_dust2 (2)Исправленные прострелы
Также сообщается, что была заменена «начинка» некоторых объектов, чтобы их простреливаемость максимально точно совпадала с Counter-Strike 1.6. Однако это ещё предстоит хорошенько оттестировать.
Несмотря на все эти успехи, остались и нерешённые задачи. Например, существует проблема со сложными объектами, состоящими из нескольких «брашей». При столкновении с такими объектами пуля не может найти конечную точку выхода, останавливаясь на границе состыковки «брашей» внутри одного объекта:

Пули застревают в сложных объектах
Автор поста добавил, что из кода невозможно установить, застряла ли пуля в вакууме между «брашами» одного объекта, так как лакмусовой бумажкой для этого являются только трассировочные лучи. Тем не менее, выход из этой ситуации, по его словам, может быть найден, если просто-напросто объединять несколько «брашей» одного объекта в целостный «браш»:

Простреливание целостного объекта
Как видно, разработчики CSP не стоят на месте, медленно но верно улучшая свою альтернативную модификацию, приближая её с каждым днём к тому идеально сбалансированному сочетанию новой графической оболочки и старого доброго геймплея, о котором уже давно все мечтают.
А как, по-вашему, кто кого: CSP vs CS:GO?
источник(с)
На своём официальном форуме они решили поделиться с сообществом результатами своих экспериментов, о которых вы узнаете ниже.
Из поста становится понятно, что у ребят сначала возникли проблемы с прострелом подвижных объектов. Например, двери карты de_nuke на точке B:

Красная линия — траектория пули, хит-бокс — точка попадания
По словам одного из разработчиков, дверь отчего-то не простреливалась тем же способом, что и другие подобные объекты, поэтому для решения проблемы был применён метод рекурсивной трассировки, благодаря которому осуществляется проверка каждого объекта со свойством «prop_static» на твёрдость и за тем поиск точки выхода из этого объекта.
(1)


(1)Жёлтый хит-бокс — точка выхода пули из объекта (2)Синия линия — пройденное пулей расстояние внутри объекта
Тем не менее, не все «браши» реагируют на прострел подобным образом. Так, например, для объектов класса world_brush, коим являются стены, используется нерекурсивный метод, при котором дополнительный трассировочный луч определяет местонахождение следующей (ближайшей) стены и определяет таким образом точку выхода в первой стене. Данным способом были исправлены ошибки прострелов в нижней «тёмке» на de_dust2:
(1)


(1)Новый de_dust2 (2)Исправленные прострелы
Также сообщается, что была заменена «начинка» некоторых объектов, чтобы их простреливаемость максимально точно совпадала с Counter-Strike 1.6. Однако это ещё предстоит хорошенько оттестировать.
Несмотря на все эти успехи, остались и нерешённые задачи. Например, существует проблема со сложными объектами, состоящими из нескольких «брашей». При столкновении с такими объектами пуля не может найти конечную точку выхода, останавливаясь на границе состыковки «брашей» внутри одного объекта:

Пули застревают в сложных объектах
Автор поста добавил, что из кода невозможно установить, застряла ли пуля в вакууме между «брашами» одного объекта, так как лакмусовой бумажкой для этого являются только трассировочные лучи. Тем не менее, выход из этой ситуации, по его словам, может быть найден, если просто-напросто объединять несколько «брашей» одного объекта в целостный «браш»:

Простреливание целостного объекта
Как видно, разработчики CSP не стоят на месте, медленно но верно улучшая свою альтернативную модификацию, приближая её с каждым днём к тому идеально сбалансированному сочетанию новой графической оболочки и старого доброго геймплея, о котором уже давно все мечтают.
А как, по-вашему, кто кого: CSP vs CS:GO?
источник(с)
Комментарии — 82
Awak3N28.12.2011, 22:06↑#harik133728.12.2011, 19:59#Eazy-E28.12.2011, 20:00#-LUCIE-28.12.2011, 21:11#-LUCIE-28.12.2011, 21:13↑#-LUCIE-28.12.2011, 21:17↑#-LUCIE-28.12.2011, 21:19↑#-LUCIE-28.12.2011, 21:22↑#Dehapt_28.12.2011, 21:24↑#Dehapt_28.12.2011, 21:25↑#Dehapt_28.12.2011, 21:41#FazwOw29.12.2011, 11:14#Обсуждение завершено.