4362
Про физику в видео играх
129 Комментариев в Лига Геймеров  
Про физику в видео играх Комментарии, лига геймеров, скриншот, bash im
Про физику в видео играх Комментарии, лига геймеров, скриншот, bash im

#comment_85749597

+413
Grp171 отправил

Напомнило

"Короче говоря есть у ВВС разных стран авиасимуляторы, для тренировки кадров. Фирмы что занимаются этим как правило делая такой симулятор по спец заказу, не станут шибко извращаться и придумывать что то каждый раз заново. Так вот когда одной такой конторке поступил заказ на изготовление вертолетного симулятора для ВВС Австралии, заказчики попросили учесть так сказать особенности не только местного ландшафта, а так же местной фауны (в основном кенгуру которые при звуке взлетающего вертеля ессесно должны разбегаться в разные стороны, что чревато привлечением внимания противника).


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


Какого же было удивление комиссии когда кенгуру разбежавшиеся при взлете вертолета, собравшись в боевое построение начинают долбать вертолет стингерами"

+420
 Leo13 отправил

тоже напомнило

+71
 JackLinskey отправил

Тоже с баша:

Сегодня полдня искали ошибку, из-за которой, образно говоря, у Наташи при прогулке с Пьером падают трусы. Одна из функций программы делает то, что делать не должна. Откатили на вчера - трусы на месте. Перелопатили весь код обновления, там вообще ни трусов, ни Наташи, ни даже Ржевского, тупо красят дом Болконских. Чуть ли не пошагово разбираем - все нормально. Но трусы падают. И, чтобы найти причину, придется перелопатить весь код, а это недели две минимум.

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

+70
 JustVolt отправил

Ну вообще, это пример криворуких разработчиков.
Первая проблема решается областью видимости / доступа (какого хрена пуля летит из одной области в другую?).
Вторая - обработкой условий и ошибок.

Это частая проблема при программировании.


Например, вроде задача простая, реализовать функцию, чтобы "А брало В и давало его Г".


Только потом начинается:
Нужно проработать условия наличия: А / В / Г. Условие возможности передачи. Условие возможности "взять".
А потом еще вывести список проверок и ошибок, на случай если нету чего-то из этого. Или на случай, если В "неподъемный".

А ведь по хорошему нужен какой-нибудь универсальный API ошибок, чтобы не переписывать типичные ошибки по 50 раз в будущем, да и локализовывать проще было.

А ведь по хорошему, нужно написать так, чтобы в будущем можно было: "А и Б взяли В и дали его Г и Д" ....

Но, всем лень. И в итоге потом получаем вот такую вот "Войну и мир", от ленивых мамкиных праграмистав.

раскрыть ветвь 8
+9
HAKOHE отправлено
Для этого придумали тесты.
Когда почти на каждый чих пишется тест и он прогоняется регулярно.

Описал ты поручика Ржевского и столб. Потом пишешь тест.
И когда ты будешь отлаживать Ростову и уберешь столб, То ты не пройдешь тест номер 83384 "Ржевский и столб".

раскрыть ветвь 5
+2
 devilshooter отправлено

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

0
 Shaaron отправлено

Прописываешь Наташе бронежилет и все.

+45
 Lavios отправил

Ничего удивительного

+35
Antipizdobol отправлено
Помнится в игромании этот прикол был.
0
vxm9 отправил
Я правильно понимаю, что кенгуру убегают дальше, чем распространяется звук взлетающего вертолета, который может услышать враг?
ещё комментарии
+43
 LouisArmstrong отправил

Для тех, кто впервые видит этот баян, я вам еще парочку подкину. Скорее всего, вы этого тоже не встречали.

http://voron-vp.livejournal.com/42033.html (про две полоски)

http://burrarum.livejournal.com/32707.html

http://www.maxblogs.ru/articles/pro-oshibki-v-programmnom-ob... (баги с космической и военной техникой)

И заодно держите пикчу с ошибкой показа сообщения об ошибке

+2
hyphen360 отправлено

