С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 08.03.2011
Сообщений: 44

Почему тормозит играаа???

29.07.2011, 18:26. Показов 1957. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день - решил недавно создать игрушку (третяя на моем счету)...
но на этот раз игра не пошаговая - эдакое подобие бомбермена с инвентарем...

Можете пожалуйста подсказать по какой причине игра может тормозить ?
(Возможно проблема в алгоритме - основная часть которого в мейн функции(это цикл)- пожалуйста обратите внимание)
Администрацию сайта просьба не переносить даное сообщение в раздел бета тестирования и suchlike...

PS :
могут возникнуть проблемы с winmm.h ... там нужно в настройках компилятора (и.или проекта- для удобства создайте новый и скопипастите содержимое .cpp дока) создать линк с файлом libwinmm.a

Также приношу просьбы всем у кого глаза начнут выпадать из глазниц - мигание раздражает + код огромен (создавал програму по принципу "снизу- вверх" вообще не советую , ибо дороже обойдеться)...
но прошу помнить что это мой третий игровой проэкт...
Вложения
Тип файла: txt map.txt (921 байт, 50 просмотров)
Тип файла: rar Desktop.rar (208.5 Кб, 54 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.07.2011, 18:26
Ответы с готовыми решениями:

Почему тормозит BitArray
Вопрос и в том, почему может тормозить BitArray, и в том, как же это лучше исправить. Прилагаю анализ временных затрат и соответствующий...

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

Почему тормозит hdd
Как узнать в чем причина низкой скорости во время проверки ноутбука антивирусом mbam? Диспетчер задач показывает что загрузка диска около...

16
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
29.07.2011, 18:54
как мне кажеться тормоз из-за медленной перерисовки попробуйте поднять чистоту.
еще меня пророзило каличество if\else
Да кстати код реально огромен!
0
 Аватар для OstapBender
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
29.07.2011, 18:58
не перерисовывай всю карту а только перерисовывай движения .

жесть у тебя каждое движение отдельной функцией О_о
уж сделай движение функцией а параметр - направление. а внутри че-то типа функции checkEnemies() .. checkBomb() (не наступил ли на врага. не наступил ли на бомбу) и т.д.

у меня спустя 10 секунд мигания игра остановилась ваще)

ну и мелочь - если карта не загрузилась уж сделай выход из игры. а не продолжение.
0
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
29.07.2011, 19:01
А я хотел просто предложить поднять честоту перерисовки до заветных 24 кадров в секунду)
0
 Аватар для OstapBender
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
29.07.2011, 19:06
leoned, скорей всего не поможет а только мигать будет чаще. к тому же параллельностью там не пахнет - перерисовка прост с каждым шагов делается.
просто перерисовывать всю карту очень не рационально.

ага так и знал - system("cls"); ...
автор - юзай SetConsoleCursorPosition и закрашивай std::cout << ' '; затем с помощью этой же функции двигайся в бок и рисй опять человечка. и усё.
0
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
29.07.2011, 19:07
Цитата Сообщение от OstapBender Посмотреть сообщение
просто перерисовывать всю карту очень не рационально.
ну в принцепи так и есть это я чёт тупанул
0
0 / 0 / 0
Регистрация: 08.03.2011
Сообщений: 44
30.07.2011, 22:49  [ТС]
автор - юзай SetConsoleCursorPosition и закрашивай std::cout << ' '; затем с помощью этой же функции двигайся в бок и рисй опять человечка. и усё.
а можешь плз поподробнее написать - в часности что значит закрашивать std::cout<< ?
Что такое стд я знаю...

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

+ как паралельность сделать ?
0
 Аватар для OstapBender
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
30.07.2011, 22:57
Цитата Сообщение от nikitos9305 Посмотреть сообщение
а можешь плз поподробнее написать - в часности что значит закрашивать std::cout<< ?
могу. эт значит что надо закрасить место на экране, где был моб пустым символом ' '.
Цитата Сообщение от nikitos9305 Посмотреть сообщение
+ как паралельность сделать ?
забей на это. тут это будет слишком круто.
0
0 / 0 / 0
Регистрация: 08.03.2011
Сообщений: 44
31.07.2011, 00:26  [ТС]
так у меня так оно и происходит - идея такова - есть каркас- цыфровое поле которое находиться под картой - при выводе цыфры преобразуються в символы акси...

про паралельность:
тобишь сам стиль написания кода делает паралельность труднодоступной ?

Ну а все же каков алгоритм для паралельности - может какие то специальные функции из win_api использовать нужно ?
0
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
31.07.2011, 12:29
Цитата Сообщение от nikitos9305 Посмотреть сообщение
win_api
зачем?это ж конслоль?
0
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
31.07.2011, 19:15
Цитата Сообщение от leoned Посмотреть сообщение
зачем?
Цитата
Цитата Сообщение от nikitos9305 Посмотреть сообщение
Ну а все же каков алгоритм для паралельности - может какие то специальные функции из win_api использовать нужно ?
0
0 / 0 / 0
Регистрация: 08.03.2011
Сообщений: 44
31.07.2011, 22:40  [ТС]
Ребята, а с ускорением то что делать ?
0
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
01.08.2011, 11:21
Цитата Сообщение от nikitos9305 Посмотреть сообщение
ускорением
Ускорением чего?врагов?
0
 Аватар для Mayonez
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
01.08.2011, 15:04
Цитата Сообщение от nikitos9305 Посмотреть сообщение
(третяя на моем счету)...
предыдущие посмотреть можно?
0
 Аватар для leoned
31 / 31 / 0
Регистрация: 30.06.2011
Сообщений: 467
01.08.2011, 15:33
Цитата Сообщение от Mayonez Посмотреть сообщение
предыдущие посмотреть можно?
да кстати очень интересно было-бы взглянуть
0
Временно недоступен
 Аватар для #pragma
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
01.08.2011, 20:24
nikitos9305 чисто интересно,сколько у Вас заняло написание этого кода с нуля?
0
 Аватар для Gepar
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
02.08.2011, 00:02
Некоторые коммантарии на русском, некоторые на английском.
И реально много if/else. Особенно пугают условия где в if штук 40 или.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.08.2011, 00:02
Помогаю со студенческими работами здесь

Почему тормозит комп
Кто может помочь тормозит комп рчень сильно хоть на хп хоть на 7 !!!! проц не грузится оператива то же в норме !!! комп интел пентиум дуал...

Почему тормозит background
Всем хорошего дня. Сделал по уроку задний фон которые двигается циклично имитируя движение в 2d игре. Обычный бокс, текстурка и скрипт в...

Почему тормозит компьютер?
Комп при жаре тормозит нереально. Смотреть видео онлайн невозможно, вкладки браузеров грузятся очень медленно. В Диспетчере задач...

Тормозит пк, непонятно почему
1)intel core i5 4570 2)msi z87m gaming 3)8 gb (kingston) 4)msi gtx 970 4g gaming 5)wd black wd1003fzex 6)Блок питания THERMALTAKE...

Комп почему он тормозит
Почему на моем компьютере тормозят почти все игры,Системные требования: AMD Athlon(tm)64X2 Dual Core Processor 5000+ 2.61ГГц,2,00ГБ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru