![]() |
Ответ: [TrueHorror] - разработка
А разрешение экрана тогда менять через ChangeDisplaySettings(...)?
Делаю сохранения. Вопрос такой: сделать чекпоинты или свободное сохранение\загрузку? И еще как проще избежать такого: Код:
map<string,string> localization; |
Ответ: [TrueHorror] - разработка
Разрешение экрана при borderless видимо никак, но можно попробовать сменить разрешение бэкбуфера.
Я за грамотно расставленные чекпоинты, но видимо будет критика... localization очень длинное название переменной. А почему map? У тебя есть язык, название куска текста и сам текст, то есть 3 поля. Язык и текст желательно менять извне, а в код вставить выбор где какой текст выводить. В общем подробней опиши в чём проблема. |
Ответ: [TrueHorror] - разработка
Цитата:
ну можно рендерить игру в другом разрешении, а потом рисовать квад в десктопном с изображением игры) |
Ответ: [TrueHorror] - разработка
Цитата:
Вообще если посмотреть на современные игры, то складывается ощущение что разрабам глубоко похер на оптимизацию. Но чет мне не хочется уподобляться сим говнокодерам. |
Ответ: [TrueHorror] - разработка
а надо ли получать новые стринги из localization[] каждый кадр? скорее всего это будет происходить крайне редко - наверное ок и стрингом.
там где часто одни и те же, можно один раз получить значение из массива в обычную переменную и выводить её. |
Ответ: [TrueHorror] - разработка
Цитата:
На самом деле std очень хорошо оптимизирована, просто шаблоны выглядят монстрообразно, так как там куча параметров, но после инстанцирования получается более простой код. Джонатан Блоу внушает доверие, поэтому хоть я сам и не пробовал эту штуку, но порекомендую её тебе: http://number-none.com/blow/code/mo_file/index.html (заодно и проверишь как там)) Цитата:
Можно также оставлять рисовать оверлей с 2д графикой в нативном разрешении, чтобы интерфейс не смызывался. Но я только что проверил у себя -- достаточно поставить меньшее разрешение бэкбуфера в D3DPRESENT_PARAMETERS и оно само растянется до размеров окна. Так что не стоит усложнять если не требуется доп. функционал с квадом. |
Ответ: [TrueHorror] - разработка
Цитата:
Наверное сделаю обертку на своим же высером, ибо переделывать движок а потом и в игре переделывать некоторые моменты с гуем, как-то не очень радует. Обертка будет содержать текст и параметры отрисовки, хоть так удастся избежать постоянного обращения к map по string. |
Ответ: [TrueHorror] - разработка
В map там же упорядоченное дерево, так что сравнивается быстро.
Один раз за кадр ничего страшного. Вон у тебя там софтварный скиннинг куда больше отжирает -- его бы на шейдер перенести. Да и вообще у меня 60 фпс везде, давай уже карту пробуй делать больше и детальней. |
Ответ: [TrueHorror] - разработка
Как сделать пятно у фонаря? Как проецировать текстуру на пятно от спотлайта?
|
Ответ: [TrueHorror] - разработка
делаешь матрицу типа как для камеры и фигачишь наподобие
float4 projPos = mul(float4(worldPos,1), projectionMatrix); projPos.xyz /= projPos.w; float2 projTexCoords = projPos.xy*0.5+0.5; |
Ответ: [TrueHorror] - разработка
ZBuffer должен быть выключен при отрисовке?
|
Ответ: [TrueHorror] - разработка
... это код для получения спроецированных текскоорд. а где ты его выполняешь уже другой вопрос.
по идее раз у тебя деферные споты, то в шейдере спота и выполняй, передай ему только матрицу для проецирования и текстуру. |
Ответ: [TrueHorror] - разработка
|
Ответ: [TrueHorror] - разработка
Цитата:
Цитата:
|
Ответ: [TrueHorror] - разработка
Лет 10-15 назад играл в разрешении 640х480 в некоторые новые по тем временам игры они казались очень детализированными, сейчас же на 1080р в тех же играх углы да мыло.
К слову Crytek сегодня (10 октября) релизит RYSE с поддержкой 4К. |
Часовой пояс GMT +4, время: 18:13. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot