Тут, кстати, видимо эллемент считается входящим в ячейку, если его половина туда входит. Как, например, треугольник рендерится, если его какая-то часть входит в клипспейс.
Про getAllElems() , там нужно весь массив (или что там) скопировать, чтобы ссылка висячей стала. Мне кажется, это не то место, где это будет делаться.
Но под развесистым движком я имел в виду, скорее, готовые движки общего назначения.
На самом деле, умельцы делают потрясающие вещи. На ютубе можно найти некоторое колличество серий, в которых люди пилят собственные движки с нуля, например, вот эта.
*Зануда включён* Строго говоря, в начале написано, что оно -- в конце, и что оно -- не большое ) *Зануда выключен*
Но, на самом деле, тут и возразить нечего -- сие есть авторский, то есть мой, первый опыт в интервью. Как буду уметь получать большие разговоры, то они тут сразу же и объявятся. Поэтому всяческим замечаниям буду только рад!
Получается, мозг игрока в прямом смысле думает, что его носитель катится кувырком из-за крутящегося окружения. Коридоры там ещё очень узкие, вероятно тоже сказывается на заметности движения окружения.
Натыкался на преинтереснейшую статью с разбором Фронтира (http://watsonmw.com/fintro/), но там автор сам дисассемблировал.
Сам я в Descent не играл, да и не большой фанат более классических "леталок", но встречал упоминания об укачиваниях, отчего появился вопрос -- почему в ней? Если правильно понимаю, в той же "Элитке" были 6 степеней свободы, но такого эффекта (по артефактам в интернете) не наблюдалось.
Если правильно понимаю, то в те времена заместо чистого кода и архитектурных принципов в целом (в плюсах) пользовались методом Бутча (я понимаю, что QW не на плюсах написан).
Я бы так сказал -- мне, как человеку, который на момент релиза этого проекта писал разве что каракули на бумаге, приятно осознавать, что у меня сейчас есть энное количество методов сделать себе жизнь легче. В конце-концов, если в таком великом проекте есть, казалось бы, такие очевидные огрехи, то мне расслабляться точно нельзя =)
Вообще, геймдев -- зверь специфический. Раз заговорили о чистом коде -- можно найти некоторые мнения и против этой методологии. Думается, что если бы Кармак прятал код за тысячей интерфейсов, в кваку бы мы так и не поиграли =) Но это, как говорится, совсем другая история.
Выглядит неплохо, спасибо! Думаю, если расширить примечание в самом начале, то получится что надо. Над прямыми ссылками тоже подумаю, читателям может быть удобно.
Я точно видел у Дяди Боба в книжке картинку с графиком затрат на поимку одного и того же условного бага на разных стадиях софта. Утверждается, что поимка до релиза много дешевле, чем после. Если есть возможность встроить какие-то тулзы в общий цикл разработки приложения (не обязательно даже статический анализ и, строго говоря, не обязательно наш), то шансы не допустить указанные Вами случаи увеличиваются кратно и трудозатраты на это, наоборот, снижаются.
Вношу лепту -- сначала пришлось закрывать глаз и отводить уголок рукой. Через пять минут изнуряющих тренировок результат был достигнут -- рожа строится что надо.
ЗЫ -- комментарий не является медицинской рекомендацией, последствия для здоровья неизвестны.
Так, ну длинна массива -- 2048 байт, стало быть максимально валидное в этом случае значение, возвращаемое strlen-- 2047 (без учёта нуль терминатора в конце Си-строки). Стало быть, оператор >= выглядит логичнее, так как 2048 -- некорректная длинна строки. Другое дело, что навряд бы это могло исправить сложившуюся ситуацию.
Не думал при написании, что это так бросится в глаза -- видимо, думал не туда. Идея оформления авторская, требований к минимальному кол-ву упоминаний у нас нет, так что виноват, стало быть, тоже автор, то есть я =) Мне хотелось отделить наши комментарии от комментариев в исходниках. В следующей статье подумаю над чем-нибудь менее бросающимся в глаза, как минимум в заголовках вырезок.
А если бы бабушка была дедушкой, то точно ушла бы на GOTY.
Экипаж выведен из строя!
Куда?
Как бы это сказать...
К слову, если правильно понял слова Антона, на их движке другие ребята даже что-то делают.
Тут, кстати, видимо эллемент считается входящим в ячейку, если его половина туда входит. Как, например, треугольник рендерится, если его какая-то часть входит в клипспейс.
Про
getAllElems()
, там нужно весь массив (или что там) скопировать, чтобы ссылка висячей стала. Мне кажется, это не то место, где это будет делаться.Undefined Behavior Can Format Your Drive =)
Но шутки в сторону -- если Си задуман как язык небезопасный, то зачем лишний раз полагаться на случай?
Тысячестрочник -- круто!
Но под развесистым движком я имел в виду, скорее, готовые движки общего назначения.
На самом деле, умельцы делают потрясающие вещи. На ютубе можно найти некоторое колличество серий, в которых люди пилят собственные движки с нуля, например, вот эта.
И вам спасибо за комментарий! Рад, что понравилось.
Строго говоря, это не движок, а библиотека для графики и инпутов. Вдобавок, если нужно рисовать что-то тяжелое, она умеет доставать OpenGL функции.
А развесистых движков на чистом Си я тоже не знаю)
*Зануда включён* Строго говоря, в начале написано, что оно -- в конце, и что оно -- не большое ) *Зануда выключен*
Но, на самом деле, тут и возразить нечего -- сие есть авторский, то есть мой, первый опыт в интервью. Как буду уметь получать большие разговоры, то они тут сразу же и объявятся. Поэтому всяческим замечаниям буду только рад!
Получается, мозг игрока в прямом смысле думает, что его носитель катится кувырком из-за крутящегося окружения. Коридоры там ещё очень узкие, вероятно тоже сказывается на заметности движения окружения.
Натыкался на преинтереснейшую статью с разбором Фронтира (http://watsonmw.com/fintro/), но там автор сам дисассемблировал.
Сам я в Descent не играл, да и не большой фанат более классических "леталок", но встречал упоминания об укачиваниях, отчего появился вопрос -- почему в ней? Если правильно понимаю, в той же "Элитке" были 6 степеней свободы, но такого эффекта (по артефактам в интернете) не наблюдалось.
Приходите к нам работать, или на экскурсию, сами и посмотрите!)
Если правильно понимаю, то в те времена заместо чистого кода и архитектурных принципов в целом (в плюсах) пользовались методом Бутча (я понимаю, что QW не на плюсах написан).
Я бы так сказал -- мне, как человеку, который на момент релиза этого проекта писал разве что каракули на бумаге, приятно осознавать, что у меня сейчас есть энное количество методов сделать себе жизнь легче. В конце-концов, если в таком великом проекте есть, казалось бы, такие очевидные огрехи, то мне расслабляться точно нельзя =)
Вообще, геймдев -- зверь специфический. Раз заговорили о чистом коде -- можно найти некоторые мнения и против этой методологии. Думается, что если бы Кармак прятал код за тысячей интерфейсов, в кваку бы мы так и не поиграли =) Но это, как говорится, совсем другая история.
Я было хотел ложиться спать, но начальник заставил написать в комментариях, что никто меня статью писать не заставлял.
Выглядит неплохо, спасибо! Думаю, если расширить примечание в самом начале, то получится что надо. Над прямыми ссылками тоже подумаю, читателям может быть удобно.
Я точно видел у Дяди Боба в книжке картинку с графиком затрат на поимку одного и того же условного бага на разных стадиях софта. Утверждается, что поимка до релиза много дешевле, чем после. Если есть возможность встроить какие-то тулзы в общий цикл разработки приложения (не обязательно даже статический анализ и, строго говоря, не обязательно наш), то шансы не допустить указанные Вами случаи увеличиваются кратно и трудозатраты на это, наоборот, снижаются.
Вношу лепту -- сначала пришлось закрывать глаз и отводить уголок рукой. Через пять минут изнуряющих тренировок результат был достигнут -- рожа строится что надо.
ЗЫ -- комментарий не является медицинской рекомендацией, последствия для здоровья неизвестны.
Так, ну длинна массива -- 2048 байт, стало быть максимально валидное в этом случае значение, возвращаемое
strlen
-- 2047 (без учёта нуль терминатора в конце Си-строки). Стало быть, оператор>=
выглядит логичнее, так как 2048 -- некорректная длинна строки. Другое дело, что навряд бы это могло исправить сложившуюся ситуацию.Не думал при написании, что это так бросится в глаза -- видимо, думал не туда. Идея оформления авторская, требований к минимальному кол-ву упоминаний у нас нет, так что виноват, стало быть, тоже автор, то есть я =) Мне хотелось отделить наши комментарии от комментариев в исходниках. В следующей статье подумаю над чем-нибудь менее бросающимся в глаза, как минимум в заголовках вырезок.