Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Проекты > Проекты C++

Ответ
 
Опции темы
Старый 09.10.2014, 20:44   #481
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

А разрешение экрана тогда менять через ChangeDisplaySettings(...)?

Делаю сохранения. Вопрос такой: сделать чекпоинты или свободное сохранение\загрузку?

И еще как проще избежать такого:
map<string,string> localization;
...
(runtime)
 DrawText( localization[ "foo" ], ... );
__________________

(Offline)
 
Ответить с цитированием
Старый 09.10.2014, 20:59   #482
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Разрешение экрана при borderless видимо никак, но можно попробовать сменить разрешение бэкбуфера.

Я за грамотно расставленные чекпоинты, но видимо будет критика...

localization очень длинное название переменной.
А почему map? У тебя есть язык, название куска текста и сам текст, то есть 3 поля.
Язык и текст желательно менять извне, а в код вставить выбор где какой текст выводить.
В общем подробней опиши в чём проблема.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (09.10.2014)
Старый 09.10.2014, 21:03   #483
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

А разрешение экрана тогда менять через ChangeDisplaySettings(...)?
об этом не думал что-то, обычно юзал разрешение = разрешению десктопа)
ну можно рендерить игру в другом разрешении, а потом рисовать квад в десктопном с изображением игры)
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (09.10.2014)
Старый 09.10.2014, 21:18   #484
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

localization очень длинное название переменной.
А почему map? У тебя есть язык, название куска текста и сам текст, то есть 3 поля.
Язык и текст желательно менять извне, а в код вставить выбор где какой текст выводить.
В общем подробней опиши в чём проблема.
Суть в том что я делаю игру с локализацией( то бишь переводом на другие языки ). Ну и там при загрузке, например, уровня я загружаю файл соответствующий( посмотри папку data\lang\rus ) и парсю его, и потом там где надо отрисовать текст, передаю текст в виде loc[ "foo" ]. Я не думаю что это хорошая идея использовать string в качестве ключа . Но и плодить кучу переменных для каждой строки тоже не очень весело. Поэтому и спрашиваю, может кто знает как про-разрабы с этим справляются.

Вообще если посмотреть на современные игры, то складывается ощущение что разрабам глубоко похер на оптимизацию. Но чет мне не хочется уподобляться сим говнокодерам.
__________________

(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо mr.DIMAS за это полезное сообщение:
Mr_F_ (09.10.2014), Samodelkin (09.10.2014)
Старый 09.10.2014, 21:49   #485
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

а надо ли получать новые стринги из localization[] каждый кадр? скорее всего это будет происходить крайне редко - наверное ок и стрингом.
там где часто одни и те же, можно один раз получить значение из массива в обычную переменную и выводить её.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (09.10.2014)
Старый 09.10.2014, 22:10   #486
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Сообщение от mr.DIMAS Посмотреть сообщение
Суть в том что я делаю игру с локализацией( то бишь переводом на другие языки ). Ну и там при загрузке, например, уровня я загружаю файл соответствующий( посмотри папку data\lang\rus ) и парсю его, и потом там где надо отрисовать текст, передаю текст в виде loc[ "foo" ]. Я не думаю что это хорошая идея использовать string в качестве ключа . Но и плодить кучу переменных для каждой строки тоже не очень весело. Поэтому и спрашиваю, может кто знает как про-разрабы с этим справляются.

Вообще если посмотреть на современные игры, то складывается ощущение что разрабам глубоко похер на оптимизацию. Но чет мне не хочется уподобляться сим говнокодерам.
Да ты полиглот!

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

Джонатан Блоу внушает доверие, поэтому хоть я сам и не пробовал эту штуку, но порекомендую её тебе: http://number-none.com/blow/code/mo_file/index.html
(заодно и проверишь как там))

Сообщение от Mr_F_
ну можно рендерить игру в другом разрешении, а потом рисовать квад в десктопном с изображением игры)
Я видел такое в ArmA 2 -- можно ещё настраивать положение этого квада на экране.
Можно также оставлять рисовать оверлей с 2д графикой в нативном разрешении, чтобы интерфейс не смызывался.

