Jump to content

251-я часть Дневников разработчика


Recommended Posts

23 часа назад, Pchel сказал:

Помогу, определение углового размера, это первые две строчки. (это важно!), подчеркни где в определении сказано про линейный размер объекта и расстояние до него.

Извините, вмешаюсь.

Тоже помогу, вашей же цитатой: "Уловой размер - это угол между линиями, соединяющими диаметрально противоположные точки измеряемого объекта объекта (а это как раз размер D на вашей картинке, линейный размер объекта) и глаз наблюдателя (а это как раз размер L на вашей картинке, расстояние до него)."

При неизменном L чем больше D, тем больше угол. Вот и связь прямая нашлась между всеми составляющими.

 

P.S. Теперь про "волшебные" 30 градусов ("как было в старичке"), о чем все так мечтают. 30 градусов было тогда, на мониторах 15-19", сейчас, при наших мониторах 24-27", реальный размер будет уже не те, прошлые, 30 градусов, а больше, где-то ближе к 36-38. Сейчас 30 градусов, это увеличение размера изображаемого объекта, причем, чем больше монитор по диагонали, тем больше увеличение. Поднимали уже эту тему. Хотите более-менее реальных размеров, вам в VR.

Link to post
Share on other sites
27 минут назад, Geniok сказал:

Поднимали уже эту тему. Хотите более-менее реальных размеров, вам в VR.

 

Сейчас тебе возразят что можно всё нарисовать красиво только разрабы не умеют и им удобно отмазываться ограничениями железа.

То есть понимания физических ограничений (видеокарты, диагональ монитора, кол-во пикселей) видимости нет. И понимания что если делать чтобы было видно, то это сразу же, тут же на ровном месте минус симуляторность, ибо размеры идут по известному месту в угоду игрушке.

Edited by vasmann
Link to post
Share on other sites
4 минуты назад, vasmann сказал:

 

Сейчас тебе возразят что можно всё нарисовать красиво только разрабы не умеют и им удобно отмазываться ограничениями железа.

То есть понимания физических ограничений (видеокарты, диагональ монитора, кол-во пикселей) видимости нет. И понимания что если делать чтобы было видно, то это сразу же, тут же на ровном месте минус симуляторность, ибо размеры идут по известному месту в угоду игрушке.

Потому что люди на техническом форуме, а авиафорум лично я считаю техническим, не хотят думать и понимать, что разрешение глаза и разрешение монитора, это очень далекие друг от друга вещи.

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

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

Link to post
Share on other sites
13 минут назад, Geniok сказал:

 

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

То есть, ты утверждаешь, что для VR и разных диагоналей мониторов нельзя сделать разные настройки графики, чтобы в итоге получилось нечто среднее по картинке у всех?

  • Like 1
Link to post
Share on other sites
1 час назад, Geniok сказал:

Извините, вмешаюсь.

Тоже помогу, вашей же цитатой: "Уловой размер - это угол между линиями, соединяющими диаметрально противоположные точки измеряемого объекта объекта (а это как раз размер D на вашей картинке, линейный размер объекта) и глаз наблюдателя (а это как раз размер L на вашей картинке, расстояние до него)."

При неизменном L чем больше D, тем больше угол. Вот и связь прямая нашлась между всеми составляющими.

 

P.S. Теперь про "волшебные" 30 градусов ("как было в старичке"), о чем все так мечтают. 30 градусов было тогда, на мониторах 15-19", сейчас, при наших мониторах 24-27", реальный размер будет уже не те, прошлые, 30 градусов, а больше, где-то ближе к 36-38. Сейчас 30 градусов, это увеличение размера изображаемого объекта, причем, чем больше монитор по диагонали, тем больше увеличение. Поднимали уже эту тему. Хотите более-менее реальных размеров, вам в VR.

 

27 минут назад, Geniok сказал:

Потому что люди на техническом форуме, а авиафорум лично я считаю техническим, не хотят думать и понимать, что разрешение глаза и разрешение монитора, это очень далекие друг от друга вещи.

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

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

