При хостинг поддержке Интернет-сообщества VBIOS CS-Mapping.com.ua
Вернуться   CS-Mapping.com.ua > Forum > Разработка игр > Xash3D Engine
Ник
Пароль
Регистрация Правила форума FAQ Пользователи Администрация Календарь Поиск За 24 часа Пометить все разделы прочитанными

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.09.2014, 20:03  #101
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

Хотели сделать совершенно новый движок, а получился сурс.
gfdjr5 вне форума Ответить с цитированием
Старый 25.09.2014, 20:08  #102
Raid
Raid
Регистрация: 28.03.2037
Адрес: CSM-чат
Возраст: 26
Сообщения: 7,783


По умолчанию

2 gfdjr5:
На брашах сделать совершенно новый не получится, тк совершенно новый одинаково хорошо умеет и в открытые пространства, и в закрытые, в лайтмапы, в динамический свет, ну ты пони.
Raid сейчас на форуме Ответить с цитированием
Старый 25.09.2014, 20:26  #103
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от Raid: 2 gfdjr5:
На брашах сделать совершенно новый не получится, тк совершенно новый одинаково хорошо умеет и в открытые пространства, и в закрытые, в лайтмапы, в динамический свет
Да лучше бы не врали публике. Писали, что Сурс - совершенно новый движок, написанный с нуля. В то же время писали, что взяв исходники Квэйка разделили на два проекта - GoldSrc и Src. И как это Сурс написан с нуля после этого? Сам Кармак утвердил, что в исходниках всё ещё есть участки от Квэйка. Да что там, в слитых сурсах можно всё видеть. Структура файлов та же, код тот же. Тяжело, конечно, поддерживать тогда было Стим, а сейчас что? Состояние гонки? Сурс 2 написали. А что там нового? Код ведь тот же. Только-только в нём была введена поддержка шейдеров версии 3. Взялись бы они за это серьёзнее, написали бы движок и уровня Анрил 4 и Фростбайта 3. А то и лучше.
[ Цитата ] Сообщение от Raid: ну ты пони
Каждый день открываешь для себя что-то новое.
gfdjr5 вне форума Ответить с цитированием
Старый 25.09.2014, 21:21  #104
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 12,085


По умолчанию

[ Цитата ] Тут дело не в предиктинге, по крайней мере я считаю так.
На здоровье.
[ Цитата ] Альтернатива существует?
В ку3 это всё весьма неплохо реализовано, с экстраполяцией. Главная фишка - в использовании low-res таймера, что само по себе позволяет получить хорошую предиктабельность. Но не совместимо с некоторым кодом на сервере.
[ Цитата ] только: NetQuake | QuakeWorld
NQ - это Normal Quake. Никакого NetQuake в природе не существует.

Дядя Миша, подумав, добавил 25.09.2014 в 21:24
А сорс превратился в огромного слабоуправляемого монстра, с которым не сделаешь уже ничего. Вот прекрасные последствия написания кода на С++.

Последний раз редактировалось Дядя Миша, 25.09.2014 в 21:24.
Дядя Миша вне форума Ответить с цитированием
Старый 25.09.2014, 21:38  #105
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от Дядя Миша: В ку3 это всё весьма неплохо реализовано, с экстраполяцией. Главная фишка - в использовании low-res таймера, что само по себе позволяет получить хорошую предиктабельность. Но не совместимо с некоторым кодом на сервере.
Экстраполяция может внести свой отрицательный вклад тем, что если игрок будет, допустим, бежать к обрыву и от него перестанут приходить пакеты, то сервер его и скинет вниз. Хотя клиент, пока пакеты на сервер не приходили, остановился у края обрыва.
[ Цитата ] Сообщение от Дядя Миша: NQ - это Normal Quake. Никакого NetQuake в природе не существует.
Назвали его так исторически. После того, как появился QW, за обычным закрепилось название NetQuake. А вот о названии Normal Quake я не слышал. Но мы говорим об одном и том же Квэйке первом, расчитанном на игру по локали, поэтому не суть.
[ Цитата ] Сообщение от Дядя Миша: А сорс превратился в огромного слабоуправляемого монстра, с которым не сделаешь уже ничего. Вот прекрасные последствия написания кода на С++.
Слабая управляемость у кода на С. А сурс является ярким примером того, как не надо использовать ООП в С++. И код на С++ не подразумевает классов. Это лишь язык с увеличенными, по сравнению с С, функционалом. На нём и процедурно, как на С, можно писать программы. Но и при использовании классов надо с умом подходить, а не городить говнокод. Сурс явно плохой пример ООП, зато отличный пример того, как не нужно писать, оформлять и проектировать свой проект. "Слабоуправляемым монстром" код становится, когда плохо спроектирован. Сделать можно - переписать всё начисто. Но у вэлв нет на это времени. Поэтому придётся довольствоваться этим.

