|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
|
Прошу критики игры "Змейка"20.06.2018, 15:06. Показов 6428. Ответов 85
Метки нет (Все метки)
Привет.
Недавно написал змейку. Прошу оценить и покритиковать немного,мб какие-то предложения,поправки.
0
|
|
| 20.06.2018, 15:06 | |
|
Ответы с готовыми решениями:
85
Змейка, завершение игры Прошу критики Прошу вашей критики |
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
|||||
| 06.07.2018, 18:29 | |||||
|
Или запускать виртуалку с Убунтой? В первом случае можно написать простенький сборочный скрипт (который перерастет в makefile) Во втором - найти нужные библиотеки под винду. Если поискать сборку ncurses, там есть несколько dll'ок, наверное можно подключить их. Поэтому имеет смысл изобрести велосипед - кустарную поделку, во многом уступающую готовым аналогам. Зато станет понятно, где встречаются узкие или опасные места, смотреть как решали проблемы вы - и как сторонние разработчики. Помимо прочего, полученные знания могут пригодиться в совершенно другой области.
1
|
|||||
| 06.07.2018, 21:13 | ||||||||||
|
Это потому что управление сделано через if/else. Я сделаю просто через if потом, изменений побольше накопится.
Добавлено через 1 час 52 минуты
0
|
||||||||||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
|||
| 07.07.2018, 09:42 | |||
|
P.S. не нашел на какую кнопку оно закрывается, поэтому убивал по alt+F4. P.P.S. превращаться в тестера вашей игрушки особого желания нет.
1
|
|||
| 08.07.2018, 10:23 | ||||
|
Добавлено через 5 часов 48 минут Добавлено через 15 часов 5 минут Если хочется изучать основы 2D и 3D графики без привязки к графическому API, то есть такие книги. Я, правда, только некоторые читаю небольшими кусками. В общем об основах 2D/3D графики:
Книги по математике (об основах графики) и физике:
В общем о создании движков:
0
|
||||
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
|
| 08.07.2018, 15:17 [ТС] | |
|
8Observer8,спасибо за книги,будет очень полезно))
0
|
|
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
||
| 08.07.2018, 16:15 | ||
|
0
|
||
| 08.07.2018, 16:53 | |
|
Такой тутор есть по нешейдерному OpenGL: C++ 2D Pong Game. В нём показано, как просто текст выводить с помощью средств GLUT. Если хотите, можете его выполнить и потом змейку переписать, может там немного нужно будет переписывать, а может всё, но это опять же практика. Я выполнял этот тутор, он короткий и английский там простой. Мерцать экран не будет, скорость змейки можно сделать нормальной, а не так как у вас: вверх она с одной скорость движется, а вниз с другой.
0
|
|
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
|||||||
| 08.07.2018, 18:58 [ТС] | |||||||
|
8Observer8,
окей я гляну,посмотрим что можно будет сделать Добавлено через 5 минут COKPOWEHEU, я наконец-то прокомментировал тот код
а еще почему-то 90% всей информации находится на порталах посвященных linux и другим unix-подобным системам
0
|
|||||||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
||||||||||||||||||||||
| 09.07.2018, 10:46 | ||||||||||||||||||||||
|
А входные аргументы я написал по другим причинам. 1. Так правильно. В смысле, объявление void main() это скорее синтаксический сахар (причем с void - еще и незаконный, то есть выдает ошибку). На самом деле, можно писать и без параметров.2. Особенность SDL, к которому мы, надеюсь, придем. Вот для него объявление main с правильными параметрами и правильным возвращаемым значением является обязательным. Иначе просто не соберется. По умолчанию при нажатии клавиши, ее символ отображается на экране - так называемое эхо. Так вот, командой noecho мы это отображение отключаем. Сам ввод, естественно, сохраняется. При обычном вводе (scanf, gets, getch и т.п.) программа будет ждать ввода хотя бы одного символа. А для игры это неприемлемо, поэтому timeout задает максимальное время ожидания, после которого функции ввода будут возвращать "буфер пуст". Для нас это вполне штатная ситуация. . У вас проблемы с форматным выводом? Комбинация printw(" %i ", key); достаточно стандартная, ваш комментарий меня удивил. Возможно, вы просто не сталкивались с Си-шным вводом-выводом, предпочитая плюсовый? Не уверен что ncurses умеет работать с std::cin, std::cout. Конечно, для простейшей змейки это не критично. Но все равно разобраться с обычными, не связанными с ncurses, функциями ввода-вывода в Си - printf, scanf - лишним не будет. . Я думаю, что по этому шаблону уже можете начать переносить свою змейку на ncurses. Лично для меня интереснее писать свои программы, чем комментировать чужие, поэтому не буду навязываться пока со своим кодом - пишите как считаете нужным. Впрочем, если хотите помощи с какой-то конкретной областью - обращайтесь. Напоминаю, что стоит добавить константы для клавиш, для символов самой змейки и прочего. Только вот еще что. Как я говорил в начале, стоит "завернуть" близкие по смыслу переменные в одну структуру или класс. Я бы предложил начать с самой змейки:
0
|
||||||||||||||||||||||
| 09.07.2018, 15:57 | |||
Добавлено через 4 часа 14 минут
0
|
|||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
|
| 10.07.2018, 13:40 | |
|
Решился все-таки написать простенькую змейку на OpenGL 1 + SDL2. Настройка клавиш в файле settings.cfg. Столкновения не приводят к поражению.
0
|
|
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
||
| 10.07.2018, 18:04 [ТС] | ||
|
COKPOWEHEU,
Я там доделал функцию рестарта еще.Теперь хочу весь код раскидать по классам,а переменные запихнуть в структуры,и будет конфетка)
0
|
||
| 10.07.2018, 19:37 | ||
|
0
|
||
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
||||||
| 11.07.2018, 02:15 [ТС] | ||||||
|
8Observer8, на acmp и codeforces
в школьных участвовал,сейчас-только в интернете Добавлено через 5 минут
Внешне больше не изменится,хотя как я понимаю-после переноса на curses перестанет мигать,так ведь? Осталось довести код до ума П.С.:Не ругайте за гото,я абсолютно уверен-что тут в нем не запутаюсь,злоупотреблять не собираюсь,и вижу его тут-как самое наглядное и простое решение.
0
|
||||||
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
|
| 11.07.2018, 02:18 [ТС] | |
|
вот еще в exe
0
|
|
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
||||||||||||||
| 11.07.2018, 07:58 | ||||||||||||||
0
|
||||||||||||||
| 11.07.2018, 10:01 | ||
|
youtube
0
|
||
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
||||
| 11.07.2018, 13:32 [ТС] | ||||
|
COKPOWEHEU,
0
|
||||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,965
|
||||
| 11.07.2018, 14:03 | ||||
|
Но вот для перехода назад он не оправдан никогда - для этого существуют циклы. В моей практике был единственный случай использования goto, при преобразовании класса (где при любой ошибке стоял return с разными кодами возврата) в линейную программу, которая должна быть максимально простой. Так что либо выносить все в функцию, либо городить вложенные if'ы, либо таки goto.
0
|
||||
|
2 / 2 / 0
Регистрация: 08.06.2018
Сообщений: 66
|
||||||
| 14.07.2018, 19:28 [ТС] | ||||||
|
COKPOWEHEU, я немного поправил код,все ли здесь хорошо?Решил отложить классы пока код не длинный,но про структуры не забыл.
если все гуд,приступаю к curses
0
|
||||||
| 14.07.2018, 19:28 | |
|
Помогаю со студенческими работами здесь
60
Прошу вашей критики Прошу критики и рекомендаций Прошу критики от профессионалов... Прошу критики моего списка
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации:
В классе Работник добавить:
накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни
коэффициентПрезентеизма — снижает продуктивность. . .
|
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день.
Для работы необходим браузер,. . .
|
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности
Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано.
. . .
|
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
|
|
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива
Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
|
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так?
Да, всё верно. Я — искусственный интеллект.
Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
|
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает.
В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше.
Перед запуском проверяем. . .
|
Модель здравоохранения 13. Добавление самой системы здравоохранения.
anaschu 22.05.2026
В предыдущем посте мы настроили болезни. Теперь добавим события, которые управляют здоровьем всего коллектива, а также настроим рабочий график и расчёт финансов.
В Main создаём четыре события. . . .
|