В VR летал и очень нравилось, единственно удручает все же нехватка разрешения. В VR зумом вообще не пользовался. 30 градусов, это не старичек, это были пояснения разработчиков. (глаза наблюдателя смотрят на монитор, меняя FOV мы меняем величину и объекта на мониторе, только не линейную а угловую, дополнительно пояснил в личке). Про листок и бумагу хорошее предложение ))).

11 минут назад, airking сказал:

То есть, ты утверждаешь, что для VR и разных диагоналей мониторов нельзя сделать разные настройки графики, чтобы в итоге получилось нечто среднее по картинке у всех?

Грубо говоря это уже так и есть.

Edited by Pchel
Link to post
Share on other sites
18 минут назад, airking сказал:

То есть, ты утверждаешь, что для VR и разных диагоналей мониторов нельзя сделать разные настройки графики, чтобы в итоге получилось нечто среднее по картинке у всех?

В VR у тебя уже есть как минимум бинокулярное зрение. Среднее уже на основании этого не получится. Ну и разница есть между 1920 на сколько там в каждый глаз через экранчик в несколько сантиметров или же 1920 на 1280 на диагонали 23" +

Link to post
Share on other sites

Берем любой оптический прибор с дальномерной сеткой. Например - прицел ПСО-1

 

Скрытый текст

pso-setka.jpg.4a3f8632f481b58397e68cf1a1070405.jpg

 

Внизу слева видим графически отображенную зависимость линейного размера от расстояния. Эта зависимость будет справедлива для любой кратности оптики (в нашем случае для любого FOV)

Link to post
Share on other sites
3 минуты назад, Kill_Em_All сказал:

Эта зависимость будет справедлива для любой кратности оптики

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

Link to post
Share on other sites
11 минут назад, Kill_Em_All сказал:

Берем любой оптический прибор с дальномерной сеткой. Например - прицел ПСО-1

 

  Показать содержимое

pso-setka.jpg.4a3f8632f481b58397e68cf1a1070405.jpg

 

Внизу слева видим графически отображенную зависимость линейного размера от расстояния. Эта зависимость будет справедлива для любой кратности оптики (в нашем случае для любого FOV)

Абсолютно верно, с учетом кратности оптики, в нашем случае FOV. И чем больше кратность тем больше расстояние расстояние между соответствующими делениями, которые и показывают сколько истинных градусов занимает объект в увеличенном изображении.

Edited by Pchel
Link to post
Share on other sites
10 минут назад, vasmann сказал:

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

Нет. Для любой.

Сам график зависимости меняться не будет, т.к. он строится по формуле, где кратность не имеет значения.

В зависимости от кратности будет меняться только масштаб самого графика.

Edited by Kill_Em_All
Link to post
Share on other sites
3 минуты назад, Kill_Em_All сказал:

Нет. Для любой.

Сам график зависимости меняться не будет, т.к. он строится по формуле, где кратность не имеет значения.

А про масштабирование не забыл? Ну тоесть график можно сделать пологим или наоборот более крутым, в зависимости от расчетных рабочих дистанций в зависимости от кратности?

А функция да, от кратности не зависит.

Link to post
Share on other sites
2 часа назад, Geniok сказал:

...Хотите более-менее реальных размеров, вам в VR.

Хех, "не прошло и полгода"... Когда же наконец проявится прямая (косвенная уже была многожды) агитация, что нам не 32"++ мониторы надо, а в VR!!!

Как всё предсказуемо. 

Печально предсказуемо 

Link to post
Share on other sites

Дык очевидно VR это будущее. Это как со всеми технологиями, на старте более перспективная проигрывает уже устоявшимся прошлым, но по мере развития прошлым остается только пыль глотать. Дальше VR только штекер в бошку.

  • Upvote 1
Link to post
Share on other sites
1 минуту назад, vasmann сказал:

Дык очевидно VR это будущее. Это как со всеми технологиями, на старте более перспективная проигрывает уже устоявшимся прошлым, но по мере развития прошлым остается только пыль глотать. Дальше VR только штекер в бошку.

Как мне например в шлеме видеть кнопки\переключатели на РУДе? На память запомнить? Или шрифтом Брайля подписать? Не надо этот костыль всем пропихивать как единственно верное решение. 

  • Upvote 2