Где квар sys_ticrate у ксаша? Как он за частотой обновления сервера следит?
gfdjr5 вне форума Ответить с цитированием
Старый 25.09.2014, 22:46  #106
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 12,085


По умолчанию

[ Цитата ] от него перестанут приходить пакеты, то сервер его и скинет вниз
Я смотрю у тебя фантазия, как у нашего общего друга. А может это сезонное.
[ Цитата ] Слабая управляемость у кода на С
И в чём это выражается?
[ Цитата ] сурс является ярким примером того, как не надо использовать ООП
То есть его ламерье писало, правильно понимаю?
[ Цитата ] И код на С++ не подразумевает классов
О как.
Покажи нам свои проекты, где всё по канонам.
Дядя Миша вне форума Ответить с цитированием
Старый 25.09.2014, 23:07  #107
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от Дядя Миша: Я смотрю у тебя фантазия, как у нашего общего друга. А может это сезонное.
[ Цитата ] Отличный пример это когда клиент А бежит и прыгает с обрыва, а клиент Б экстраполируя данные, получит информацию о прыжке после того как персонаж выбежит за грань обрыва, и затем весьма "резко" прыгнет.
А что? Такое вполне могло бы быть. Есть модификации к GTA San Andreas - SA:MP, для поддержки мультиплеера. В самой СА изначально только поддержка сингла была. А тут прикрутили сеть. И на начальных версиях было так, что когда игрок переходил в меню паузы, обновления от него переставали приходить и ему отсылаться. И когда такой игрок вел авто, то при переходе в паузу авто продолжало двигаться для всех других игроков. За это время авто могло и скатиться в кювет и перевернувшись, взорваться, убив всех, кроме игроков в паузе, пассажиров. Она могла и упасть в воду, и утопить всех пассажиров, что не в паузе. После же возвращения игрока в игру наступал резкий синхрон сервера с последними данными от игрока. То-есть, несмотря на то, что авто продолжало куда-то двигаться, как игрок вышел из паузы, он и авто со всеми пассажирами возвращаются на позицию, в которой они были перед уходом этого игрока в паузу. Предиктинг, кстати, прикрутили там только недавно, но замечу, что так же отрывисто, как в ксаше, игроки по миру у клиента не бегали. Стрелять только приходилось "по пингу", на упреждение.

Не про бумера ли ты часом?
[ Цитата ] Сообщение от Дядя Миша: И в чём это выражается?
А я что, могу использовать каждую подсистему движка отдельно друг от друга? Могу их свободно расширить? Одно небольшое изменение в коде не приведёт к общей неработоспособности всей системы? А для новых изменений мне не придётся переписывать значительную часть кода?
[ Цитата ] Сообщение от Дядя Миша: То есть его ламерье писало, правильно понимаю?
Писали люди, которые не особо заботились о том, как они потом будут менеджить этот код.
[ Цитата ] Сообщение от Дядя Миша: О как. Покажи нам свои проекты, где всё по канонам.
"Нам" это кому? Ты знаешь, что такое парадигмы программирования? Ты мне покажи, где написано, что код С++ всегда пишут с классами. В С++ имеется поддержка классов, но никто не обязывал их использовать. Поэтому я не понимаю за что такие плохие отзывы в сторону С++.

