Vbo в майнкрафт что это
Перейти к содержимому

Vbo в майнкрафт что это

  • автор:

Стоит ли включать или отключать VBO в Minecraft (07.21.23)

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

Включение или отключение VBO в Minecraft

При доступе к настройкам Minecraft вы могли заметить опцию под названием «VBOs». Это одна из многих опций, которые вы можете найти в настройках графики / видео в видеоиграх. Большинство игроков не имеют большого представления о том, что такое VBO, поэтому они спрашивают, следует ли им включать или отключать их.

Популярные уроки Minecraft

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

Что такое настройка VBO?

Для тех из вас, кто не знает, VBO — это, по сути, настройка видео, которая обозначает вертикальный буферный объект. Это функция OpenGL, которая отвечает за то, какую процедуру или метод использует игра для загрузки данных вершин (включая позиционирование, вектор и цвет).

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

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

Следует ли вам его включать?

Если вы поняли, что такое VBO, должно быть довольно ясно, что включение этого параметра для некоторых пользователей даст им огромный прирост FPS. Следует отметить одну важную вещь: когда она включена, вы перекладываете большую часть нагрузки на графический процессор, а не на центральный процессор.

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

Итог

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

Что-то про VAO/VBO, шейдеры

Q: Что такое VBO?
A: VBO – это технология, позволяющая выгрузить данные в видеоустройство для повышения скорости отрисовки.
ОЗУ, ГПУ и ЦПУ — все имеют про три буквы в сокращении, все оканчиваются на «у» (на самом деле, ГП, ЦП и ОЗУ).
Данные между ними передаются относительно медленно, словно каждый из них находится на разных материках. Процессор имеет кэш, доступ к которому является достаточно быстрым; видеокарта имеет видеопамять, доступ к которой будет побыстрее, чем к ОЗУ. Данные, нужные для отрисовки, лежат же в ОЗУ: например, треугольник с 3 вершинами, каждая из которых может иметь 3 локальные координаты, 2 UV-координаты. Для того чтобы не гонять все эти данные из ОЗУ в процессор, а оттуда на ГП, была разработана технология VBO. Она позволяет сразу выгрузить данные в видеопамять, а графический процессор будет использовать их для отрисовки уже оттуда.

Также, VBO представляет из себя массив ака буфер данных, находящийся в видеопамяти.

Q: Что такое VAO?
А: Всё очень просто, это массив, содержащий буферы с данными(те самые VBO), а также последовательность индексов(о них позже).

indexing1.png

Допустим, рисуется параллелограмм(выше картинка). Поскольку ОГЛ рисует треугольниками, то наш параллелограмм распадается на 2 треугольника. Каждая из 4 вершин может иметь: позицию(3 координаты), UV-координаты(2 координаты). Значит, VAO будет следующим(тут вершины повторяются, поскольку мы описываем треугольники, а каждому из них нужно указать три вершины в опр. порядке):
-VAO
—Pos0
—UV0

//второй треугольник
—Pos2
—UV2

Итого, 6 * (3 + 2) = 30 чисел.
Вместо того, чтобы загружать каждый раз данные о вершине, мы загрузим разово все вершины и последовательность, в которой эти вершины будут рисоваться(индексы). Тогда VAO примет вид:

—indices[0, 1, 2, 2, 3, 1]

Итого, 4 * (3 + 2) + 6 = 26 чисел. Экономия в 4 числа.
— Всего?!
Да, всего. Но мы ведь рисуем лишь два треугольника, а какова будет экономия, если нарисовать 2-3к треугольников?

Q: Хорошо, *не* понятно, но что такое шейдер, зачем он?
A: Шейдер — это программа для ГП, которая обрабатывает какие-то данные на ГП, лол. Вершинный шейдер — вершины, геометрический — наборы вершин, фрагментарный — пиксели. Ещё есть тесселяционный, но с ним я не работал, уж простите. Пишутся шредоры эти на С-подобном языке — GLSL.
Итак, расскажу чуть подробнее про каждый тип шейдеров.
==Вершинный==
Обычно принимает локальную координату вершины, которую с помощью диковинных трансформаций переводит в NDC(normalized device coordinates).

