Вопросы новичка

Страница 5 из 8 Предыдущий  1, 2, 3, 4, 5, 6, 7, 8  Следующий

Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 10:32 am

надо бы мне подучить алгоритмы. Знаешь еще способы ускорить сортировку больших массивов?

Я вот думаю, насколько уместно использование бинарных деревьев в играх. Вопрос несвязанный с дессановским. У нас есть большая карта и много обьектов в ней. И они все обновляются каждую секунду. Нужно отсекать обновление всех (или большой части) обьектов, не попадающих в камеру.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 10:39 am

Знаешь еще способы ускорить сортировку больших массивов

в институте когда учился - знал)) сейчас уже не вспомню - гуглить надо

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

очень уместно. если ты например ковырял игры quake/quake2/half-life/quake3 там карты имеют расширение bsp, что означает Binary Space Partitioning то есть тоже самое о чем я говорю. в более ранних движках типа doom и wolfenstein зоны видимости определяются также бинарным деревом. короче это используется очень много где
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 10:41 am

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

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 10:47 am

да, офигенно. Придется много гуглить. Забыл сказать, что это 2d.

В 3d загуглил термин: frustum culling и другие куллинги. Но это чутка не то. Натыкался на статьи именно с моей задачей, но теперь фиг найдуSad

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 10:49 am

с 2д еще проще. на одну ось))

хотя Дум и Вольфенштайн - это по сути тоже 2Д
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 10:59 am

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

пиро пишет:
в институте когда учился - знал)) сейчас уже не вспомню  
У меня дружище фист закончил. Работает массажером. Типа не очень полезные эти институты.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 12:03 pm

это алгоритм с проверкой столкновения отсекающей пирамидой камеры, чтобы рендерить только видимые вершины

frustum culling - да.

BSP можжно использовать и для определения зоны видимости и для поиска по массиву и например для генерации карт https://habrahabr.ru/post/332832/ короче штука архиполезная и изучить ее будет не лишним.

на кодера учился?

нет. на инженера-схемотехника. но в том числе мы изучали Си и Ассемблер
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 12:12 pm

а вообще, для 2Д игр часто используется Q-дерево https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%80%D0%B5%D0%B2%D0%BE_%D0%BA%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D0%BD%D1%82%D0%BE%D0%B2
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 2:04 pm

какой frustum culling и бинарные деревья...мне квадратик передвинуть нужно было...вы чего ребят. Frustum culling это вообще как заклинание звучит. Почему всё что я начинаю делать, особенно самое простое на мой взгляд, переростает в деревья бинарные и требует глубокого изучения

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 2:15 pm

я функцию ещё аргументом передавать не научился толком, math random ночью узнал, мне ещё какой-то алгоритм А* читать...люди вон на двух функциях игры создают, а мне квадратик передвинуть захотелось и такое попадалово сразу

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 2:16 pm

bsp везде использовался в играх времён квейка, я их так и не смог открыть тогда и редактировать

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 4:20 pm

Я для себя спрашивал)) Яж тоже нуб в кодинге=)

На самом деле я еще паттерны программирования толком не изучил. Да и java знаю посредственно. Да и js далеко не идеал (не говоря уже про es6 и 7). А сейчас надо php и laravel изучать. И прочие штуки по сайтустроению. А еще нужно десктоп подятнуть.

Паттерны геймдева наверно никогда не выучу. Ведь мне английский нужно знать. Хотелось бы хотя бы opengl знать.

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

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 8:17 pm

а мне квадратик передвинуть захотелось

я тебе писал выше, как квадратик двигать

мне ещё какой-то алгоритм А* читать...

сам спрашивал про поиск пути - тебе ответили. я даже ссылку на готовую библиотеку тебе выложил.

bsp везде использовался в играх времён квейка, я их так и не смог открыть тогда и редактировать

их нельзя открыть и редактировать. их можно декомпелировать в формат map, отредактировать и скомпилировать заново

сейчас надо php и laravel изучать

все таки Ларавель решил?)))

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

Не говоря о таких штуках как написание компиляторов и драйверов.

я в 98-м году написал драйвер для мышиного коврика))
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 9:00 pm

Дессан пишет:Что такое паттерны геймдева?
Паттерны проектирования в геймдеве. Есть обычные паттерны банды четверых (классические). Есть паттерны проектирования js для веба, которые отличаются от классических. Есть паттерны спецом для геймдева. Это entity-систем и другие. Про них мало инфы.

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 9:05 pm

Некому было мне про bsp рассказать, да и не интересовало оно меня особо и вообще комп только в 2002 появился