Последний раз редактировалось gfdjr5, 25.09.2014 в 23:34.
gfdjr5 вне форума Ответить с цитированием
Старый 26.09.2014, 11:16  #108
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 12,085


По умолчанию

[ Цитата ] А я что, могу использовать каждую подсистему движка отдельно друг от друга?
Ну я же могу, почему ты не можешь?
[ Цитата ] А для новых изменений мне не придётся переписывать значительную часть кода?
Всё зависит от того, как это было спроектировано. А не от языка.
[ Цитата ] В С++ имеется поддержка классов, но никто не обязывал их использовать.
Я тебе еще раз говорю, Сишный исходник, переименованный в .cpp даёт падение в производительности на 40%. По крайней мере на шестой студии.
Дядя Миша вне форума Ответить с цитированием
Старый 26.09.2014, 13:41  #109
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от Дядя Миша: Ну я же могу, почему ты не можешь?
И тебе не придётся дописывать его или тащить вместе с ним дополнительный функционал? Так ли это?
[ Цитата ] Сообщение от Дядя Миша: Всё зависит от того, как это было спроектировано. А не от языка.
Ну так и я о том же. Но на плюсах делать проще, если виртуальные классы использовать. Вместо wavdata и mp3data сделать интерфейс sounddata, а от неё унаследовать уже их. Или лучше даже sounddata оставить, сделать отдельный интерфейс загрузчика звуков и хандлер для него, чтобы можно было указатели добавлять в его лист загрузчиков. Тогда и менеджер звуков сделать, в котором определить метод загрузки звука. Этот метод при вызове будет обращаться к хандлеру с названием звука для загрузки. А хандлер проверяет, есть ли среди загрузчиков тот, что поддерживает указанное расширение. Есть - грузит и выдает указатель на sounddata, нет - возвращает с ошибкой.
Вот и расширяемость.
[ Цитата ] Сообщение от Дядя Миша: Я тебе еще раз говорю, Сишный исходник, переименованный в .cpp даёт падение в производительности на 40%. По крайней мере на шестой студии.
Я не знаю как работает такая старая студия. Попробуй на новых посмотреть. Может просто при смене расширения шестая студия автоматом компилирует код как C++. От того, что просто расширение сменилось и студия даёт код настолько медленнее, скорее всего это какие-либо особенности шестой студии. У неё уж старый компилятор, может возьмёшь за 2010 или 2013 экспресс? Бесплатная. Только зарегестрироваться нужно, чтобы код активации прислали. У них компиляторы поновее будут. Глядишь и код быстрее скомпилируют.

Последний раз редактировалось gfdjr5, 26.09.2014 в 14:13.
gfdjr5 вне форума Ответить с цитированием
Старый 26.09.2014, 15:49  #110
OEUVRE
OEUVRE
Регистрация: 06.03.2013
Сообщения: 935
Замечания: 2


По умолчанию


Последний раз редактировалось OEUVRE, 02.10.2016 в 18:10.
OEUVRE вне форума Ответить с цитированием
Старый 26.09.2014, 16:45  #111
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

Кто-нибудь может сходить вместе со мной потестить Ксаш в мультиплеере? Обычная халфа. Или кс 1.3/1.5 (если запустится).
Скачайте заранее карту 1337_street. Она компактная, для теста подойдёт. Хочется посмотреть что из себя представляет предикт код сейчас. В мастер-сервере сервер не отобразится, думаю, поэтому напишите в лс, кому скинуть айпи.

Карта:
http://rghost.ru/58214520

Последний раз редактировалось gfdjr5, 26.09.2014 в 17:30.
gfdjr5 вне форума Ответить с цитированием
Старый 26.09.2014, 17:32  #112
bel
bel
Рядовой
Регистрация: 23.09.2012
Сообщения: 19


По умолчанию

2 gfdjr5:
Уважаемый, вот что Вы к человеку-то докопались?