А еще была история с ЗРК "Патриот" во времена первой войны в Заливе, там переполнялся регистр и внутренние часы плыли на треть секунды за четверо суток. Как результат, Р-17 из Ирака прилетела прямо в казармы в Саудовской Аравии, 28 мертвых.

ещё комментарии
+102
 treegross отправлено

Скрин комента с цитатой баша вышел в горячее. Спустя полгода выйдет скин из вк, где выложен этот скин с коментом из цитаты баша.

+7
 harukihog отправлено
Я баш котировал во время "тили-тили-if-else", если пониматете о чём я. Теперь предпочитаю фильтр в виде цитирования.
+20
 ArchMan отправил

Я че такой старый? я это читал на баше в свежем, а теперь это шутка типо чатика

+120
 harukihog отправлено

В моей ленте смешной пост, наконец то!

+6
 1qiq отправил

Откуда?

+49
Ilya.StUff отправил

из окна

раскрыть ветвь 7
+34
 VoiD2008 отправил
а всего-то надо было менять вес ящика в момент разрушения
+85
 Koosok отправлено
Ага, а потом осколки ящика будут убивать игрока, падая на него.


Анимацию надо менять.

+11
 VoiD2008 отправил
анимацию дорого
раскрыть ветвь 23
+1
 basvas4 отправлено
а потом осколки ящика будут убивать игрока, падая на него.

Это норма

+1
 VoiD2008 отправил

и не будут они его убивать, соотношение веса и кинетической энергии при разрушении небольшое

+2
Frosterman отправлено
зачем? достаточно при подсчете урона сделать проверку на родителя поражающего элемента. Если это ящик или другой предмет из блеклиста - урон снижаем в х раз.
+2
 VoiD2008 отправил

зачем такие сложности...

у объекта есть свойство вес, есть слушатели событий "перед разрушением", "после разрушения"

подписываемся на событие и меняем свойство

все...

а у вас метод костыльности, который в большом проекте приведет к батхерту команды разработчиков, и самым частым вопросом при разработке проекта будет: "а нахер здесь эта функция и что она вообще делает" и начнется херня как в соседнем комментарии с Войной и миром

раскрыть ветвь 13
0
MrCee отправил

Просто добавить предметам свойство "материал", если материал - "дерево", то объект не тонет, вне зависимости от массы

0
 VoiD2008 отправил
много, долго
дополнительные свойства, методы, обработчики
вы не учли, что физика в данном случае предоставляется сторонним фреймворком, а то, что вы предложили подразумевает изменения в физике, соответственно решение вами предложенное - это очередной костыль причем глобальный
+8
HAKOHE отправлено

Это называется "чужой API-движок". Когда физику писал не ты сам, а взял готовый движок. Может движок кривой, может ты не до конца разобрался в API, и тогда приходится костылить. Ну в самом деле, не писать же свой движок?
Движок может быть OpenSource, тогда ты сможешь его допилить. Но не факт, что тебя будет радовать чужой код. Плюс, тогда у тебя слетят обновления движка и тебе придется "мержить" обновления с твоим кодом. Иногда твой код будет переставать корректно работать с новыми обновлениями. Секас-секас! Есть люди, которые умеют в этом жить. Но для большинства людей это боль.

+5
Satman4eg отправлено
Сталкер он лайн, новый патч- шапка теперь греет, фонарик теперь светит, но деревья всё ещё висят с корнями в воздухе а камни брошенные блинчиком в воду скачут по озеру но стой стороны -поверхности воды.
+1
Urfin.Juice отправлено

когда то давно играл в эту красоту

0
cassiini отправлено

Физический движок скорее всего нормальный, он физику отрабатывает та как должно.

Это называется кривой подход к проектированию.

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

0
HAKOHE отправлено
Все от движка зависит, не факт что ящику можно отдельно задать особые параметры.
+6
fonshtirlitz отправлено
Сказ о костыле и работнике его Балде
+8
 TotallyInsane отправил

Добавить параметр брони ко всему и подобрать оптимальный параметр пробития брони у гранаты. И никакого здоровья повышать никому не надо. А чтобы броня не сказывалась на всём остальном, всему оружию пробитие брони сделать 100%

