Войти
ПрограммированиеФорумГрафика

Vulkan API (вышел!) (97 стр)

Страницы: 196 97 98 99417 Следующая »
#1440
14:20, 24 фев. 2016

Andrey
> Дак там же все отлично.

Да ты что ? Смотрим DX11 - если брать ВСЕ стадии то нужно ПЯТЬ вызовов, против 1 у GL.

Это ты так API знаешь ? :)


#1441
14:31, 24 фев. 2016

Ребят, может вы уже угомонитесь? Хватит сравнивать DX с OGL, Vulkan с Mantle, Vulkan c DX, Vulkan c OGL и даже Windows c Linux.
Срача уже на 100 страниц развели... Если есть чем поделиться по теме - делитесь, а пережовывать ваше мнение о том, что лучше или хуже, что когда умрет и какой кому от этого будет профит - это никому не интересно.

P.S. не к предыдущему сообщению сказано, просто может кому будет интересно:
http://vbomesh.blogspot.com/2016/02/vulkan-api-fundamentals.html

#1442
14:35, 24 фев. 2016

Ребята. Все дальнейшие сравнения dx с gl буду тереть. сравнивайте их с вулканом.

#1443
15:07, 24 фев. 2016

А можно так ?
Какой я бы хотел видить Vulkan и какой он есть :)

#1444
16:05, 24 фев. 2016

ronniko
А ты его хоть как следует воскурил или просто фантазируешь?

#1445
16:14, 24 фев. 2016

typedef
Есть с чем сравнить , но просили не сравнивать :(

#1446
17:18, 24 фев. 2016

Fantom09
> P.S. не к предыдущему сообщению сказано, просто может кому будет интересно:
> http://vbomesh.blogspot.com/2016/02/vulkan-api-fundamentals.html
Хм. Перевод мизерного куска Vulkan spec.

#1447
(Правка: 17:46) 17:42, 24 фев. 2016

Imaginary unit
А ты чего хотел? :) Я ж написал - "может кому будет интересно", если ты это все уже знаешь - поздравляю)
На счет мизерного куска - это первая глава, сейчас готов перевод второй главы + готовлю демку, это все время, да и я ни зачем не гонюсь.
У меня сейчас цель основательно разобраться в API, буквально в каждом параметре каждой структуры, а не тупо копипастить куски демок.
Запись в блоге я скорее для себя веду, как шпаргалку, да и так мне лучше материал усваивается. Если это еще кому-то поможет - хорошо, нет - я не расстроюсь :)
Сейчас пока там идет перевод, позже будут примеры, разборы, сравнения, а может и ничего не будет)

#1448
(Правка: 18:45) 18:29, 24 фев. 2016

Что для меня странно, то что в Vulkan API 32 bit структуры не совпадают размер\описание.
Например, есть такая структура VkFramebufferCreateInfo.

typedef uint32_t VkFlags;
typedef VkFlags VkFramebufferCreateFlags;

typedef struct VkFramebufferCreateInfo {
    VkStructureType             sType;
    const void*                 pNext;
    VkFramebufferCreateFlags    flags;
    VkRenderPass                renderPass;
    uint32_t                    attachmentCount;
    const VkImageView*          pAttachments;
    uint32_t                    width;
    uint32_t                    height;
    uint32_t                    layers;
} VkFramebufferCreateInfo;
Визуально она 40 байт , если оталкиваться от описанной структуры.
Но реальный размер VkFramebufferCreateInfo 48 байт.
Ковыряние показало, что flags занимает 8 байт, а не 4 байта как это описано в структуре VkFramebufferCreateInfo !

А ведь эту структуру принимает функция vkCreateFramebuffer !
То есть данные должны четко поподать в описанную структуру.
А тут видим халям-балям.

И это напрягает. Такой фристаил в дате для Vulkan функций.
И к тому же как такое переводить для других языков ЯП.
PS: Я первый раз натолкнулся на токую хрень. Раньше переводя для Fasma примеры MantleAPI\DirectSound\DX11\DX10\XAudio2\MediaFoundation везде у структур совподал размер с описанием.

#1449
(Правка: 18:38) 18:36, 24 фев. 2016

ronniko
> Ковыряние показало, что flags занимает 8 байт, а не 4 байта как это описано в
> структуре VkFramebufferCreateInfo !
Не вижу там никаких "описаний размеров", кроме someShit32_t.
И да, нет никаких визуально. Есть sizeof().

#1450
(Правка: 18:43) 18:39, 24 фев. 2016

The Player
Тут явно задоно 32 байта для flags.

typedef uint32_t VkFlags;
typedef VkFlags VkFramebufferCreateFlags;
VkFramebufferCreateFlags    flags;

А IDA pro 32 bita показала что flags занимает 8 байт, потом идут 8 байт для renderPass


PS: The Player я бы на это не обратил бы внимание, если бы лишние байты в структуре были в конце. Но они бывают между именами ! Это и напрягает.

#1451
18:42, 24 фев. 2016

ronniko
У меня эта структура занимает целых 64 байта ;)

#1452
18:43, 24 фев. 2016

Fantom09 потомушта ты 64 битный юзер :)

#1453
18:56, 24 фев. 2016

Расскажите кто-нибудь ronniko о выравнивании полей в структурах в c/c++, о padding bytes. А то у него от fasm разжижение головные боли.

#1454
18:58, 24 фев. 2016

ronniko
> потомушта ты 64 битный юзер :)
Потому что есть такая штука как выравнивание, даже на 64-битных системах размер данной структуры, если считать по размеру полей, будет 48 байт:
Вот размер
sType : 4
pNext : 8
flags : 4
renderPass : 8
attachmentCount : 4
pAttachments : 8
width : 4
height : 4
layers : 4

Страницы: 196 97 98 99417 Следующая »
ПрограммированиеФорумГрафика