HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Страницы (240): « 1 2 [3] 4 5 6 7 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
nemyax
Нёмыч

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 4128

Рейтинг



Иисус, ваш терапевт имеет лот, чтобы ответить для!
Английский язык через канпелятор не прогонишь

Сообщить модератору | | IP: Записан
Сообщение: 182334

Старое сообщение 09-08-2019 06:40
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Если вы хотите мой совет - дайте это дерьмо вверх!

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182335

Старое сообщение 09-08-2019 08:09
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Пришло время избавиться от структурки entvars_t. Ну это которая pev->
Эта зараза пронизывает всю серверную часть движка, поэтому процесс будет непростым.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182345

Старое сообщение 09-08-2019 21:30
-
thambs
мразь конченная

Дата регистрации: Mar 2006
Проживает: -
Сообщений: 6417

Рейтинг



>https://hlfx.ru/forum/attachment.ph...=&postid=182326
там блуум от неба или?

__________________
http://www.moddb.com/mods/monorail-quest

Сообщить модератору | | IP: Записан
Сообщение: 182346

Старое сообщение 09-08-2019 21:34
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



годреи это. Да они есть в финальной версии XashXT, сюда по наследству попали.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182347

Старое сообщение 09-08-2019 21:38
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
Дядя Миша писал:
Пришло время избавиться от структурки entvars_t.

А что будет взамен? Чтобы и на клиенте и на сервере была одна и та же структура для синхронизации?

Сообщить модератору | | IP: Записан
Сообщение: 182365

Старое сообщение 10-08-2019 12:54
- За что?
a1batross
Житель форума

Дата регистрации: May 2016
Проживает: Москва
Сообщений: 516
Возраст: 26

Рейтинг



Ku2zoff но на клиенте нет entvars_t. Да и энтварсы не для синхронизации. Для этого entity_state_t, а вот что с ним Дядя Миша решит делать...

Добавлено 10-08-2019 в 17:34:

string_t я надеюсь тоже под нож?

__________________
Xash3D FWGS форк

Сообщить модератору | | IP: Записан
Сообщение: 182370

Старое сообщение 10-08-2019 14:34
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34490
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Цитата:
a1batross писал:
string_t я надеюсь тоже под нож?

Ага, заменить на std::string!

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 182371

Старое сообщение 10-08-2019 14:39
-
thambs
мразь конченная

Дата регистрации: Mar 2006
Проживает: -
Сообщений: 6417

Рейтинг



XaeroX
А чем он плох? (без троллинга, действительно любопытно).

__________________
http://www.moddb.com/mods/monorail-quest

Сообщить модератору | | IP: Записан
Сообщение: 182373

Старое сообщение 10-08-2019 14:46
- За что?
a1batross
Житель форума

Дата регистрации: May 2016
Проживает: Москва
Сообщений: 516
Возраст: 26

Рейтинг



XaeroX как вариант. Хотя что-то мне подсказывает, что Дядя Миша наврядли что-то использует из STL.

Добавлено 10-08-2019 в 17:53:

thambs string_t-то? Ну, в первую очередь, это рудимент от кваки, где виртуальная машина работала со строками довольно бедно и фактически лишь давала идентифактор. Может я тут где-то ошибаюсь.

Valve запихнули проблему ещё дальше, сделав из string_t просто разницу указателей. В итоге литералы у нас идут в MAKE_STRING, а генерируемые строки в ALLOC_STRING.

__________________
Xash3D FWGS форк

Сообщить модератору | | IP: Записан
Сообщение: 182374

Старое сообщение 10-08-2019 14:53
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34490
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Цитата:
thambs писал:
А чем он плох?

Навскидку: динамическая реаллокация, оверхед по памяти, лёгкость пессимизации при замене string_t, который привычно передаётся по значению, потенциальная непредсказуемость поведения из-за мути в стандарте (SOO, COW).

Добавлено 10-08-2019 в 22:00:

Цитата:
a1batross писал:
Ну, в первую очередь, это рудимент от кваки

