HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Страницы (240): « Первая ... « 76 77 78 79 [80] 81 82 83 84 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Ну https://ru.wikipedia.org/wiki/%D0%9...%BD%D0%B8%D0%B5

Добавлено 27-03-2020 в 00:36:

Помните как Бабушкин предлагал взять большое число? )

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191529

Старое сообщение 26-03-2020 21:36
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Будущее меню сейвов. Каждая надпись в таблице - отдельная колонка.

[ Вложение ]
saveload.jpg

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191540

Старое сообщение 27-03-2020 12:25
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Ну вот как-то так.

Добавлено 27-03-2020 в 15:59:

Опять джипег цвета побил

[ Вложение ]
newsave.jpg

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191545

Старое сообщение 27-03-2020 12:59
-
Crystallize
Житель форума

Дата регистрации: Jul 2007
Проживает: Новосибирск
Сообщений: 4422
Возраст: 34

Рейтинг



Дядя Миша ты же вроде писал пакер джипега который не артефачит?

Сообщить модератору | | IP: Записан
Сообщение: 191548

Старое сообщение 27-03-2020 13:09
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Crystallize да это форум ещё раз сжимает.

Сообщить модератору | | IP: Записан
Сообщение: 191550

Старое сообщение 27-03-2020 13:25
- За что?
thambs
мразь конченная

Дата регистрации: Mar 2006
Проживает: -
Сообщений: 6417

Рейтинг



Дядя Миша
А шрифты с альфа-каналом и размером побольше можно будет сгенерить?

__________________
http://www.moddb.com/mods/monorail-quest

Сообщить модератору | | IP: Записан
Сообщение: 191551

Старое сообщение 27-03-2020 13:26
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
Crystallize писал:
ты же вроде писал пакер джипега который не артефачит?

Ты издеваешься штоли? Или ты тонко предполагаешь что я умнее всей JPEG?

Цитата:
thambs писал:
А шрифты с альфа-каналом и размером побольше можно будет сгенерить?

А эти по твоему какие? Без альфа-канала штоли? Можно, конечно можно. Можно из ttf сгенерить абсолютно любой шрифт любого размера, сделать ему обводку, подчёркивание и размытие. Болды, италики, весь набор.

В новом ксаше я практикую вот какую концепцию: вся низкоуровневая часть пользовательской библиотеки является её же частью и находится в папке backend. Для меню - это соответственно базовые элементы интерфейса, для игровой части - физика, сейв-рестор, чейнджлевел. Всё это в пользовательских исходниках, обычно туда лезть и не надо, но если нужно, то можно переписать вообще полностью. А движок предоставляет на вход такие интерфейсы, которые точно никогда не поменяются - взаимодействие с консолью, файловой, механизм загрузки шрифтов и текстур.
То есть не возникнет ситуации, как в той же халфе, когда в API опять не хватает какой-то одной функции и придётся городить новые интерфейсы.
Меня это всегда ужасно бесило. До смешного доходит - в халфе даже запрет на сейв нельзя было сделать по нормальному.

Добавлено 27-03-2020 в 19:35:

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

Добавлено 27-03-2020 в 21:02:

Я неоднократно говорил, что у меня работа со всеми этими менюшками вызывает отторжение. Но в данном случае работа идёт ровно. А почему? А потому что я работаю над бакэндом, мне не надо подбирать эти долбаные координаты положения окошек - они уже подобраны в старом меню.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191554

Старое сообщение 27-03-2020 18:02
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12899
Возраст: 32

Рейтинг



Эх, так нормального скриптового меню и не будет. Только захардкоженное.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Сообщить модератору | | IP: Записан
Сообщение: 191569

Старое сообщение 27-03-2020 19:56
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



FiEctro

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191570

Старое сообщение 27-03-2020 21:08
-
SNMetamorph
Житель форума

Дата регистрации: Jun 2018
Проживает: Ижевск
Сообщений: 560

Рейтинг



Цитата:
FiEctro писал:
скриптового меню

Я, если честно, не очень представляю как это так может быть.
Ну к примеру внешний вид и расположение элементов в окошке вполне можно в скрипты перенести. Но что делать с поведением-то? Ну вот прописали мы в скрипте кнопку, цвет ей прописали и размер, а что будет при нажатии происходить? Как это связать с кодом самой игры?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord

Сообщить модератору | | IP: Записан
Сообщение: 191571