==Фрагментарный==
Ну тут всё просто — нужно выдать цвет пикселя. Можно использовать текстуру, откуда по UV-координатам легко достаётся цвет пикселя; можно просто указать цвет (от 0 до 1).

==Геометрический==
Принимаете набор вершин, а дальше что хотите — то и делайте. Можете раздвинуть вершины, можете добавить/убрать имеющиеся. Например, 1 входную вершину можно превратить в куб. Точка->куб. Тут уж ваша фантазия. ‘Nuff said.

Q: Каких-то диковинных трансформаций?
А: Трансформации переводят позицию из одного простраства в другое с помощью матриц. Происходит это по следующей схеме: local space -> world(global) space -> view(camera) space -> clip space -> NDC space.

Local Space: локальное пространство фигуры. Думаю, всё понятно, да?
World(global) Space: мировое пространство фигуры. Тут тоже всё ясно, так?
View(camera) Space: пространство в камере. В мире компьютерной графике вращается не камера, а вершины фигур, смещаются также вершины. Камеры нет, это всё ложь.
Clip Space: если вы используете перспективную проекцию, то более далёкие фигуры будут меньше, чем ближние; параллельные прямые начинают сходится. Но можно задать ортогональную проекцию. Тогда все фигуры будут одинаковых размеров, будто б не удалены; параллельные не сходятся. О построении матриц проекции:
http://ogldev.atspace.co.uk/www/tutorial12/tutorial12.html
http://www.songho.ca/opengl/gl_projectionmatrix.html

Кстати, в первых трёх трансформациях используется 3-хмерный вектор. А вот в последней трансформации требуется 4-хмерный вектор, поскольку после преобразования в clip space координаты должны стать единичными, т.е. находится в NDCS(normalized device coordinates space). А происходит это путём деления xyz на w. Намечается вопрос: "А как тогда подобрать w координаты, чтобы перевести этот вектор в clip space?". Обычно ставится w = 1, если это точка. И w = 0 если вектор(потому что при делении на 0 всё обращается в бесконечность, а вектор в данном контексте представляет направление. Направление же не имеет конечной точки, ведь так?). А ещё в clip space верно следующее уравнение -w <= x, y, z <= w. Если какая-то из 3-х координат не соответствует неравенству, то она находится вне проекции(вне frustum, если перспективная; вне параллелепипеда, если это ортогональная).

Vbo в майнкрафт что это

Все остальные параметры прибавляют отзывчивости буквально по крохам. Настроить майнкрафт на максимальную производительность и объяснить, что означает каждый параметр, вот цель данной статьи.
Проверялось всё на версии 1.10.х

Как настроить графику в Майнкрафт

Настройка графики в Майнкрафт
За основу взят чистый клиент Майнкрафт, без модов и текстур. Собственно такие настройки выставил у себя для комфортной игры.
Чтобы увидеть количество фпс в игре, нужно нажать F3.

Графика: Детально или Быстро
На моем ПК, изменение этого параметра, меняет фпс в районе 10-20, особенно это заметно во время дождя.
При включении Детально будут появляться частицы дождя и прозрачность листвы.
При выставлении Быстрая данные эффекты отображаться не будут.
Мягкое освещение
Использование этой настройки влияет на качество теней в Майнкрафт. По умолчанию она включена и стоит на максимуме.
Если у вас слабая видеокарта, то отключение мягкого освещения, может неплохо прибавить FPS.

3D анаглиф
Включение этой настройки может потребоваться, только когда вы захотите лицезреть игровой мир с 3D-эффектом через очки. Этот параметр понижает фпс очень и очень прилично.
3D анаглиф
Интерфейс
Тут каждому свое. На производительность не влияет. Отвечает за отображение всех иконок, интерфейса, менюшек.

Яркость
На количество фпс так же не влияет. Но влияет на комфорт игры.

Частицы
Грубо говоря, это те самые спецэффекты, которые делают игру невыносимой на слабых компьютерах. Особенно в моменты, когда идет массовое сражение и «дым столбом стоит». Это дождь, пузыри, следы, искры и прочее. Все это можно отключить выставив эту настройку в Меньше

  • становится меньше подергиваний и рывков в игре
  • видеокарта работает не на всю мощь, а отсюда меньше греется, меньше шумит,
  • и возможно у нее становится меньше энергопотребление

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

Прорисовка
Дальность прорисовки чанков. В игровом мире 1 чанк равен 16*16*256 блоков (Ш*Д*Г). Как только чанк прорисовывается и игрок попадает в него, сразу же для него грузятся все мобы, предметы и другие объекты. Данный параметр очень сильно влияет на производительность. Как настроить ее, здесь каждый должен подобрать себе значение и найти компромисс между красотой в игре и хорошим фпс.

Частота кадров
Данная настройка позволяет не грузить видеокарту по полной. Меньше нагрева, меньше шума. Попробуйте выставить это значение процентов на 30% ниже от вашего среднего фпс. Задумка кроется в том, чтобы у видюхи хватало ресурсов на обработку новых сцен и не было резких просадок и фризов. Т.к. у нее будет определенный запас по производительности. Данный совет не относится к тем у кого 5-10-15 кадров в секунду. Для вас это значение должно стоять максимум.

Покачивание камеры
Когда персонаж перемещается, камера покачивается. Это лишнее. Выкл.

Индикатор атаки
Время перезарядки сильного удара. На свое усмотрение.

Облака
Данная настройка влияет на фпс, желательно ее Отключить или выставить в положение Быстрая. Тогда они будут прорисовываться, но плоскими. У нее есть полезная функция, облака всегда движутся на запад, что позволяет по ним ориентироваться на местности.
Облака в Майнкрафте
Полноэкранный режим
Все мы привыкли играть в игры в таком режиме. Но если видюха слабенькая, то переключение на оконный режим, может повысить фпс на 20-30 значений.

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

Тени сущностей
Появляются тени от персонажей, мобов, предметов. Влияет на производительность. Выкл.

Вот и рассмотрели все варианты как настроить Майнкрафт стандартным способом. Хотя большинство параметров и так интуитивно понятны, но именно 4 настройки, указанные в начале статьи, больше всего влияют на производительность.

Vbo в майнкрафт что это

Reddit and its partners use cookies and similar technologies to provide you with a better experience.

By accepting all cookies, you agree to our use of cookies to deliver and maintain our services and site, improve the quality of Reddit, personalize Reddit content and advertising, and measure the effectiveness of advertising.

By rejecting non-essential cookies, Reddit may still use certain cookies to ensure the proper functionality of our platform.

For more information, please see our Cookie Notice and our Privacy Policy .

Get the Reddit app

Minecraft community on reddit

VBO stands for "Vertical Buffer Object"
A Vertex Buffer Object (VBO) is an OpenGL feature that provides methods for uploading vertex data (position, normal vector, color, etc.) to the video device for non-immediate-mode rendering. VBOs offer substantial performance gains over immediate mode rendering primarily because the data resides in the video device memory rather than the system memory and so it can be rendered directly by the video device.
A Little bit simpler: In immediate mode (Minecraft Default) when you want to render say a square: You would issue the following commands each frame (in pseudo code)

begin drawing
draw line from (0,0) to (1,0) draw line from (1,0) to (1,1)
draw line from (1,1) to (0,1)
draw line from (0,1) to (0,0)
end drawing

For one square, this is not a lot, but there could be millions of vertices in a scene, and they may have more attributes (colour, normal etc.). This is a lot of data to send to the GPU each frame.
Using VBOS, you would load all of the vertex data into GPU memory at the start. Pseudo code might look like this:

create VBO
load (0,0) into VBO
load (1,0) into VBO
load (1,1) into VBO
load (0,1) into VBO
load (0,0) into VBO

The OpenGL code will give you back a 'name' for this VBO (a non-zero unsigned integer iirc). You can then reference this when you want to draw the square. So each frame, you only need to issue one draw command:
draw vertices in VBO
You may have to set up the drawing state so that it uses pairs of vertices for lines, but for each additional VBO, you only require one extra draw call. In fact, for static level geometry (probably not applicable in the case of minecraft) you can combine all of these vertices into one massive VBO, if you have enough GPU memory.
In minecraft specifically it Offers a

10% performance increase when set to ON
It does this by reducing the workload on your CPU & RAM and reassigning it to your gpu memory, this is only recommended if you have an okay to decent graphics card.
Source 1
Source 2

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *