видеокарта - можно ли ей пользоваться?

Модератор: Модераторы

видеокарта - можно ли ей пользоваться?

Сообщение vitaly_l » 20.01.2017 18:52:30

Если 3D просто рисовать на канвасе, то это будет медленно т.к. придумано много инструментов и часть вычислений переложена на видеокарту.

Видеокарта, рисует: 3D - треугольниками и многоугольниками.

Всем этим заправляют, например: OpenGL и DirectX и в них понапиханы последние достижения в работе видеокарт. В DX все функции спрятаны в DLL и посмотреть как именно код обращается к карте невозможно ( в OpenGL не знаю ).

:idea: Вопрос в следующем, как обратиться напрямую к видеокарте ? (минуя OpenGL, DirectX итп)
:arrow: Точнее, как в неё - самому загрузить текстуры, координаты, UV, нормали ? (минуя OpenGL, DirectX итп)
Последний раз редактировалось vitaly_l 20.01.2017 19:14:34, всего редактировалось 1 раз.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: видеокарта - можно ли ей пользоваться?

Сообщение Pavia » 20.01.2017 19:12:23

Это неправильный вопрос. Неправильные вопросы рождают неправильные ответы.
Никак вы не получите.
Аватара пользователя
Pavia
постоялец
 
Сообщения: 220
Зарегистрирован: 07.01.2011 12:46:51

Re: видеокарта - можно ли ей пользоваться?

Сообщение vitaly_l » 20.01.2017 19:14:54

Pavia писал(а):Никак вы не получите.

Почему?
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: видеокарта - можно ли ей пользоваться?

Сообщение sts » 20.01.2017 19:29:14

желание давнишнее, уже есть такое - vulkan
sts
постоялец
 
Сообщения: 271
Зарегистрирован: 04.04.2008 12:15:44
Откуда: Тольятти

Re: видеокарта - можно ли ей пользоваться?

Сообщение Pavia » 20.01.2017 19:31:05

Причин много:
- разные видео карты имеют разную архитектуру. Тут я под архитектурой имею в виду то что у них разный ассемблер. Разные регистры и порты в/в и микра и макра архитектура у них различная. И программируются по разному для этого и придумана такая вещь как абстракция. По русски обобщение. Один общий программный интерфейс скрывает разные реализации. Вот таким интерфейсом является DirectX. Вам придётся его переизобрести и написать драйвер для каждой видеокарты.
- Так вот не все производители открывают документацию на свои карты.
- виндоус это защищенная ОС она затрудняет вам писать драйвера. Требует компилятор СИ приобретение сертификата для драйвера.
- надо остановить существующие драйвера что-бы они не мешали вам.
- архитектура PC такова что видео память вам недоступна вся и сразу. Вам надо будет написать менеджер памяти который будет по кускам отоброжать её, а ещё лучше DMA который заставит видео карту самой загружать текстуры в виде память.
- а да ещё что-бы получить доступ к видео регистрам надо будет отключить защиту.
- а ещё всё это требует очень много труда. Таких кто написал во всём мире можно пересчитать по пальцам руки. Те 1 человек на 2 милиарда где-то. Даже теория вероятность против вас.
Аватара пользователя
Pavia
постоялец
 
Сообщения: 220
Зарегистрирован: 07.01.2011 12:46:51

Re: видеокарта - можно ли ей пользоваться?

Сообщение vitaly_l » 20.01.2017 19:36:18

Pavia писал(а):Так вот не все производители открывают документацию на свои карты.

Я тут почитал, по сути, нужно ВСЕГО-ТО написать свой шейдер... ещё пока читаю, в надежде, что в конце статьи будет полезная инфа как его писать...

sts писал(а):желание давнишнее, уже есть такое - vulkan

vulkan <== это название модуля? Где посмотреть можно?

Pavia писал(а):- а ещё всё это требует очень много труда. Таких кто написал во всём мире можно пересчитать по пальцам руки. Те 1 человек на 2 милиарда где-то. Даже теория вероятность против вас.

сомневаюсь, что всё это сложно, т.к. не более чем загрузка в обычную память.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: видеокарта - можно ли ей пользоваться?

Сообщение Лекс Айрин » 20.01.2017 19:40:07

vitaly_l писал(а):Почему?


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

Добавлено спустя 1 минуту 5 секунд:
vitaly_l писал(а):vulkan <== это название модуля? Где посмотреть можно?


