Йо-хо-хо и бутылка грога! Всех с пасхальным днем солидарности трудящихся! А тут и на наших пенатах релизец с маленькой, но вкусной плюхой для боевого геймплея и шагом в сторону крутой модифицируемости почти как у Bethesda!
Мистер Дарин, ваш арт мне не нравиццо... Если ничего не менять - не выйдет сделать игру продаваемой. Немного пованговал, ну да ладно... Ждём апдейт графики.
Тогда понятно, почему производительность просела. TBitmap при изменении пикселя лочит память картинки, копирует содержимое одного пикселя (или всю картинку... уже точно не вспомню) в область для редактирования, присваивает новое значение пикселя, потом копирует всё это дело обратно и анлочит память. Работа с памятью весьма времязатратная операция, особено блокировка и копирование. Попробуй заюзать свою реализацию TBitmap, который будет лочить всю картинку и копировать сразу весь кусок картинки для редактирование и работать уже с этим куском, а потом разлочить. Говоря про свою реализацию, я иммею ввиду, то что можно взять готовую ;)
В имеющейся имплементации все было не НАСТОЛЬКО плохо: во-первых, битмап маленький, во-вторых, там довольно простой алгоритм. Сформированная битмапка подсовывалась движку в качестве текстуры панельки с картой. Главной проблемой была именно ЧАСТОТА )) Но я покопаюсь в этом вопросе, глядишь что и смогу почерпнуть. Возможно. Я пермачайник.
Тогда понятно, почему производительность просела. TBitmap при изменении пикселя лочит память картинки, копирует содержимое одного пикселя (или всю картинку... уже точно не вспомню) в область для редактирования, присваивает новое значение пикселя, потом копирует всё это дело обратно и анлочит память. Работа с памятью весьма времязатратная операция, особено блокировка и копирование. Попробуй заюзать свою реализацию TBitmap, который будет лочить всю картинку и копировать сразу весь кусок картинки для редактирование и работать уже с этим куском, а потом разлочить. Говоря про свою реализацию, я иммею ввиду, то что можно взять готовую ;)
Которая рисовалась средствами Windows GDI на каждую смену кадра.
Вут, зачем так делать? Почему не средствами видеокарты как и все остальное?
Нудык, нацарапать несколько клеточек на TBitmap или ваять целый алгоритм бытия святых в "чистой" OpenGL... Мой уровень профессионализьма не оставляет выбора ))
Приветствия из Мории, где вечно делают какую-то муть. На сей раз я хочу предложить вашему вниманию проект, который находится в разработке уже один варп знает сколько времени, и я его даже светил в паре-тройке локаций интернетов, но не на XGM.
Прошу любить и жаловать - Lo of the Dark, рогалик с претензией на олдскульность.
Дело в том, что сбой в ntdll.dll означает скорее всего ошибку работы с файловой системой.
ntdll - это практически ядро WinApi, так что это может быть всё что угодно. Попробуй повесить try / catch блок на всё приложение и куда-нибудь записывать стэк-трейс
Комментарии проекта Lo of the Dark
Выбор редакции
Lo of the Dark 0.12.8 - Много техники и немного геймплея
Ред. Дарин
Lo of the Dark
nanac: Спасибо. Будем думать и разбираться... Вопрос интересный.
+