Sky Rider
Активный участник
   
Репутация: 70
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Love
Деятельность: Lua, Python
Сообщений: 323
|
 |
« Ответ #15 : Февраль 09, 2012, 20:27:21 » |
|
Ну так понятно, что весь файл лить в память не надо. Про нагрузку на проц я имел ввиду уже когда карта загрузилась :)
Возвращаясь к фону (а похоже, что это именно он глючит, а не деревья), у меня такое ощущение, что тут дело в функциях lengthdir. Убрал сейчас вращение у персонажа вслед за курсором - всё стало как часы. Не знаю, как это может быть связано, ведь и фон, и деревья у меня теперь вычисляют смещение по одинаковой формуле... Какая-то ерунда.
Добавлено: Февраль 09, 2012, 20:30:38 Точно-точно, всё дело в дробной части. Ведь lengthdir высчитывает до каких-то там долей. Сейчас поставил эту функцию в round() и всё стало отлично... Но меня так не устраивает, поскольку теперь по диагонали персонаж перемещается чуть быстрее, чем по прямой.
Добавлено: Февраль 09, 2012, 20:35:36 Поставил округление координат игрока при высчитывании своих собственных координат фоном и деревьями... Стало лучше, но всё равно и фон, и деревья перемещаются мелкими рывочками. Вообще у меня такое ощущение сложилось, что дело просто в том, что x и y деревьев могут быть дробными, а вот у фона - нет (округляются). Поэтому они друг с другом не совпадают.
|
|
|
|
|
Записан
|
|
|
|
|
Krib
|
 |
« Ответ #16 : Февраль 09, 2012, 20:37:22 » |
|
Я тебе уже предлагал решение, использовать вместо фона спрайты.
|
|
|
|
|
Записан
|
Fuge, late, tace
|
|
|
Sky Rider
Активный участник
   
Репутация: 70
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Love
Деятельность: Lua, Python
Сообщений: 323
|
 |
« Ответ #17 : Февраль 09, 2012, 20:41:38 » |
|
Без разницы. Всё равно дёргается :(
Добавлено: Февраль 09, 2012, 22:12:15 Фуф, вроде избавился от этой ерунды. Товарищ Krib, вы действительно были правы по поводу спрайтов :) Просто я их рисовал через draw_sprite_tiled - жутко глючный и кривой ужас, чтоб я ещё хоть раз использовал эту команду. Единственное - стыки фоновых спрайтов едва заметно подрагивают, но это уже не заметно, если не вглядываться. А так увеличил скорость комнаты до 60 и вывел ко всему прочему информацию о FPS на экран.
Добавлено: Февраль 10, 2012, 23:02:59 Сделал новый пример с использованием файлов и бесконечной картой. Подробности читаем в шапке :)
|
|
|
|
|
Записан
|
|
|
|
Sewer
Участник
  
Репутация: 8
Offline
Пол: 
API: Game Maker 8.0 Pro
Деятельность: Многофункциональный Игродел v0.93 Beta
Сообщений: 214
Весь в работе!
|
 |
« Ответ #18 : Февраль 19, 2012, 12:20:18 » |
|
афигеть создал самый большой мир(1000x1000) и fps 60....я в шоке)
|
|
|
|
|
Записан
|
Работа в кубини!
|
|
|
Sky Rider
Активный участник
   
Репутация: 70
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Love
Деятельность: Lua, Python
Сообщений: 323
|
 |
« Ответ #19 : Февраль 19, 2012, 19:55:06 » |
|
SewerДа нет, первый пример - один большой фейспалм  Я его в назидание оставил, как не надо делать. Лучше глянь второй, я его как раз обновил. Добавил миникарту (чтоб нагляднее было как это всё работает), возможность поворачивать камеру и персонажа мышкой (клавиши C и V - переключение между режимами), ну и всякой ерунды по немножку. Код на сохранение различных объектов уже готов, но применять его мне пока лень. И да, во втором примере существует 6 442 450 942 локаций по каждой оси с обоими знаками (и + и -) :) Если принять 60 пикселей за 1 метр, то площадь этого мира в 8000 раз больше площади Солнца ;D Но релятивистские законы я не вводил, поэтому разогнаться можно хоть до сотни скоростей света.
|
|
|
|
|
Записан
|
|
|
|
|
|
Sky Rider
Активный участник
   