Если человек хочет развивать наследие от QuakeWorld в отдельную ветку - пусть развивает. Замечу, что у него довольно-таки неплохо получается (последняя версия для меня была 0.96, остались хорошие впечатления).

Выбор языка - тоже его дело. Есть вещи, которые принципиально нужно писать на Си; и я сам считаю, что игры (ядро/серверную часть) лучше всего писать на Си (не инди; не смартфонные). Выбор языка чаще всего связанно с привычкой. Пускай есть какое-то снижение производительности, но оно обязательно присутствует. Хоть 1% - это его аргумент, и он действует. А Ваши контраргументы не смогут полностью отменить снижение производительности.

Отказ от плюшек тоже связанны с привычкой. Если "чо" в Си есть дефайны, и если умело ими пользоваться, то можно написать такой код, который будет конфеткой. Если грамотно проектировать код, иметь какие-то правила внутри своих проектов (ЕМНИП у валв приватные переменные начинаются на m_ ), то никаких проблем внутри ядра быть не должно. Можно и на Си наговнокодить. И будет этот код работать в сто раз хуже, чем в той же Java. Тут дело не в языке, а в проектировке, понимаете?

Я никогда не поверю в то, что у Вас нет вещи, которая хуже остальных, но используете Вы её исключительно из привычки. Пускай на Си нет таких плюшек и библиотек, как на С++, но если человек хочет писать велосипед - пускай пишет. Особенно хороши велосипед тогда, когда они заточены под свои параметры. В этом нет ничего криминального, и опять-таки же это выбор каждого.

Не занимайтесь демагогией. Умейте уважать выбор других, а то складывается такое ощущение, что Вы это делаете для собственной выгоды. Вас что-то не устраивает? Делайте свой движок или используйте любой другой (UT4, сурцы есть и написан он на Вашем любимом C++).
bel вне форума Ответить с цитированием
Старый 26.09.2014, 18:36  #113
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от bel: 2 gfdjr5:
Уважаемый, вот что Вы к человеку-то докопались?

Если человек хочет развивать наследие от QuakeWorld в отдельную ветку - пусть развивает. Замечу, что у него довольно-таки неплохо получается (последняя версия для меня была 0.96, остались хорошие впечатления).

Выбор языка - тоже его дело. Есть вещи, которые принципиально нужно писать на Си; и я сам считаю, что игры (ядро/серверную часть) лучше всего писать на Си (не инди; не смартфонные). Выбор языка чаще всего связанно с привычкой. Пускай есть какое-то снижение производительности, но оно обязательно присутствует. Хоть 1% - это его аргумент, и он действует. А Ваши контраргументы не смогут полностью отменить снижение производительности.

Отказ от плюшек тоже связанны с привычкой. Если "чо" в Си есть дефайны, и если умело ими пользоваться, то можно написать такой код, который будет конфеткой. Если грамотно проектировать код, иметь какие-то правила внутри своих проектов (ЕМНИП у валв приватные переменные начинаются на m_ ), то никаких проблем внутри ядра быть не должно. Можно и на Си наговнокодить. И будет этот код работать в сто раз хуже, чем в той же Java. Тут дело не в языке, а в проектировке, понимаете?

Я никогда не поверю в то, что у Вас нет вещи, которая хуже остальных, но используете Вы её исключительно из привычки. Пускай на Си нет таких плюшек и библиотек, как на С++, но если человек хочет писать велосипед - пускай пишет. Особенно хороши велосипед тогда, когда они заточены под свои параметры. В этом нет ничего криминального, и опять-таки же это выбор каждого.

Не занимайтесь демагогией. Умейте уважать выбор других, а то складывается такое ощущение, что Вы это делаете для собственной выгоды. Вас что-то не устраивает? Делайте свой движок или используйте любой другой (UT4, сурцы есть и написан он на Вашем любимом C++).
Как-нибудь без вас решу, хорошо? Без обид.