P.S. Ееее, костыли!

+6
 OffNice отправлено

ееее, в жопу оптимизацию)

+6
 TotallyInsane отправил

Ну дык какой год на дворе? Сейчас все так делают..."Купят новые видеокарты, нехер оптимизировать", "ТЫ ВИДЕЛ, КАКАЯ У НАС ДЕТАЛИЗАЦИЯ?", "да у тебя компьютер говно" и прочие признаки мудаческого геймдева данной игровой эпохи

0
 hooyaxwell отправил

Причем здесь оптимизация?

раскрыть ветвь 2
+12
 AlkisTer отправил

Это очень старый старый боян. По моему как раз в этом обсуждении и родился мем про урановый лом в ртути!

+3
mr.krizhovnik отправлено
Кто мне пояснит, почему дизайнер решает за массу предметов?
+4
 TarakanVM отправлено

@moderator,добавьте тег "bash im"!Спасибо.

+2
 Dzefirelli отправил

Да хуй с ним, пусть бы эта граната лучше не тонлу в воде, чем такие заморочки

+34
 Cketty отправлено

А потом:

"Разрабы совсем охуели, реализмом ВООБЩЕ не пахнет - гранаты в воде не тонут! ппц, игрострой скатился! Не делают больше хороших игр! Реализма нет! Где золотые 90-е?! Тогда умели делать! Почему так скатились и сейчас не могут?!

Шлак, а не игра! 0 тонущих гранат из 10."

+1
 TotallyInsane отправил

Выход: вырезаем гранаты из игры нахер. Заменяем их подствольными гранатами или ракетомётом

+1
 lymos отправила

Видимо, так все и происходит))

+1
 Dzefirelli отправил

*не тонула

+1
Skvot отправил
2 раза попался на том, что пытался поставить + комментарию из скриншота. Какой-то в этот раз он необычный.
+1
 youngmula отправил

FUCKING BARRELS!

0
aplexvk отправлено

27.12.12 11:34 Andrei Hobotov [programming lead] reassigned to Boris Vovk [senior programmer]

У нас правда коллизии захардкожены в текстурах? Нельзя их оттуда вынести в отдельную настройку?



14.01.13 17:00 Boris Vovk [senior programmer] reassigned to Andrei Hobotov [programming lead]


Да как же их вынесешь? У нас же честный расчет пробития, с учетом карты нормалей текстуры, а в альфа-канале у нее усталость металла закодирована.



03.02.13 12:12 Andrei Hobotov [programming lead] reassigned to Tatiana Severina [textures artist]


Сделайте уже нормальные текстуры для полосок, только визуал. Сколько можно тянуть?



12.02.13 15:45 Tatiana Severina [textures artist] reassigned to Alexandra Lebedeva [2d artist]


как там насчет эскиза?



13.02.13 11:15 Alexandra Lebedeva [2d artist] reassigned to Tatiana Severina [textures artist]


Говорила же уже: у нас завал, сможем не раньше, чем через два месяца.


Срочно перерисовываем все миникарты, сказали поконтрастнее выделить сушу. Кто как, а я выделяю более темненькой водой.