ну гугл появился в 97-м, так что можно было и загуглить. что я собственно и сделал в тот момент.
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 9:21 pm

Спойлер:
Pyro338 пишет:
Еще больше оптимизировать процесс можно разбив карту на несколько больших участков: левый верхний, левый нижний, правый нижний, правый верхний. Т.е. будет 4 маленьких массивов вместо 1 большого.
это называется двоичное дерево

Как их всех двигать вправо/влево? Что читать? isPress же тут не прокатит раз point.js нет

Код:
var Keyboarder = function(){
  var KeyState = {

  }
  window.onkeydown = function(e){
    KeyState[e.keyCode] = true;
  }
  window.onkeyup = function(e){
    KeyState[e.keyCode] = false;
  }
  this.isDown = function(keyCode){
    return KeyState[keyCode];
  }
  this.KEYS = {
    LEFT: 37,
    RIGHT: 39,
  }
}

потом в функции update игрока

Код:
if(this.keyboarder.isDown(this.keyboarder.KEYS.LEFT)){
      if(this.position.x > 0){
        this.position.x -= 2;
      }
    }
    if(this.keyboarder.isDown(this.keyboarder.KEYS.RIGHT)){
      if(this.position.x < this.gameSize.x-this.size.width){
        this.position.x += 2;
      }
    }
А как это всё к координатам квадратов подключить? Ты мне код не пиши, ты мне на словах расскажи. Так больше толку будет. Так я точно знаю , что искать. А то без знания что искать, начинаю искать всё. И даже когда найду, начинаю сомневаться оптимальный ли я нашёл вариант.

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 9:25 pm

ну у тебя есть объект player? вот this.position.x - имеется ввиду позиция объекта player по иксу. а там не важно - квадратом он у тебя изображен или например кругом
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 9:44 pm

Dessan, подожди пару дней (максимум неделю). Напишу статью.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 9:47 pm

Что ж вы не сказали, что кроме консоли есть ещё классная вещь как debugger, где можно проследить последовательность вызова функций и всё что в них подставляется и даже некоторые результаты вычислений. Я б вас и не мучил глупыми вопросами что куда подставляется и когда вызывается.Это ж сколько мы дней на это убили


Последний раз редактировалось: Dessan (Сб Янв 06, 2018 9:50 pm), всего редактировалось 1 раз(а)

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 9:48 pm

пиро пишет:все таки Ларавель решил?)))
Дда. Мне mvc понятна, но учить сшибу ларавел обходя обычный пхп, гм.., не знаю. Неправильно чтоле.

Мой план Б заключается во фрилансе, а там ларавел и пхп понадобятся сто проц. И еще, оказывается хостинги с пхп гораздо дешевле vps с нодой.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 9:50 pm

ну пхп знать - это кагбэ само собой разумеется. без этого никуда.
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 9:50 pm

raingo пишет:Dessan, подожди пару дней (максимум неделю). Напишу статью.
Ты пиши, лишней не будет

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Pyro338 в Сб Янв 06, 2018 9:51 pm

Что ж вы не сказали
а ты и не спрашивал. я думал, что ты знаешь
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор raingo в Сб Янв 06, 2018 9:56 pm

Dessan пишет:Что ж вы не сказали, что кроме консоли есть ещё классная вещь как debugger, где можно проследить последовательность вызова функций и всё что в них подставляется и даже некоторые результаты вычислений. Я б вас и не мучил глупыми вопросами что куда подставляется и когда вызывается.Это ж сколько мы дней на это убили
Который в хроме f12? Я про нее не знал. А вообще там много интересного.  Вкладка network, например (другими не пользовался).

P.S. Мне тоже никто ничего не говорил. Вот ты сказал, я посмотрел и понял, что годная вещь, но юзать все равно не буду. Мне удобнее тесты через консоль.лог.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Dessan в Сб Янв 06, 2018 10:07 pm

да, вкладка Sources, скрипт свой выбрал, breakpoint поставил и check потом step by step скрипт свой и смотришь в какой последовательности что отрабатывает и с какими значениями.
Как же я спрошу о том, что никогда не знал?То есть вы думали я смотрю в debugger и поэтому спрашиваю у вас как это всё работает и какие значения что принимает? Сразу надо было меня в отладчик кода отправить и там всё смотреть

И я теперь сразу научился кнопками канвасу ширину менять

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Вопросы новичка

Сообщение автор Спонсируемый контент


Спонсируемый контент


Вернуться к началу Перейти вниз

Страница 5 из 8 Предыдущий  1, 2, 3, 4, 5, 6, 7, 8  Следующий

Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения