doom2d.org

Главная база плоских морпехов
Текущее время: 19 апр 2024, 06:04

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 113 ]  На страницу 1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Разработка версии 0.65
СообщениеДобавлено: 10 янв 2014, 05:01 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Да, такие дела.
Обрисую текущее положение. 0.6 окончательно зашла в тупик в плане расширяемости кода и больше разрабатываться не будет, а создание версии 0.7, чем сейчас и занимается Примус, займёт неизвестное, но определённо продолжительное количество времени.
Ввиду всего этого мною было принято решение начать разработку версии 0.65. Делать я её буду вместе с Примусом (на него я возлагаю надежды как минимум с написанием звуковой подсистемы и новой физики) на GM 8.1 + FaucetNET. С нуля.
Сразу предупреждаю, что никаких особых иллюзий строить не нужно: я пока сам не знаю, удастся ли мне разработать что-либо по-настоящему годное и расширяемое (однако очень на это надеюсь). Поэтому если ничего не получится, то ответственности за ваши разочарования я нести не буду.

Собственно, в этом сообщении будет располагаться периодически обновляемый отчёт о ходе разработки.
Итак, поехали.

Готовность 0.65: 6%

19.07.2014
  • В кои-то веки написал установку видеорежима. Однако она пока не работает - я обнаружил, что функции смены разрешения экрана поломаны в 8.1 как класс. Придётся написать свои и впихнуть в рантайм-библиотеку - надеюсь, получится.

18.07.2014
  • Написал пару функций для обработки клавиш клавиатуры с последующим очищением их состояний. Главное отличие от встроенных keyboard_*_pressed() в том, что клавиши после очистки продолжают опрашиваться.
  • Параллельно начал написание редактора. Устал я от рутинного кода, хочется уже чего-то более интересного.

21.06.2014
  • Обнаружил и решил архитектурную проблему с одновременной обработкой пользовательских элементов интерфейса (поля ввода, например).
  • Попытался написать поля ввода для меню. Пока неудачно.

19.06.2014
  • Написал основную часть системы меню. Доработки вроде полей ввода будут делаться по надобности.

13.04.2014
  • Написал загрузку шрифтов. Сначала грузится стандартный шрифт, а затем шрифт национального алфавита при его наличии. Хранятся в стандартном формате спрайтов GM, что позволяет не тратить слишком много времени на их загрузку.
  • Начал доработку консоли и обработчиков команд.

11.04.2014
  • Дописал загрузку строк локализации. Т.е. уже можно считать, что игра поддерживает мультиязычность. Однако есть оговорка: поддерживаться будут только те языки, у которых есть однобайтовая кодировка. Для исправления этого придётся править класс ввода текста и вникать глубже в систему шрифтов GM 8.1. Однако на данный момент это совершенно некритично, ну а пока строка "LANG: Пакет локализации успешно загружен: Russian.lpf" стала первым подтверждением работоспособности системы локализации.
  • Разработал концепцию загрузки шрифтов. Попробовал написать тестовую реализацию - результат неудовлетворительный: около семи минут загрузки игры и битые шрифты. Однако сразу уточню: я пробовал загружать стрип полусамопальным кодом, что само по себе уже говорит о тормознутости. Поэтому символы шрифтов придётся либо объединять в одну линеечку, либо просто сделать их загрузку из стандартного формата GM. Пока что я склоняюсь ко второму варианту, так как это будет во-первых быстрее, а во-вторых проще для редактирования.

08.04.2014
  • Дописал класс для ввода текста с клавиатуры. Теперь он корректно работает с национальным алфавитом, но не поддерживает UTF-8. Однако это мне и не нужно, так как будет система локализации игры.
  • Написал кучу рутинных функций.

04.04.2014
  • Написал основу для консоли.
  • Написал няшный класс для ввода текста с клавиатуры. Поддерживает навигацию по нему, многострочность, а также вставку из буфера обмена. Будет использован в консоли и чате.
  • Обнаружил, что функция string_replace() не была адаптирована в GM 8.1 под UTF-8, спасибо Овермарсу. Из-за этого класс ввода текста не работает с кириллицей и вообще национальными кодировками. Пока думаю над решением.
  • Написал основу для пакетов локализации. Осталось реализовать подключение шрифта национального алфавита.

26.03.2014
  • Окончательно продумал внутреннюю структуру исходника. Нормальных (sic!) программистов прошу не плеваться - это GM, поэтому такое понятие там действительно присутствует.
  • Почти написал инициализационную часть игры.

17.01.2014
  • Написал пробную реализацию видеосистемы для демонстрации (скачать, 1.67 Мб). Можете возрадоваться - мне удалось реализовать первоначальную концепцию с фиксированной дальностью вида, элементы интерфейса теперь не размываются, а масштабированию подвергается только игровое поле (причём масштабирование можно отключить). Единственная ложка дёгтя - поскольку это пробная реализация, то я не особо утруждал себя стилем написания, так что написано всё это крайне хреново и поэтому забаговано. Переписывать буду определённо, эту же демонстрацию выложил исключительно для ознакомления с её возможностями.