Link to post
Share on other sites
27 минут назад, Kill_Em_All сказал:

Внизу слева видим графически отображенную зависимость линейного размера от расстояния

Вы намекаете на её явно выраженную нелинейность? Или суть более глубокая?

Link to post
Share on other sites
5 минут назад, demon1284 сказал:

Как мне например в шлеме видеть кнопки\переключатели на РУДе? На память запомнить? Или шрифтом Брайля подписать? Не надо этот костыль всем пропихивать как единственно верное решение. 

Тебе его кто-то куда-то пропихивает? куда?

Никто даже спрашивать не будет нужен ВР или нет, когда на него перейдут массы.

Надо просто понимать что авиасимы это не авангард технологий и прочего, просто потому что авиасимы не авангард вообще. 

Кто тебе сказал что тебе нужен РУД вообще, как железка? Если поразмыслить то к визуализации прикрутить органы управления, типа перчаток с отдачей и отображением в игре, и вот ты ручку кладешь уже на РУД Яка или на чем ты любишь летать. Развивать и развивать, но в авиасимы придет не скоро, да.

Edited by vasmann
  • Like 1
  • Upvote 1
Link to post
Share on other sites
1 минуту назад, TUS_KOPTuK сказал:

Вы намекаете на её явно выраженную нелинейность? Или суть более глубокая?

Размер линейный. Не зависимость, а размер. Зависимость нелинейная.

Link to post
Share on other sites
14 минут назад, vasmann сказал:

А функция да, от кратности не зависит.

 

А функция в математике - это разве не зависимость?

Повторюсь:

32 минуты назад, Kill_Em_All сказал:

Эта зависимость будет справедлива для любой кратности оптики (в нашем случае для любого FOV)

 

Учитесь читать собеседника

Link to post
Share on other sites
55 минут назад, airking сказал:

То есть, ты утверждаешь, что для VR и разных диагоналей мониторов нельзя сделать разные настройки графики, чтобы в итоге получилось нечто среднее по картинке у всех?

В целом нет, потому что при формировании изображения, видеокарта просто создает графический файл, не зная ничего о том устройстве, где этот файл будет выводится.

Чтоб было понятно, для простоты представим, что у тебя есть фотоаппарат, Ты нажимаешь кнопку, получаешь файл.jpg.

Потом этот файл открываешь на разных компьютерах, на разных мониторах. Производитель фотоаппарата может сделать так, чтобы этот файл всегда и везде выглядел одинакого ?

 

Это упрощения объяснения происходящего в графическом движке, в двух словах видеокарта сначала создает файл.jpeg, а потом просто этот файл отображает вам на мониторе. Вы по сути задаете только размер этой картинки (не путать с разрешением монитора).  То есть я могу создать графический файл разрешением 800х600 и потом открыть его на мониторе разрешением 1920х1080.

Link to post
Share on other sites
1 минуту назад, Kill_Em_All сказал:

 

А функция в математике - это разве не зависимость?

Повторюсь:

 

Учитесь читать собеседника

Ты писал про график, а не функцию. 

Link to post
Share on other sites
3 минуты назад, TUS_KOPTuK сказал:

Вы намекаете на её явно выраженную нелинейность? Или суть более глубокая?

 

Нелинейность да, явно выражена. Осталось выяснить, присутствует ли эта нелинейность в игре. 

Хотя... в игре ведь у нас "угловой размер". По крайней мере все об этом говорят... :)

1 минуту назад, vasmann сказал:

Ты писал про график, а не функцию. 

о боже...

  • Upvote 1
Link to post
Share on other sites
15 минут назад, Streich сказал:

Хех, "не прошло и полгода"... Когда же наконец проявится прямая (косвенная уже была многожды) агитация, что нам не 32"++ мониторы надо, а в VR!!!

Как всё предсказуемо. 

Печально предсказуемо 

Это не агитация. В ВР тоже полно проблем. Начиная от низкого разрешения самих экранов, заканчивая косячными моделями, когда моделлер не соблюдает размеры.