Ночью работать больше не буду (((((((



14.02.13 11:10 Tatiana Severina [textures artist] reassigned to Andrei Hobotov [programming lead]


у нас завал. сможем не раньше, чем через четыре месяца.



01.03.13 18:20 Elena Ivanova [community manager] changed priority to HIGH


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



07.03.13 17:27 Andrei Hobotov [programming lead] reassigned to Semen Kemshakov [3d artist]


Подвинь полоски, чтобы не закрывали пулеметы.



07.03.13 17:28 Konstantin Krainihin [historical consultant] commented:


Я щас кому-то подвигаю! До миллиметра по историческим фотографиям вымеряли...



11.03.13 12:36 Andrei Hobotov [programming lead] reassigned to Boris Vovk [senior programmer]


Боря, придумай какой-нибудь хак. Ситуация безвыходная.



17.05.13 14:37 Boris Vovk [senior programmer] reassigned to Vladimir Orlov [game designer]


Пропишите пулеметам дамаг 231 вместо 2. Из него ровно 229 уйдет на пробитие полосок, дальше полетят пули с остаточным дамагом 2, как и должно быть.



27.05.13 11:22 Vladimir Orlov [game designer] reassigned to Boris Vovk [senior programmer]


Прописал пулеметам дамаг 231



29.05.13 15:01 Boris Vovk [senior programmer] closed issue.


Теперь все должно быть в порядке.



30.06.13 16:30 Sergei Lodkin [qa lead] reopened issue:


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


Нет, не так. Нью-Мексико вдруг начал НАГИБАТЬ КРОВЬ КИШКИ РАСЧЛЕНЕНКА ВСЕХ РАСПИДАРАСИЛО В МЕЛКИЕ КЛОЧКИ.


Мы случайно взяли Нью-Мексико и два раза нагнули геймдизайнеров в товарищеском матче. Нам приятно. Спасибо.


Но теперь они тоже просекли фишку, поэтому пора исправить.



01.07.13 10:02 Boris Vovk [senior programmer] reassigned to Vladimir Orlov [game designer]


Почему Нью-Мексико начал нагибать? Вы кроме пулеметов истребителей ничего не меняли?



01.07.13 17:00 Vladimir Orlov [game designer] reassigned to Boris Vovk [senior programmer]


Оказывается, те же самые пулеметы, отскейленные в 10 раз, используются как орудия второстепенного калибра Нью-Мексико.


По форме очень похожи, вот моделлеры и решили сэкономить.


Дамаг тоже автоматически скейлится, но уже в 1000 раз, пропорционально объему ствола.


Так что у нас теперь у Нью-Мексико дамаг 231000 на выстрел второстепенного калибра.



03.07.13 18:01 Elena Ivanova [community manager] changed priority to VERY HIGH


просьба ускориться нас опять в интернете ткнули носом в этот позор не те полоски мне стыдно за тот отстой что мы делаем аааааааааа



03.07.13 19:39 Boris Vovk [senior programmer] reassigned to Andrei Hobotov [programming lead]


Хак не прокатил. Надо всю архитектуру движка менять, чтобы можно было динамически оверрайдить коллизии в текстурах. Иначе ничего не получится. А это работы на полгода.



04.07.13 10:13 Andrei Hobotov [programming lead] reassigned to Slava Makarov [makarovslava]


Такие решения должны приниматься на высшем уровне.


Ну что, отодвигаем альфу на полгода?


Слава, жду решения.



04.07.13 10:22 Andrei Hobotov [programming lead] reassigned to SerB [vice makarovslava]


Извините, что беспокою.


Это очень важный и срочный баг, его фикса ждут уже больше года.


Вы не знаете, где Слава Макаров?



04.07.13 10:28 SerB [vice makarovslava] reassigned to Andrei Hobotov [programming lead]


Нет, я не знаю, где Слава Макаров.



04.07.13 10:37 Slava Makarov [makarovslava] commented:


Извините, что не сразу ответил. Я тут подумал и решил, что проще забанить того неприятного человека.


Белые полоски делать не надо, всем отбой. Пойду думать, как бан обосновать.



04.07.13 10:39 Slava Makarov [makarovslava] closed issue.



04.07.13 18:21 Alexandra Lebedeva [2d artist] reopened issue:


Как не надо? (((((((( А зачем же я вчера всю ночь эскиз рисовала? ((((((((


Хотела сюрприз сделать ((((((



04.07.13 18:27 Alexander Rozhko [art director] commented:


Скинь эскиз на сетевой диск посмотреть. Может, куда-нибудь пристроим.



04.07.13 18:34 Alexander Rozhko [art director] commented:


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



04.07.13 20:48 Alexandra Lebedeva [2d artist] commented:


Я - художник, а не маляр... ((((((( Я творчески переосмыслила... ((((( Я хочу, чтобы у нас была красивая игра... (((((((

0
aplexvk отправлено

Две полоски или переписка QA и геймдизайнеров World of Warships

Переписка происходит в JIRA - системе отслеживания ошибок и управления проектами.


Говорят, что фейк, но даже если так, то стилизация сделана отлично. Читайте!


JIRA ISSUE #182355 Type: BUG Priority: MEDIUM Created: 21.02.12 18:21


Description: С "Дзуйкаку" взлетает "Зеро" с маркировкой авианосца "Кага".


21.02.12 18:30 Elena Ivanova [community manager] commented:

наблюдательные товарищи пишут в интернете что у нас на утекших в сеть скриншотах на самолетах не та маркировка цветные полосы а должны быть белые


22.02.12 11:51 Elena Ivanova [community management] reassigned to Sergei Lodkin [qa lead]

оформите баг чтобы исправили а то позоримся


05.03.12 15:41 Sergei Lodkin [qa lead] reassigned to Mihail Dorenkov [qa engineer]


11.03.12 10:42 Mihail Dorenkov [qa engineer] reassigned to Alexander Rozhko [art director]

Надо нанести на самолеты две белые полосы.


06.04.12 11:13 Alexander Rozhko [art director] reassigned to Semen Kemshakov [3d artist]


17.04.12 15:50 Semen Kemshakov [3d artist] reassigned to Tatiana Severina [textures artist]

Нужны две одинаковые белые текстуры для полосок. Очень надо!


20.04.12 11:10 Tatiana Severina [textures artist] reassigned to Alexandra Lebedeva [2d artist]

нужны эскизы двух белых полосок, а то я не знаю, на что они похожи


24.04.12 12:00 Alexandra Lebedeva [2d artist] reassigned to Tatiana Severina [textures artist]

У нас полный завал. Полоски сможем не раньше, чем через два месяца.


01.05.12 18:34 Tatiana Severina [textures artist] reassigned to Alexandra Lebedeva [2d artist]

можешь сверхурочно поработать? может, дома? это же пара часов, не больше. очень надо!


02.05.12 12:30 Alexandra Lebedeva [2d artist] reassigned to Tatiana Severina [textures artist]

Взяла работу на дом, ночью засела рисовать. (((((( Парень мой спрашивает: "Чего не спишь?"

А я ему: "Да понимаешь, у меня тут тут две полоски..." Обернулась - а его нет. Где теперь его искать? ((((((


02.05.12 15:54 Tatiana Severina [textures artist] reassigned to Semen Kemshakov [3d artist]

похоже, текстур не будет. возьмите пока любую похожую текстуру, потом заменим, когда сделаем


11.05.12 12:13 Semen Kemshakov [3d artist] reassigned to Andrei Hobotov [programming lead]

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


08.06.12 10:33 Andrei Hobotov [programming lead] reassigned to Alexei Mshigorotchitskii [junior programmer]

Леша, прицепи к самолетам по две белые полоски.


08.06.12 12:11 Alexei Mshigorotchitskii [junior programmer] reassigned to Andrei Hobotov [programming lead]

Вдоль или поперек?


10.06.12 17:14 Andrei Hobotov [programming lead] reassigned to Konstantin Krainihin [historical consultant]

Вдоль или поперек?


10.06.12 17:15 Konstantin Krainihin [historical consultant] reassigned to Andrei Hobotov [programming lead]

Поперек


11.06.12 18:35 Andrei Hobotov [programming lead] reassigned to Alexei Mshigorotchitskii [junior programmer]

Поперек


14.06.12 18:35 Alexei Mshigorotchitskii [junior programmer] closed issue.

Готово


17.06.12 14:30 Mihail Dorenkov [qa engineer] reopened issue.

Не видно что-то


21.06.12 11:51 Alexei Mshigorotchitskii [junior programmer] commented:

Как не видно? Вчера в релиз ушло. Тестеры в недоумении, уже триста писем с вопросами, что это за странные полоски на всех самолетах.


25.06.12 12:50 Mihail Dorenkov [qa engineer] commented:

В какой релиз? Даже альфа еще не началась.


29.06.12 20:56 Alexei Mshigorotchitskii [junior programmer] commented:

Вы, простите, в каком проекте работаете?


01.07.12 12:21 Mihail Dorenkov [qa engineer] commented:

World of Warships


01.07.12 19:30 Alexei Mshigorotchitskii [junior programmer] reassigned to: Andrei Hobotov [programming lead]

Я программист World of Warplanes. Смотрите внимательнее, кому баги перекидываете.


07.07.12 14:57 Andrei Hobotov [programming lead] reassigned to Alexei Mshigorotchitskii [junior programmer]

Леха, прикинь, в Киеве твой однофамилец работает. Только он Мщигорочицкий, а ты Мчигоротчитский.


07.07.12 14:58 Alexei Mshigorotchitskii [junior programmer] reassigned to: Andrei Hobotov [programming lead]

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


07.07.12 14:59 Andrei Hobotov [programming lead] commented:

Упс... сорька. Опять не тому перекинул.


07.07.12 15:00 Andrei Hobotov [programming lead] reassigned to Alexei Mchigorotchitskii [junior programmer]

Леха, прикинь, в Киеве твой однофамилец работает. Только он Мщигорочицкий, а не Мчигоротчитский.


07.07.12 15:01 Alexei Mchigorotchitskii [junior programmer] closed issue.

Клево


16.07.12 13:01 Mihail Dorenkov [qa engineer] reopened issue.

Почему закрыли несделанный таск?


20.07.12 09:31 Andrei Hobotov [programming lead] commented:

Леха, ты выше-то почитай, что сделать надо.


21.07.12 15:59 Alexei Mchigorotchitskii [junior programmer] commented:

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

Еще удивился, чего не по аське, в одной же комнате сидим.


21.08.12 11:09 Alexei Mchigorotchitskii [junior programmer] closed issue.

Сделано


23.08.12 14:37 Mihail Dorenkov [qa engineer] reopened issue.

Истребители перестали сбивать. Не могут стрелять.


01.09.12 13:26 Alexei Mchigorotchitskii [junior programmer] assigned to Andrei Hobotov [programming lead]

Я не понимаю, в чем дело.


15.09.12 19:03 Andrei Hobotov [programming lead] reassigned to Boris Vovk [senior programmer]

Боря, проверь, в чем там дело.


04.11.12 09:23 Boris Vovk [senior programmer] reassigned to Andrei Hobotov [programming lead]

Полоски закрывают пулеметы. А на них материал, в котором прописана коллизия для пуль. Пули не проходят.


11.11.12 10:00 Andrei Hobotov [programming lead] reassigned to Boris Vovk [senior programmer]

Как полоски могут закрывать пулеметы, если полоски нанесены в задней части фюзеляжа?


14.11.12 11:11 Boris Vovk [senior programmer] reassigned to Andrei Hobotov [programming lead]

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

Так исторически сложилось, уже не помню, почему. Теперь долго переделывать, на это вся их баллистика завязана.


05.12.12 12:07 Andrei Hobotov [programming lead] reassigned to Semen Kemshakov [3d artist]

Зачем полоски коллизят пули? Сними с них коллизию.


12.12.12 12:03 Semen Kemshakov [3d artist] reassigned to Andrei Hobotov [programming lead]

Я не могу, у нас коллизии захардкожены в текстурах, а других текстур нет.

Эту вырезал с Флетчера, самая белая текстура, какую нашел. А у него там броня четыре сантиметра.

0
yooka отправлено

Думаю, надо знать героев рассказа в лицо.

0
Tepes666 отправлено

Как варик можно было сделать так чтобы граната сразу взрывалась когда попадает в воду.

0
 tambievsamat отправил
блять, я лайкнул плюсик на картинке...
-1
0racul отправил

Не про физику в играх, а про долбоебов с костылями

-2
 TimaTopaz087 отправил

Надо скидывать диванным экспертам. Немного показывает что такое работа.

0
 Arkham80 отправлено

Плохая работа*

ещё комментарии


Пожалуйста, войдите в аккаунт или зарегистрируйтесь