16.01.2014
  • Продумал реализацию видеосистемы, начал написание окончательного варианта. Если получится (а я в этом практически полностью уверен), то будет замечательно, в противном же случае буду действовать по плану B (смена разрешений как в D2D:F с изменяемой дальностью вида).
  • Сделал первые наброски исходника самой игры.

10.01.2014
  • Начал эксперименты с написанием видеосистемы. В планах - нормальная поддержка разных разрешений экрана без размыливания элементов интерфейса и шрифтов, при этом с сохранением дальности вида.
  • Почти завершил продумывание архитектуры совмещённого в одном бинарнике клиента и сервера. В планах - возможность переключения сервера между выделенным и игровым режимами в произвольный момент времени. В игровом режиме, ясное дело, понятие пинга для игрока-сервера будет отсутствовать как таковое.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 10:16 
Не в сети
Аватара пользователя

Зарегистрирован: 04 ноя 2009, 03:52
Сообщения: 540
Откуда: East Syb
Ах вот оно что. Ну тогда понятно, то есть то, во что сейчас можно поиграть это все, на что способен данный ГМ? Печально.

_________________
And when ja ja guy come,
The Babylon them have to run.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 10:50 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
А сделайте, чтоб небо не растягивалось на весь экран искажаясь, а чтоб пропорции сохранялись. Например можно длину оставлять неизменной, а высоту обрезать в зависимости от формата.
И будет ли изменён формат карт в 0.65?

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 12:42 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Revenant писал(а):
Ах вот оно что. Ну тогда понятно, то есть то, во что сейчас можно поиграть это все, на что способен данный ГМ? Печально.
Откуда такой вывод? Вовсе нет. Это 0.6 сама по себе криво написана.

ar888 писал(а):
А сделайте, чтоб небо не растягивалось на весь экран искажаясь, а чтоб пропорции сохранялись. Например можно длину оставлять неизменной, а высоту обрезать в зависимости от формата.
Зачем? И не понял про зависимость от формата.
Вполне возможно, что вообще будет параллакс-скроллинг.

ar888 писал(а):
И будет ли изменён формат карт в 0.65?
Да. По сути 0.65 - это 0.7 на GM.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 12:57 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
Черный Думер писал(а):
Зачем? И не понял про зависимость от формата.
Вполне возможно, что вообще будет параллакс-скроллинг.

Я уже 3 раза сталкивался с этой проблемой при создании карт в МП: на TricDM, на Ascent (тут в итоге пришлось заменить небо на фон) и на Castlevania. Именно из-за этого неправильного неба приходится избегать пейзажей с солнцем/луной. Поиграй с на этих картах с HUD'ом и без. Круги превращаются в овалы. В общем это растягивание ужасно.
Черный Думер писал(а):
Да. По сути 0.65 - это 0.7 на GM.

Ну конвертер, надеюсь, будет сделан?

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 12:57 
Не в сети
Аватара пользователя

Зарегистрирован: 04 ноя 2009, 03:52
Сообщения: 540
Откуда: East Syb
Черный Думер писал(а):
Откуда такой вывод?

Я вообще не знал, спасибо за разъяснения :) А если даже с нуля, то будет это быстрее, чем 0.7?

_________________
And when ja ja guy come,
The Babylon them have to run.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 13:02 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Revenant писал(а):
Дак это получается совсем все с нуля будет?
Да, с нуля. Да, на GM. Но это будет версия 8.1 (которая куда более оптимизирована по сравнению с 8.0, доказательство - если снять ограничение на FPS, то простой двумерный бенчмарк на 8.0 будет выдавать где-то 300 кадров, а на 8.1 - едва ли не больше 7000). И это будет FaucetNET взамен старого и глючного 39DLL.

Revenant писал(а):
А если даже с нуля, то будет это быстрее, чем 0.7?
Да, конечно. 0.7 пишется на Си, а это займёт определённо на порядок больше времени.

ar888 писал(а):
Я уже 3 раза сталкивался с этой проблемой при создании карт в МП: на TricDM, на Ascent (тут в итоге пришлось заменить небо на фон) и на Castlevania. Именно из-за этого неправильного неба приходится избегать пейзажей с солнцем/луной. Поиграй с на этих картах с HUD'ом и без. Круги превращаются в овалы. В общем это растягивание ужасно.
А как иначе? Единственный выход - параллакс-скроллинг. Но я не уверен, что он реализуем на GM.

ar888 писал(а):
Ну конвертер, надеюсь, будет сделан?
Безусловно. Причём встроенный в редактор.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 12 янв 2014, 13:35 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
Черный Думер писал(а):
А как иначе?

Ну вот я и предлагаю масштабировать небо без искажения пропорций, чтоб по горизонтали оно стало равно игровому окну (имеется в виду с HUD'ом или без), а по вертикали всё, что не влезло просто обрезать.
Вложение:
SKY.png
SKY.png [ 725 байт | Просмотров: 22692 ]

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 13:01 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Написал пробную демонстрационную версию видеосистемы, скачать можно по ссылке в первом посту. Там же все подробности. Любые отзывы только приветствуются.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 13:26 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
Отлично! Даже меньше можно ставить. Только у меня что-то странное происходит при разрешении 320х200, но играть в таком никто и не станет.

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 13:34 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Спасибо за отзыв.)
Кстати, меня там больше всего радуют интерполяция и масштабирование.