ВР позволяет вам поиметь дома экран 90" не занимая при этом всю стену. Не более того. Плюс, работа бинокулярного зрения, которое очень помогает в определении расстояния (в прочем, как и в жизни)

Link to post
Share on other sites
1 минуту назад, Kill_Em_All сказал:

 

Нелинейность да, явно выражена. Осталось выяснить, присутствует ли эта нелинейность в игре. 

Хотя... в игре ведь у нас "угловой размер". По крайней мере все об этом говорят... :)

Это ж высшая математика проверить есть ли эта нелинейность в игре.

Никто не знает размерность колец прицела, никто не знает размах крыла самолета, ни у кого нет маркеров и отключения UI. И нет формулы по которой можно узнать по "части занимаемой в кольцах самолета с нужным размахом крыла расстояния до него".

Это не реально, это да.

3 минуты назад, Kill_Em_All сказал:

о боже...

Нет, всего лишь я. Но польщен.

Link to post
Share on other sites
13 минут назад, demon1284 сказал:

Как мне например в шлеме видеть кнопки\переключатели на РУДе? На память запомнить? Или шрифтом Брайля подписать? Не надо этот костыль всем пропихивать как единственно верное решение. 

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

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

Edited by Geniok
Link to post
Share on other sites
8 минут назад, Kill_Em_All сказал:

Нелинейность да, явно выражена

А будет ли она (зависимость углового размера) явно нелинейной для мессера 109-ого, например, в диапазоне от 5.7км до 57 м, Не знаете? 

Edited by TUS_KOPTuK
Link to post
Share on other sites
3 минуты назад, TUS_KOPTuK сказал:

А будет ли она (зависимость углового размера) явно нелинейной для мессера 109-ого, например, в диапазоне от 5.7км до 57 м, Не знаете? 

Боюсь, вопрос не будет понят. Ибо функция и график это о боже.

Link to post
Share on other sites
1 минуту назад, TUS_KOPTuK сказал:

А будет ли она (зависимость углового размера) явно выражена для мессера 109-ого, например, в диапазоне от 5.7км до 57 м, Не знаете? 

 

я - нет, пока не знаю.

Но есть ведь вполне себе работоспособное предложение камрада:

7 минут назад, vasmann сказал:

Это ж высшая математика проверить есть ли эта нелинейность в игре.

Никто не знает размерность колец прицела, никто не знает размах крыла самолета, ни у кого нет маркеров и отключения UI. И нет формулы по которой можно узнать по "части занимаемой в кольцах самолета с нужным размахом крыла расстояния до него".

Это не реально, это да.

:)

14 минут назад, Geniok сказал:

В целом нет, потому что при формировании изображения, видеокарта просто создает графический файл, не зная ничего о том устройстве, где этот файл будет выводится.

Можно с этого места поподробней, пожалуйста.

А то сразу возникают по крайней мере два вопроса:

1. Зачем мы тогда в драйверах задаем разрешение нашего устройства вывода, указывая видеокарте, в каком разрешении ей нужно выводить картинку?

2. Почему, когда мы не задаем разрешение, видеокарта сама получает сигнал от монитора с указанием разрешения последнего и для чего это нужно?

  • Upvote 1
Link to post
Share on other sites

Когда VR станет массовым - это неизвестно. 

А сейчас было бы логично дать людям такую вот настройку - устройство:  "монитор" или "VR". И, соответственно, пользователь может поставить флажок на то устройство, на каком играет. Наподобие, как игрок сейчас выбирает в настройках "мышь" или "джойстик".

Так вот на мониторе вернуть видимость контактов, какая была все эти годы. А на VR пусть будет видимость хоть от Чака, хоть от чёрта лысого. dolf_ru_097.gif

Edited by Kirill
  • Like 1
  • Upvote 11
Link to post
Share on other sites
1 час назад, vasmann сказал:

... Дальше VR только штекер в бошку.

Браво!

Себе авторство присудишь, или все таки уступишь автору Апокалипсиса?

1 час назад, Geniok сказал:

Это не агитация...

 

ВР позволяет вам поиметь дома экран 90" не занимая при этом всю стену. Не более того. Плюс, работа бинокулярного зрения, которое очень помогает в определении расстояния (в прочем, как и в жизни)