Один дурак сказал, и все начали повторять про рудимент...
Цитата:
a1batross писал:
В итоге литералы у нас идут в MAKE_STRING, а генерируемые строки в ALLOC_STRING.

Тут пожалуй единственная проблема - неудачное название MAKE_STRING, оно нелогичное и запутывающее.
Кстати, ку3шный аллокатор строк умеет детектировать самые популярные литералы, например, и не аллокать для них память.

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 182375

Старое сообщение 10-08-2019 15:00
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
Ku2zoff писал:
Чтобы и на клиенте и на сервере была одна и та же структура для синхронизации?

Можно сделать чтобы клиент и сервер были в одной дллке, точнее говоря, описание энтить.

Цитата:
a1batross писал:
string_t я надеюсь тоже под нож?

Нет, там теперь сетевая таблица уникальных строк. И туда же до кучи пути к моделям, звукам, чтоб не хранить в отдельных массивах.

Цитата:
a1batross писал:
Valve запихнули проблему ещё дальше, сделав из string_t просто разницу указателей

оно и в кваке так было.

Добавлено 10-08-2019 в 19:26:

Цитата:
a1batross писал:
Для этого entity_state_t, а вот что с ним Дядя Миша решит делать...

Эту пакость обязательно надо убрать, она весь движок на себе держит и ограничивает.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182377

Старое сообщение 10-08-2019 16:26
-
a1batross
Житель форума

Дата регистрации: May 2016
Проживает: Москва
Сообщений: 516
Возраст: 26

Рейтинг



XaeroX ну черт его знает. В условиях отсутствия ВМ я не вижу смысла так работать со строками.

Я на самом деле и не против. Просто string_t должен быть явно помечен как платформозависимый и вообще не давать возможности разработчику записывать его в файл(о_О), передавать по сети(что только в воспаленное сознание не придёт), сравнивать его численное значение с другими, помимо равенства наверное, да и вообще не иметь доступа к нему именно как идентификатору.

Именно он был и есть самой большой проблемой при порте на 64-битные указатели.

__________________
Xash3D FWGS форк

Сообщить модератору | | IP: Записан
Сообщение: 182378

Старое сообщение 10-08-2019 18:54
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
a1batross писал:
В условиях отсутствия ВМ я не вижу смысла так работать со строками.

Вообще-то стрингтабля идеально для игровых движков подходит, независимо от наличия в них какой-то пользовательской виртуальной машины. Потому что мы имеем дело с кучей константных строк, которые очень часто сравниваются друг с другом и имеют множество дубликатов. Т.е. идея поместить их в единый уникальный массив напрашивается сама-собой. Энтити постоянно запрашивают поиск по таргетнейму, класснейму, да мало ли почему. И всегда выгоднее сравнивать идентификатор строки, чем каждый раз запускать strcmp. И соответственно этот же массив передаётся на клиент, в том же порядке, чтобы строки были доступны и там. Аналогично, когда мы передаём пользовательскую мессагу, нам необязательно каждый раз слать настоящую строку - достаточно послать её идентификатор, а движок автоматически синхронизирует строки на клиентской части (если строка новая и уникальная).

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182381

Старое сообщение 10-08-2019 19:08
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Потихоньку переношу из entvars_t в CBaseEntity. Их там более ста штук, вот такая тупая работа и отымает чёртову уйму времени. Попутно жы еще пишу разные новые механизмы, типа парсера новых кейвалуев, поиска по строкам в DATAMAP и прочего. Ну и стараюсь убрать эту порочную практику, когда для новых энтить вовсю использовались переменные из entvars_t подходящие по типу, чтобы не возится с описанием IMPLEMENT_SAVERESTORE и прочей гадости. Помоему это Лаури первым придумал, этот фантазёр.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 182480

Старое сообщение 12-08-2019 20:45
-
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 02:09. Новая тема    Ответить
Страницы (240): « 1 2 [3] 4 5 6 7 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024