Последний раз редактировалось gfdjr5, 26.09.2014 в 19:08.
gfdjr5 вне форума Ответить с цитированием
Старый 26.09.2014, 19:58  #114
AHTu6uoTuK
AHTu6uoTuK
Старший прапорщик
Регистрация: 10.03.2012
Сообщения: 698
Замечания: 2


По умолчанию

[ Цитата ] Сообщение от gfdjr5: Как-нибудь без вас решу, хорошо? Без обид.
Ну так он таки прав. Это движок ДМа, ему и решать, как его пилить.
AHTu6uoTuK вне форума Ответить с цитированием
Старый 26.09.2014, 20:55  #115
Qwertyus
Qwertyus
Подполковник
Регистрация: 13.08.2009
Сообщения: 1,160


По умолчанию

Да дайте вы двум людям поспорить
Qwertyus вне форума Ответить с цитированием
Старый 26.09.2014, 21:42  #116
AHTu6uoTuK
AHTu6uoTuK
Старший прапорщик
Регистрация: 10.03.2012
Сообщения: 698
Замечания: 2


По умолчанию

2 Qwertyus:
Нефиг словоблудием маяться.
AHTu6uoTuK вне форума Ответить с цитированием
Старый 27.09.2014, 01:02  #117
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от AHTu6uoTuK: Ну так он таки прав. Это движок ДМа, ему и решать, как его пилить.
Так и спорить не буду. Он итак решает как его пилить, не будет же он всё бросать и делать по новому или переделывать имеющееся по-другому. А вы как стервятники налетели. Есть что сказать по существу - говорите. А нет, так и смысла говорить нет. Я не указываю, как надо делать, я лишь делаю предложения, а потом мы их обсуждаем. Тема и создана для обсуждений. Какие претензии в мой адрес? Я разве писал что-то наподобие: "ДМ, Си - говно короче, полное. Воот. Так что ты, это, на крестах, короче, делай, окда? И студия шестая тоже говно, бери 2013 и пили короче движок быстрее. А потом допиливай предиктинг и поддержку закачки ресурсов"? Нет, не писал. Вы бы лучше про баги сюда отписывали, может нашлись бы люди, что их исправили бы.
gfdjr5 вне форума Ответить с цитированием
Старый 27.09.2014, 23:37  #118
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

*removed*

Последний раз редактировалось gfdjr5, 28.09.2014 в 01:06.
gfdjr5 вне форума Ответить с цитированием
Старый 28.09.2014, 00:52  #119
Cybermax
Cybermax
Генерал
Регистрация: 11.03.2008
Сообщения: 2,334
Замечания: 11


По умолчанию

[ Цитата ] Вот именно для нее и прикупили исходники Quake 2.
Чё?

Cybermax, подумав, добавил 28.09.2014 в 00:57
[ Цитата ] А вы как стервятники налетели.
Кто мы? Ты тут один. С одной стороны интерес к движку надо подогревать. Но не демагогией.

Последний раз редактировалось Cybermax, 28.09.2014 в 00:57.
Cybermax вне форума Ответить с цитированием
Старый 15.10.2014, 03:31  #120
Raid
Raid
Регистрация: 28.03.2037
Адрес: CSM-чат
Возраст: 26
Сообщения: 7,783


По умолчанию

Думаю так же стоит сделать расширенное управление звуками (спец. энтитей), чтобы можно было играть 2 звука параллельно, и менять громкость от нуля до 100% не выключая. Суть такого действия вот в чём: едет, скажем, поезд. Снаружи у него звук стука колёс. В салоне тот же звук, с тем же таймингом, однако с фильтром (приглушённый). Как высовываешься наружу - срабатывает плавное (и регулируемое соответственно) затухание звука в салоне, и увеличение громкости звука снаружи. Засовываешься обратно в салон - соответственно, затухает звук снаружи, и набирает громкость звук внутри.
Raid сейчас на форуме Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 00:39.


Designed by FT-502, TRUP@C. Originally by Ulric Spaak
Hosted by: VBIOS.COM, Powered by: vBulletin
copyright © 2002 - 2017 by CS-Mapping.com.ua Community