Это она: неприкрытая уже агитация.

Когда деваться некуда от аргументов: "а почему ТАК?", началось таки не прикрытая агитация: "потому что!" так хорошо, хотя не без проблем.

 

Господину Джейсону привет! ;)

Edited by Streich
Link to post
Share on other sites
3 часа назад, airking сказал:

фтопку твой скрин

Скрытый текст

Да кто бы сомневался. Рассказывай сказки дальше;)

 

Link to post
Share on other sites
6 минут назад, Kill_Em_All сказал:

Можно с этого места поподробней, пожалуйста.

А то сразу возникают по крайней мере два вопроса:

1. Зачем мы тогда в драйверах задаем разрешение нашего устройства вывода, указывая видеокарте, в каком разрешении ей нужно выводить картинку?

2. Почему, когда мы не задаем разрешение, видеокарта сама получает сигнал от монитора с указанием разрешения последнего и для чего это нужно?

Тут есть небольшая путаница, надо различать разрешение монитора и разрешение графического файла screen.jpg , который готовится для вывода на монитор.

 

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

Сначала договоримся о терминологии. Примем что при игре, мы видим не кино, не игру, а быструю смену кадров, screen_1.jpg, screen_2.jpg, screen_n.jpg.

По сути все, чем занимается графический движок любой игры, это пиксель арт. То есть применяя математические расчеты, всякие упрощения и хитрости, определяет, какого цвета будет каждый пиксель в файле screen.jpg. Вот прямо так попиксельно и раскрашивает наш файл screen.jpg. Берет первый пиксель с координатами (0, 0) (отсчет идет от нуля) и определяет, он будет красным. Берет следующий, с координатами (0, 1), он будет чет светлее, бордовый и так далее. И так по всем пикселям.

Но, чтобы видеокарта могла этим пиксель артом заниматься, ей нужно дать информацию о количестве пикселей по горизонтали и вертикали (ВАЖНО не путать с разрешением монитора, на монитор мы еще ничего не вывели, пока только красим пиксели, определяя цвет каждого).

Для простоты примем, что размер нашего файла будет 800х600. Это значит, что дойдя до пикселя с координатами (799, 0), следующий будет у нас с координатами (0, 1).

Это как раз тот параметр, который вы задаете в игре, разрешение. Он не имеет НИКАКОГО отношения к вашему монитору. Он определяет только разрешение файла screen.jpg.

 

И вот, когда наш файл готов, когда все пиксели закрашены, мы берем этот файл, открываем его и выводим на монитор. Причем, разрешение самого монитора нас при этом не интересует. Мы можем файл отобразить в окне, можем его всячески растянуть и так далее. Что важно, сам файл screen.jpg может выводится тогда, когда он готов, а может отображаться в определенный момент, если у вас включена вертикальная синхронизация. В первом случае вы увидите максимальное количество кадров, во втором скорее всего это значение будет равно 60-ти.

 

Обратите внимание, что чем большего разрешения будет наш файл screen.jpg, тем больше пикселей нам надо пройти и закрасить. И это количество не имеет отношения к количеству физических пикселей на мониторе. Например, я могу посчитать картинку разрешением 4к, а потом вывести ее на монитор fullHD, просто уменьшив масштаб. Также возможно обратная ситуация, я могу посчитать картинку в разрешении 800х600, а потом увеличив масштаб вывести на монитор fullHD. Очень часто так считаются тени, для оптимизации тени считаются в меньшем разрешении, чем потом выводятся. Это можно увидеть, обратив внимание на границу тени, часто в старых играх она была с гранями, можно было увидеть отдельные пиксели. Чем выше настройки теней, тем в большем разрешении они выводятся (считаются), при этом к монитору пользователя это разрешение не имеет никакого отношения. Даже в нашей игре это можно увидеть, тень в пикселях. и количество этих пикселей не будет зависеть от физического разрешения монитора.

 

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

  • Thanks 3
Link to post
Share on other sites
1 час назад, Kirill сказал:
1 час назад, vasmann сказал:

 

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