Репутация: 70
Offline
Пол:  Награды: ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](http://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: Love
Деятельность: Lua, Python
Сообщений: 323
|
 |
« Ответ #21 : Февраль 19, 2012, 20:24:22 » |
|
Ну персонаж - явно не нейтрино ;D Кстати говоря, очень жалко, что в GM движение со скоростью 17 миллиардов пикселей в секунду (скорость света, если принять 60 пикселей за метр) мало чем отличается от меньшей или большей. А то такое расстояние пролетаешь - аж дух захватывает, а вот ничего не чувствуется. И если бы не подлая верхняя планка 6 442 450 944 (начиная с этого числа глючит mod и, скорее всего, всё остальное), то мир был бы вообще бесконечным. Забавное совпадение. Сегодня как раз читал основную статью на вики о нейтрино, где упоминается этот эксперимент (OPERA). P. S. А учебнике по физике для 11 класса нейтрино заявлены как безмассовые частицы  Добавлено: Февраль 19, 2012, 23:12:30 Бесконечный мир пока открепил. Там где-то закралась очень жестокая утечка производительности Т_Т Добавлено: Февраль 20, 2012, 08:19:50 Добавил обратно. Похоже, причина была в моём компе, ибо сегодня с утра опять всё работает))
|
|
|
|
|
Записан
|
|
|
|
MIKE_
Новичок
Репутация: 0
Offline
API: GameMaker 8.1 Standard
Сообщений: 2
|
 |
« Ответ #22 : Январь 16, 2017, 18:01:31 » |
|
Крутая вещь, очень мне пригодится в моих разработках. Жаль, что комментарии в коде испорчены кодировкой.. P.S Не знаю, как плюсануть в карму, а так - спасибо)
|
|
|
|
|
Записан
|
|
|
|
Fur
Абы-какой
GM Pro user
Репутация: 463
Offline
Пол:  Награды:  ![За постоянность! [500 дней на форуме] За постоянность! [500 дней на форуме]](http://forum.hellroom.ru/awards/e0371460a203dd46d2dc161571bf6144_hellroomforum_time_gold.gif) ![Третье место на HellRoom Jam #9 [Flucoldache] Третье место на HellRoom Jam #9 [Flucoldache]](http://forum.hellroom.ru/awards/bb4b4f1479909ce4eb3764370bdb2375_hj9_bronze-1.gif) ![За лояльность! [+300 репутации] За лояльность! [+300 репутации]](http://forum.hellroom.ru/awards/8ff7443ce508760cfbf715910b3eb0b3_hellroomforum_good_copper.gif)  
API: Game Maker 8.0 Lite
Деятельность: Бурная.
Сообщений: 3673
Лисяток тебе.
|
 |
« Ответ #23 : Январь 16, 2017, 18:03:41 » |
|
Крутая вещь, очень мне пригодится в моих разработках. Жаль, что комментарии в коде испорчены кодировкой.. P.S Не знаю, как плюсануть в карму, а так - спасибо)
Щас бы темы 12-го года от неактивного юзера поднимать, верно?
|
|
|
|
|
Записан
|
В одной отдельно взятой фразе не должно быть больше миллиона муравьёв, пусть даже она — научного труда о муравьях. Hyperflex
|
|
|
MIKE_
Новичок
Репутация: 0
Offline
API: GameMaker 8.1 Standard
Сообщений: 2
|
 |
« Ответ #24 : Январь 16, 2017, 18:08:12 » |
|
Крутая вещь, очень мне пригодится в моих разработках. Жаль, что комментарии в коде испорчены кодировкой.. P.S Не знаю, как плюсануть в карму, а так - спасибо)
Щас бы темы 12-го года от неактивного юзера поднимать, верно? Ой, блин, не заметил, я новичок, пардоньте) Но тема в любом случае того стоит!
|
|
|
|
|
Записан
|
|
|
|
|