ar888 писал(а):
Только у меня что-то странное происходит при разрешении 320х200
Это потому, что там непропорциональное масштабирование. Я ещё не решил, как сделать - либо пропорционально, либо с маленьким увеличением дальности вида по вертикали. Лично я склоняюсь всё-таки ко второму. Но в любом случае это будет уже в финальной версии видеосистемы, которая в дальнейшем будет встроена в 0.65.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 15:04 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 01 янв 2011, 00:39
Сообщения: 1945
Откуда: Полигон НТИИМ

Изображение


Также не вижу разницы в картинке без масштабирования с и без фильтрации. Хоть бы небо мылило. Было бы классно.

_________________
Изображение DM2002 testing
Изображение Total Destruction - F
EDODLΔ


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 15:07 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
GranMinigun писал(а):
Также не вижу разницы в картинке без масштабирования с и без фильтрации.

Она вроде бы при 1024х768 и не происходит. Заметна только при отличных разрешениях.

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 15:17 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
GranMinigun писал(а):
Ее вообще без масштабирования нет. Не труЪ.
С чего бы это "не труЪ"? Она и должна быть только при масштабировании.
По поводу скриншота - последовательность действий в студию. И да, я предупреждал про баги. Скорее всего, это один из них, который будет починен вместе с остальными при последующем переписывании.

UPD: Зря ты то сообщение стёр.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 17:15 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 01 янв 2011, 00:39
Сообщения: 1945
Откуда: Полигон НТИИМ
Просто выставил свое родное разрешение (1366*768).
Не труЪ - ибо небо пиксельное. Не красиво.

_________________
Изображение DM2002 testing
Изображение Total Destruction - F
EDODLΔ


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 17:43 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
GranMinigun писал(а):
Просто выставил свое родное разрешение (1366*768).
Значит вот ты и будешь тестировать окончательный вариант. :3
Надеюсь, ты перед установкой разрешения полноэкранный режим поставил? Потому что иначе у тебя просто по высоте окно не подошло, так как в шинде её максимальное значение равно %высота_разрешения% - 16 пикселей.

GranMinigun писал(а):
Не труЪ - ибо небо пиксельное. Не красиво.
Ну во-первых, тут неба как такового нет. Тут вообще ничего нет, а та картинка - обычный скрин. Во-вторых, отключение интерполяции действует на отрисовку как таковую. В-третьих, я ещё попробую сделать опциональное сглаживание неба, однако обещать ничего не могу и не буду.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 18:00 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 01 янв 2011, 00:39
Сообщения: 1945
Откуда: Полигон НТИИМ
Вот и замечательно :3
Фуллскрин выставил потом. Буду проверять, но чуть позже.

_________________
Изображение DM2002 testing
Изображение Total Destruction - F
EDODLΔ


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 20:18 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 17 окт 2009, 23:43
Сообщения: 7532
Откуда: \\HULK
На широкоэкранном мониторе пропорции портятся. Лучше поля делать слева и справа.
И (как дезигнер говорю) надо менее яркую и контрастную текстуру на поля. Можно вообще черный фон, можно что-то темно-серое. Можно нижнюю часть HUD попробовать.

В остальном все очень радует.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 20:55 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 17 окт 2009, 19:57
Сообщения: 4016
Откуда: Киров
Jabberwock писал(а):
На широкоэкранном мониторе пропорции портятся. Лучше поля делать слева и справа.

А там и так поля на широкоформатном мониторе добавляются (по крайней мере у меня). Просто вписываешь разрешение с соотношением 4:3 и делаешь на полный экран.

У меня большие надежды на 0.65. Надеюсь там и триггеры новые (из ДФ) будут, и оружия/предметы новые, и монстры, и режимов много новых, и время раунда отображаться будет, и ограничения на получаемые очки увеличат (тогда за донесение флага можно по 2 очка засчитывать, а за возвращение - одно), и статистика расширенная (сколько убил, сколько смертей, сколько фрагов), и ещё много-много всего.

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка версии 0.65
СообщениеДобавлено: 17 янв 2014, 23:47 
Не в сети
Принципиально неуничтожаем
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 6678
Откуда: Владивосток
Jabberwock писал(а):
На широкоэкранном мониторе пропорции портятся. Лучше поля делать слева и справа.
Ставь разрешение с соотношением сторон 4:3 и радуйся. Я же не зря при компиляции галку "Keep aspect ratio" ставил.

Jabberwock писал(а):
И (как дезигнер говорю) надо менее яркую и контрастную текстуру на поля. Можно вообще черный фон, можно что-то темно-серое. Можно нижнюю часть HUD попробовать.
Я эту текстуру выбрал потому, что такая же использовалась в оригинальном Doom. И лично мне всё нравится. Однако попробовать заменить могу, у меня есть несколько текстур на примете. Только вот нижняя часть HUD не пойдёт никак.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 113 ]  На страницу 1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
doom2d.org, since 2005