Все, "кому нада" знают, разумеется. Подогнать размер прицела под объект прицеливания - не проблема, так как и то и другое - текстуры. Которые кратно расстоянию и отметками прицела, можно менять. 

Главное: желание сделать "объект прицеливания", то бишь лод самолёта, крупней.

1 час назад, Kirill сказал:

Когда VR станет массовым - это неизвестно. 

А сейчас было бы логично дать людям такую вот настройку - устройство:  "монитор" или "VR". И, соответственно, пользователь может поставить флажок на то устройство, на каком играет. Наподобие, как игрок сейчас выбирает в настройках "мышь" или "джойстик".

Так вот на мониторе вернуть видимость контактов, какая была все эти годы. А на VR пусть будет видимость хоть от Чака, хоть от чёрта лысого. dolf_ru_097.gif

Эта логичная мысль звучала на этом форуме неоднократно. 

Просто делать 2 разных копии игры (2 в 1-м) заморачиваться, похоже, не желают ни в какую

 

Link to post
Share on other sites
28 минут назад, Streich сказал:

Это она: неприкрытая уже агитация.

Когда деваться некуда от аргументов: "а почему ТАК?", началось таки не прикрытая агитация: "потому что!" так хорошо, хотя не без проблем.

 

Агитация в чем ?

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

Link to post
Share on other sites

Ты действительно считаешь, что мега игры класса авиасим, в который хотят играть десять человек и пять их друзей, может двинуть целую индустрию типа ВР?

Забавный.

Link to post
Share on other sites
1 минуту назад, Streich сказал:

Все, "кому нада" знают, разумеется. Подогнать размер прицела под объект прицеливания - не проблема, так как и то и другое - текстуры. Которые кратно расстоянию и отметками прицела, можно менять. 

Главное: желание сделать "объект прицеливания", то бишь лод самолёта, крупней.

Эээ...

Теоретически можно вывести самолет в отдельную текстуру, увеличить ее, потом поверх наложить кольцо прицела, только этого делать никто не будет не из-за затрат, а из-за того, что у вас прицельные метки на прицеле не будут соответствовать размеру этого самого самолета, так как его линейный размер будет больше того, который должен быть при текущем удалении до объекта.

Что с этим делать ? :) 

5 минут назад, Streich сказал:

Надо же VR продвигать...

Очень надо ;)

Ладно, ты меня раскусил, на самом деле я Марк Цукерберг. Бывает захожу на такие вот форумы, рекламирую свою продукцию, рассказывая, как в ВР все хорошо.

Тут же сотни тысяч игроков сидят, кто-нибудь да поведется на мои рассказы...

Link to post
Share on other sites
36 минут назад, Geniok сказал:
Скрытый текст

 

Тут есть небольшая путаница, надо различать разрешение монитора и разрешение графического файла screen.jpg , который готовится для вывода на монитор.

 

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

Сначала договоримся о терминологии. Примем что при игре, мы видим не кино, не игру, а быструю смену кадров, screen_1.jpg, screen_2.jpg, screen_n.jpg.

По сути все, чем занимается графический движок любой игры, это пиксель арт. То есть применяя математические расчеты, всякие упрощения и хитрости, определяет, какого цвета будет каждый пиксель в файле screen.jpg. Вот прямо так попиксельно и раскрашивает наш файл screen.jpg. Берет первый пиксель с координатами (0, 0) (отсчет идет от нуля) и определяет, он будет красным. Берет следующий, с координатами (0, 1), он будет чет светлее, бордовый и так далее. И так по всем пикселям.

Но, чтобы видеокарта могла этим пиксель артом заниматься, ей нужно дать информацию о количестве пикселей по горизонтали и вертикали (ВАЖНО не путать с разрешением монитора, на монитор мы еще ничего не вывели, пока только красим пиксели, определяя цвет каждого).

Для простоты примем, что размер нашего файла будет 800х600. Это значит, что дойдя до пикселя с координатами (799, 0), следующий будет у нас с координатами (0, 1).

Это как раз тот параметр, который вы задаете в игре, разрешение. Он не имеет НИКАКОГО отношения к вашему монитору. Он определяет только разрешение файла screen.jpg.

 