Но я только что проверил у себя -- достаточно поставить меньшее разрешение бэкбуфера в D3DPRESENT_PARAMETERS и оно само растянется до размеров окна.
Так что не стоит усложнять если не требуется доп. функционал с квадом.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Samodelkin за это полезное сообщение:
mr.DIMAS (09.10.2014), Mr_F_ (09.10.2014)
Старый 09.10.2014, 22:32   #487
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

а надо ли получать новые стринги из localization[] каждый кадр? скорее всего это будет происходить крайне редко - наверное ок и стрингом.
В свое время сделал ГУЙ как в юнити, для отрисовки текста используется просто вызов DrawText который в движке засовывает экземпляр Text в queue и отправляет на рендер. Показалось очень удобным, теперь же у меня бомбит от того что это все отжирает ресурсы на обращение в рантайме к map<string,string>.
Наверное сделаю обертку на своим же высером, ибо переделывать движок а потом и в игре переделывать некоторые моменты с гуем, как-то не очень радует.
Обертка будет содержать текст и параметры отрисовки, хоть так удастся избежать постоянного обращения к map по string.
__________________

(Offline)
 
Ответить с цитированием
Старый 09.10.2014, 22:38   #488
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

В map там же упорядоченное дерево, так что сравнивается быстро.
Один раз за кадр ничего страшного.
Вон у тебя там софтварный скиннинг куда больше отжирает -- его бы на шейдер перенести.
Да и вообще у меня 60 фпс везде, давай уже карту пробуй делать больше и детальней.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (09.10.2014)
Старый 09.10.2014, 22:47   #489
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

Как сделать пятно у фонаря? Как проецировать текстуру на пятно от спотлайта?
__________________

(Offline)
 
Ответить с цитированием
Старый 09.10.2014, 23:30   #490
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

делаешь матрицу типа как для камеры и фигачишь наподобие

float4 projPos = mul(float4(worldPos,1), projectionMatrix);
projPos.xyz /= projPos.w;
float2 projTexCoords = projPos.xy*0.5+0.5;
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (09.10.2014)
Старый 09.10.2014, 23:35   #491
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка

ZBuffer должен быть выключен при отрисовке?
__________________

(Offline)
 
Ответить с цитированием
Старый 10.10.2014, 00:10   #492
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: [TrueHorror] - разработка

... это код для получения спроецированных текскоорд. а где ты его выполняешь уже другой вопрос.
по идее раз у тебя деферные споты, то в шейдере спота и выполняй, передай ему только матрицу для проецирования и текстуру.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mr.DIMAS (10.10.2014)
Старый 10.10.2014, 16:10   #493
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
Ответ: [TrueHorror] - разработка


http://www.3dnews.ru/903316
Убейсофт заботится о своих пользователях

[сарказм]Может и мне забить на оптимизацию?[/сарказм]
__________________

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (10.10.2014)
Старый 10.10.2014, 16:31   #494
ARA
ТЫ ЧООО?
 
Аватар для ARA
 
Регистрация: 26.02.2007
Сообщений: 3,369
Написано 2,020 полезных сообщений
(для 7,192 пользователей)
Ответ: [TrueHorror] - разработка

Сообщение от mr.DIMAS Посмотреть сообщение

http://www.3dnews.ru/903316
Убейсофт заботится о своих пользователях

[сарказм]Может и мне забить на оптимизацию?[/сарказм]
«Наша цель — 30 кадров в секунду. 60 к/с нормально смотрятся в шутере, но не в экшен-приключении. Меньшая частота кадров более удобна пользователям»
А 1280 на 720 даёт более детальную картинку лучше воспринимается глазами. Отвечаю.
__________________
Вертекс в глаз или в пиксель раз?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Arton (10.10.2014)
Старый 10.10.2014, 17:11   #495
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: [TrueHorror] - разработка

Лет 10-15 назад играл в разрешении 640х480 в некоторые новые по тем временам игры они казались очень детализированными, сейчас же на 1080р в тех же играх углы да мыло.

К слову Crytek сегодня (10 октября) релизит RYSE с поддержкой 4К.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 08:43.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com