Старое сообщение 28-03-2020 01:30
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Для скриптовых меню довольно много будет разных ограничений. Ну к примеру как делать условные кнопки, которые показываются не всегда?
Например кнопку консоли. Значит придётся городить целый язык, зачем это надо.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191574

Старое сообщение 28-03-2020 05:24
-
nemyax
Нёмыч

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 4137

Рейтинг



Цитата:
Дядя Миша писал:
Значит придётся городить целый язык

Ну язык C++ уже нагорожен. Ты же предоставишь апишку?

Сообщить модератору | | IP: Записан
Сообщение: 191575

Старое сообщение 28-03-2020 07:00
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Я ж говорю, фреймворк в исходниках будет внутри пользовательского кода.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191577

Старое сообщение 28-03-2020 08:11
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12899
Возраст: 32

Рейтинг



>> Для скриптовых меню довольно много будет разных ограничений. Ну к примеру как делать условные кнопки, которые показываются не всегда?
Например кнопку консоли. Значит придётся городить целый язык, зачем это надо.

Не думаю что там что то сложнее материалов или ентитей.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Сообщить модератору | | IP: Записан
Сообщение: 191579

Старое сообщение 28-03-2020 08:57
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32208
Нанёс повреждений: 392 ед.

Рейтинг



Если кому-нибудь интересно, как я работаю:

итак, вот у нас есть старое меню. Это меню, если кто забыл, взято из Quake 2 Evolved 0.40 и довольно серъезно адаптировано к стилю WON-меню.
Ну как адаптировано - структура его не менялась особо, костылей налепили всем миром, Крейзи Рашшен помогал его писать, Адамикс (царство ему небесное) и Альбатросс. Изначально это был код Кармака, который ребята из TeamBlur расширили и дополнили. И вот такая у нас исходная каша.

Очевидно что для перевода на кресты, надо создать объекты, но процессу в первую очередь мешает необходимость постоянно видеть конечный результат. Поэтому старое меню остается в неизменном виде, а рядом пишется новое. Максимально тупым способом - то что по смыслу можно инкапсулировать - инкапсулируется. А то что не очень - оформляется в виде костыля. Таким образом я уже сделал уже три менюшки - менюху сейвов, менюху выбора скилла и главное меню. Ну и заодно анимацию шапок. И MsgBox конечно жы. На этом этапе наиболее полно раскрываются недостатки выбранного подхода и попутно отмечается что и как надо переделать в будущем. Оно конечно выглядит неплохо, но встают разные вопросы - например как обновлять данные, если они изменились. Как перезагружать меню при входе-выходе. Как изменять его размеры, если поменяется разрешение. Наконец, неплохо бы предусмотреть возможность таскать окошки по экрану. Поэтому новое меню дописано уже не будет. Оно будет лишь использовано как источник для второй итерации. И вот здесь уже будет учтено абсолютно всё, что не было сделано для первой имплементации. Почему так получается? очень просто. Некоторые вещи, особенно если ты их пишешь впервые не создают у тебя в мозгу должного представления, это неизбежный процесс. Читать умные книги и общие советы бесполезно - это твой код и он организован определённым образом. То есть первая итерация восполняет недостающие фрагменты картины, а вторая уже пишется с учётом полного виденья. В плохих случаях итераций может быть более двух. К примеру скриптовая система для рендеринга получилась только с пятой попытки. Собственно здесь и возникает важное отличие - если программист недостаточно опытный или просто ленивый, он видит что реальный код уже не укладывается в придуманную им модель, но продолжит городить свои костыли, потому что переписывать лень.
Это имеет практическое значние в том случае, если у тебя почти всё уложилось кроме пары моментов. И ты точно знаешь что расширять ничего не придется. В противном случае подход должен быть итеративным и ничего страшного в этом нет.

Добавлено 28-03-2020 в 12:52:

Цитата:
FiEctro писал:
Не думаю что там что то сложнее материалов или ентитей.

ты готов писать для менюх такие же сложные скрипты-замены, как и для материалов? При том, что материалы стремятся к унификации, а менюхи наоборот - каждую заново приходится создавать. Этот скрипт по объему будет сопоставим с сходным кодом и смысл полностью потеряется.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 191580

Старое сообщение 28-03-2020 09:52
-
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 12:24. Новая тема    Ответить
Страницы (240): « Первая ... « 76 77 78 79 [80] 81 82 83 84 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024