Это следующее поколение OpenGL
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: видеокарта - можно ли ей пользоваться?

Сообщение sts » 20.01.2017 19:43:36

sts
постоялец
 
Сообщения: 271
Зарегистрирован: 04.04.2008 12:15:44
Откуда: Тольятти

Re: видеокарта - можно ли ей пользоваться?

Сообщение скалогрыз » 20.01.2017 19:46:07

vitaly_l писал(а):Я тут почитал, по сути, нужно ВСЕГО-ТО написать свой шейдер... ещё пока читаю, в надежде, что в конце статьи будет полезная инфа как его писать..

ты не дочитал до того места, где сказано что "шейдер" писать нужно либо через DX либо через OpenGL.

а это противоречит твоему словию: "(минуя OpenGL, DirectX итп)" ;)
скалогрыз
долгожитель
 
Сообщения: 1690
Зарегистрирован: 03.09.2008 02:36:48

Re: видеокарта - можно ли ей пользоваться?

Сообщение zub » 20.01.2017 19:46:59

А к чему вы еще хотите обратиться напрямую из под современной ос? давайте поговорим об этом
zub
долгожитель
 
Сообщения: 2528
Зарегистрирован: 14.11.2005 23:51:26

Re: видеокарта - можно ли ей пользоваться?

Сообщение vitaly_l » 20.01.2017 19:53:22

скалогрыз писал(а):ты не дочитал до того места, где сказано что "шейдер" писать нужно либо через DX либо через OpenGL.

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

sts писал(а):http://www.nvidia.ru/object/vulkan-grap ... og-ru.html

Я уже нашёл их, но они так же засекречены как DX и OpenGL, они - не открытая система. У них установщик даже есть. Хотя выглядят красиво :(

zub писал(а):А к чему вы еще хотите обратиться напрямую из под современной ос? давайте поговорим об этом

А чего об этом говорить??? Выше на 50% описан 3D движок, чтобы его написать нужно потратить неделю. А чтобы изучить все фичи OpenGL, DX и Vulkan - нужно потратить ГОДЫ!!!! Понимаете Карл? ГОДЫ вместо одной недели!!! И потом интересно, ведь карту можно и в других целях привлечь к расчётам....
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: видеокарта - можно ли ей пользоваться?

Сообщение Лекс Айрин » 20.01.2017 19:56:59

vitaly_l писал(а):Я уже нашёл их, но они так же засекречены как DX и OpenGL, они - не открытая система.


Странно... а я нашел спецификацию и пр... https://www.khronos.org/registry/vulkan/ на английском, правда... что я делаю не так?
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: видеокарта - можно ли ей пользоваться?

Сообщение vitaly_l » 20.01.2017 20:03:22

Лекс Айрин писал(а):что я делаю не так?

Найдите где они там пишут, о том, как написать свой шейдер и загрузить его в видеокарту?


.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: видеокарта - можно ли ей пользоваться?

Сообщение sts » 20.01.2017 20:05:10

ну я не думаю что вы собираетесь взаимодействовать минуя драйвер, ведь для этого придется написать свой, заведомо хуже чем штатный, а вулкан апи ближе всего к железу, ближе некуда, даже ближе чем драйвер для опенгл\дИкс
так что исходник драйвера вам ненужны
Последний раз редактировалось sts 20.01.2017 20:06:23, всего редактировалось 1 раз.
sts
постоялец
 
Сообщения: 271
Зарегистрирован: 04.04.2008 12:15:44
Откуда: Тольятти

Re: видеокарта - можно ли ей пользоваться?

Сообщение runewalsh » 20.01.2017 20:05:25

Pavia писал(а):у них разный ассемблер

Это не (совсем) так, шейдерные модели со второй-третьей или какой там унифицированы (не уверен, связано это с унификацией процессоров всех стадий конвеера или само по себе), что позволяет, помимо прочего (а-ля обращение к текстуре не из фрагментного), прекомпилировать шейдеры. (Можно предположить, что всё же могут реализовываться и специфичные фичи и шейдер, скомпилированный из исходников, будет работать быстрее, но я особо не интересовался.)
Аватара пользователя
runewalsh
постоялец
 
Сообщения: 433
Зарегистрирован: 27.04.2010 00:15:25

След.

Вернуться в Графика и мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru