|
4 / 4 / 4
Регистрация: 11.10.2013
Сообщений: 123
|
||||||
Игра из текста в консоли: как ускорить прорисовку?27.11.2013, 17:26. Показов 3141. Ответов 5
Метки нет (Все метки)
Здравствуйте, я решил реализовать игру, используя консоль. (именно консоль, т.к. хочу сделать закос под "доисторические игры") Игру эту знают все - это змейка. Алгоритм её прост, я его уже реализовал, однако есть проблема. На экран выводится двумерный массив символов. 80*24 (под размер консольного окна) При передвижении змейки значение символа с координатой просто изменяется на "есть" или "нету" символа. И каждый раз при подобном изменении происходит "перерисовка" массива, т.е очищается консоль
Недостаток такого метода заключается в том, что массив долго выводится. Т.е. за то время пока он выводится на экран может произойти какое-то изменение и массив заново перерисовывается. Т.е. постоянно "моргает". Так вот, скажите, можно ли на экране выводить только изменённые символы в заданном интервале(координатами), а остальные не трогать?
0
|
||||||
| 27.11.2013, 17:26 | |
|
Ответы с готовыми решениями:
5
Как ускорить прорисовку пикселями? Как ускорить прорисовку? Как ускорить прорисовку |
|
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
|
|
| 27.11.2013, 17:29 | |
|
Red-Cat-Fat, можно, но это уже костыль (хотя необходимый). устанавливайте Console.CursorLeft и Console.CursorTop на нужные символы.
2
|
|
|
4 / 4 / 4
Регистрация: 11.10.2013
Сообщений: 123
|
|
| 27.11.2013, 17:54 [ТС] | |
|
Спасибо, но как понять, нарисовано ли что-то в заданных координатах или нет?
0
|
|
|
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
|
|
| 27.11.2013, 17:59 | |
|
Red-Cat-Fat, никак по-моему. надо было делать классы. змею определять классом, корм определять классом, в классах хранить координаты символов, по которым и ставили бы Console.CursorLeft и Console.CursorTop.
1
|
|
|
4 / 4 / 4
Регистрация: 11.10.2013
Сообщений: 123
|
|
| 27.11.2013, 18:05 [ТС] | |
|
Не, змею я через класс делал. Только я нарисую и забуду. Т.е. рисовал первый символ и удалял последний, только перед рисованием первого символа проверяю, не написанно ли что-то в след. точке. Если пусто - прорисовываю ход. Если что-то написано - конец игры.
0
|
|
|
273 / 241 / 56
Регистрация: 29.05.2012
Сообщений: 889
|
|
| 27.11.2013, 18:26 | |
|
http://msdn.microsoft.com/ru-r... .110).aspx
Делаем вывод в свой массив, а потом копируем его на консоль, скорость приемлемая.
2
|
|
| 27.11.2013, 18:26 | |
|
Помогаю со студенческими работами здесь
6
Как ускорить прорисовку DataGridView? Как ускорить прорисовку изображения?
C# + OpenGL. Рисование карандашом. Как ускорить прорисовку линии Как ускорить поиск текста в текстовом файле? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|