И вот, когда наш файл готов, когда все пиксели закрашены, мы берем этот файл, открываем его и выводим на монитор. Причем, разрешение самого монитора нас при этом не интересует. Мы можем файл отобразить в окне, можем его всячески растянуть и так далее. Что важно, сам файл screen.jpg может выводится тогда, когда он готов, а может отображаться в определенный момент, если у вас включена вертикальная синхронизация. В первом случае вы увидите максимальное количество кадров, во втором скорее всего это значение будет равно 60-ти.

 

Обратите внимание, что чем большего разрешения будет наш файл screen.jpg, тем больше пикселей нам надо пройти и закрасить. И это количество не имеет отношения к количеству физических пикселей на мониторе. Например, я могу посчитать картинку разрешением 4к, а потом вывести ее на монитор fullHD, просто уменьшив масштаб. Также возможно обратная ситуация, я могу посчитать картинку в разрешении 800х600, а потом увеличив масштаб вывести на монитор fullHD. Очень часто так считаются тени, для оптимизации тени считаются в меньшем разрешении, чем потом выводятся. Это можно увидеть, обратив внимание на границу тени, часто в старых играх она была с гранями, можно было увидеть отдельные пиксели. Чем выше настройки теней, тем в большем разрешении они выводятся (считаются), при этом к монитору пользователя это разрешение не имеет никакого отношения. Даже в нашей игре это можно увидеть, тень в пикселях. и количество этих пикселей не будет зависеть от физического разрешения монитора.

 

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

 

 

Как формируется и просчитывается изображение я, мало мальски, представление имею.

Но разве мы не для этого задаем разрешение (в игре, в драйвере или же автоматом видеокарта получает требуемое разрешение устройства вывода), чтобы создать файл скрин.жпг именно в нужном нам разрешении? 

Как это видеокарта не знает (как ты писал выше), в каком разрешении ей этот файл создавать? Она сама решает это рандомно? 

Я думал, видеокарта отталкивается в этом именно от устройства вывода либо от принудительно заданных параметров. Ошибался?

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

Edited by Kill_Em_All
Link to post
Share on other sites
1 час назад, vasmann сказал:

Ты действительно считаешь, что мега игры класса авиасим, в который хотят играть десять человек и пять их друзей, может двинуть целую индустрию типа ВР?

Забавный.

Не стОит в наиве меня пытаться уличать )

Курочка по зернышку... (с)

А VR кроме симов пока близко никому нафиг не нужен, с его косяками. 

Надеюсь, я мысль донёс?

1 час назад, Geniok сказал:

Эээ...

Теоретически можно вывести самолет в отдельную текстуру, увеличить ее, потом поверх наложить кольцо прицела, только этого делать никто не будет не из-за затрат, а из-за того, что у вас прицельные метки на прицеле не будут соответствовать размеру этого самого самолета, так как его линейный размер будет больше того, который должен быть при текущем удалении до объекта.

Что с этим делать ? :) 

Ничего. Не делать. Потому что в игре текстура прицела уже (почему-то) сама :) масштабируется в зависимости от расстояния объекта прицеливания.

А уж какие-нибудь десятые доли рисок прицела даже от'явленному файрмэну будут мимо его сознания

Link to post
Share on other sites
22 минуты назад, Streich сказал:

Эта логичная мысль звучала на этом форуме неоднократно. 

Просто делать 2 разных копии игры (2 в 1-м) заморачиваться, похоже, не желают ни в какую

Да почему две копии??

Для того, чтобы выбрать джой или мышь, не нужно две копии. Так же и виар - монитор.

Edited by Kirill
  • Upvote 3
Link to post
Share on other sites
Только что, Streich сказал:

Ничего. Не делать. Потому что в игре текстура прицела уже (почему-то) сама :) масштабируется в зависимости от расстояния объекта прицеливания.

Я правильно понимаю, что если я целюсь  в самолет, до которого 500 метров, текстура прицела имеет диаметр на моем мониторе 15 см, а если целюсь в объект, до которого 100 метров, эта же самая текстура на этом же самом мониторе имеет диаметр уже 30 см ?

  • Haha 2
Link to post
Share on other sites
  • Han unpinned this topic

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...