HLFX.Ru Forum Страницы (267): « Первая ... « 257 258 259 260 [261] 262 263 264 265 » ... Последняя »
Показать все 4002 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)


Отправлено Crystallize 03-11-2024 в 16:10:

Цитата:
Crystallize писал:
В фитцквейке нельзя обновить r_refdef.vieworg через VectorAdd. Вот Мастер бы развонялся...


Цитата:
Дядя Миша писал:
Скорее расскажи ему об этом


Всё оказалось ещё интереснее. Сами VectorAdd и VectorCopy не виноваты. Но, в совершенно другой функции которая указана выше в том же файле, и которая даже не вызывается, есть объявление:

vec_t Length2D (vec3_t v);

Можно оставить в той функции только его, и всё будет работать. Но если ту строчку или ту функцию целиком закомментировать, то в совершенно другом месте ниже по файлу что-то по-тихому сломается и будет неправильно считаться позиция камеры.

Ну да, она юзается у меня там где что-то ломается. Непонятно только почему она берется из совершенно левой функции а не из матчлибы где она тоже есть. Как объявление вообще может браться из чужой функции?


Отправлено Дядя Миша 04-11-2024 в 07:35:

Ничего не понял.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 04-11-2024 в 09:47:

Дядя Миша Я говорю, в Си для декларации функции не существует понятия области видимости. Главное чтобы где-то в файле она была. Ее можно объявить в одной функции, а пользоваться ей совсем в другой.


Отправлено Crystallize 04-11-2024 в 15:44:

code:
// // allways dump the first two message, because it may contain leftover inputs // from the last level // if (++cl.movemessages <= 2) return;


Это такой у Кармака trigger_auto )))
Олсо это значит что каждые 655 секунд у нас пропадает инпут на долю секунды?


Отправлено Дядя Миша 04-11-2024 в 15:50:

Цитата:
Crystallize писал:
Ее можно объявить в одной функции, а пользоваться ей совсем в другой.

Так это и в С++ точто так же. Если не использован модификатор static.

Цитата:
Crystallize писал:
Олсо это значит что каждые 655 секунд у нас пропадает инпут на долю секунды?

Вообще-то структура cl зануляется при каждом рестарте уровня. С чего бы пропадать? И почему именно 655 секунд? Как ты получил это число?

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 04-11-2024 в 16:13:

Цитата:
Дядя Миша писал:
Вообще-то структура cl зануляется при каждом рестарте уровня. С чего бы пропадать? И почему именно 655 секунд? Как ты получил это число?

Перепутал с шортом. Этот счетчик бежит по 100 мессаг в секунду, я поделил 65к на 100.


Отправлено Crystallize 05-11-2024 в 16:08:

Цитата:
Дядя Миша писал:
Так это и в С++ точто так же. Если не использован модификатор static.

Вот как раз такие вещи нужно записывать в категорию преднамеренного вредительства.


Отправлено Дядя Миша 06-11-2024 в 06:04:

Цитата:
Crystallize писал:
Вот как раз такие вещи нужно записывать в категорию преднамеренного вредительства.

в чём вредительство?

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 06-11-2024 в 11:58:

Дядя Миша То что внезапно игнорируется концепция области видимости. Нету цельности.


Отправлено Дядя Миша 06-11-2024 в 18:24:

Crystallize я боюсь ты её как-то неправильно понял. Модули - это в Делфи.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 07-11-2024 в 13:17:

currentorigin в кваке отстаёт от origin на целый кадр. Снова Мастер moment.

Цитата:
Дядя Миша писал:
Crystallize я боюсь ты её как-то неправильно понял. Модули - это в Делфи.

Я не в курсе про Дельфи и модули.
Я просто жду что правила для переменных будут распространяться также и на остальные части языка. Та самая интуитивная понятность.


Отправлено Дядя Миша 07-11-2024 в 14:41:

Цитата:
Crystallize писал:
Я просто жду что правила для переменных будут распространяться также и на остальные части языка

а кто мешает объявить переменную в одном файле и использовать в другом?

Цитата:
Crystallize писал:
currentorigin в кваке отстаёт от origin на целый кадр

А я ведь писал об этом. Да кто бы читал.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Crystallize 07-11-2024 в 16:44:

Цитата:
Дядя Миша писал:
а кто мешает объявить переменную в одном файле и использовать в другом?

Никто не мешает, но и проблема совершенно обратная.

Если ты шаришь переменную между функциями, ты сам выносишь её в глобалсы. Если ты шаришь её между файлами, ты ещё и пишешь extern в дальнем файле. Ты сознательно выстраиваешь эту цепочку и если что не так то компилятор сразу орёт про unresolved external.

А я столкнулся с тем, что ненайденная декларация не вызывает никаких сообщений даже на Level 4, просто фича не работает. А если она найдена, она без моего ведома растекается на весь файл, опять же мне не сообщая. А прикинь работать над одним проектом командой, кто-то убрал декларацию а у тебя по-тихому что-то сломалось.


Отправлено Дядя Миша 07-11-2024 в 16:57:

extern - это просто подсказка такая. Оно в любом случае "растекается" как ты изящно выразился, потому что объявлено в глобальном скоупе.
Файлы видимость НЕ ОГРАНИЧИВАЮТ и не ограничивали её вообще никогда.
Видимость ограничивают скоупы. Но можно принудительно ограничить видимость текущим файлом через модификатор static.

То есть ты опять сам себе там что-то нафантазировал.

__________________
My Projects: download page

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

Цитата:

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


Отправлено nemyax 07-11-2024 в 21:56:

Цитата:
Дядя Миша писал:
можно принудительно ограничить видимость текущим файлом через модификатор static

Главное не путать этот static со static-переменными в теле функции. Они ваааще про другое.


Временная зона GMT. Текущее время 16:45. Страницы (267): « Первая ... « 257 258 259 260 [261] 262 263 264 265 » ... Последняя »
Показать все 4002 сообщений этой темы на одной странице

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