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

[D3D11]Base render pipeline

Страницы: 1 2 3 4 Следующая »
#0
19:18, 11 янв. 2018

Добрый день,

Дошли руки, наконец, до D3D11, до этого много работал с D3D9 в основном.

Я пытаюсь вывести простые примитивы с ортогональной проекцией, вроде мы все создал необходимое, установил все и ничего на экране не увидел, отладчик мне показывает, что до стадии Pixel Shader даже не дошло.
d3d_debug | [D3D11]Base render pipeline

Я выключил culling, depth вроде бы тоже нормальная, что я еще мог упустить не подскажите?

Обновление. Вот что показывает shader debugger, depth вроде бы вполне проходит
output | [D3D11]Base render pipeline


#1
19:40, 11 янв. 2018

Osiris

ох, в DXSDK есть туториалы DX11

#2
19:42, 11 янв. 2018

innuendo
Не собирается под VS 2015, да и просмотрел я основные туториалы, все как обычно - ставим VB, IB, VD (Input Layout), VS, PS, и рендерим

#3
19:45, 11 янв. 2018

dxdebug ?

#4
19:49, 11 янв. 2018

innuendo
> dxdebug ?
D3D11_CREATE_DEVICE_DEBUG - это?

#5
19:50, 11 янв. 2018

Osiris

и OutputDebug

#6
19:51, 11 янв. 2018

Osiris
> все как обычно - ставим VB, IB, VD (Input Layout), VS, PS, и рендерим

осталось только повторить у себя ... броненосцы на тебя злые :)

#7
19:52, 11 янв. 2018

innuendo
> OutputDebug
а как возвращаемое значение получить после вызова метода скажем DrawIndexed?

Ага, включил debug, получаю только:
D3D11 WARNING: ID3D11DeviceContext::DrawIndexed: The Pixel Shader unit expects a Sampler to be set at Slot 0, but none is bound. This is perfectly valid, as a NULL Sampler maps to default Sampler state. However, the developer may not want to rely on the defaults.  [ EXECUTION WARNING #352: DEVICE_DRAW_SAMPLER_NOT_SET]

Но это я и так знаю, ща уберу текстуру пока.

#8
20:16, 11 янв. 2018

clear color хоть работает? :)

#9
20:19, 11 янв. 2018

да, конечно

#10
20:22, 11 янв. 2018

Osiris

> Я пытаюсь вывести простые примитивы с ортогональной проекцие

делай без MVP :)

убогое апи

#11
20:25, 11 янв. 2018

innuendo
> убогое апи
Так я просто в шейдер подкинул две матрицы, какое там API

#12
20:26, 11 янв. 2018

Osiris
> Так я просто в шейдер подкинул две матрицы, какое там API
рисуй без матриц

#13
20:48, 11 янв. 2018

>рисуй без матриц
Да вариант, но кажется у меня IB пустой) Спасибо IGPA показал

#14
20:55, 11 янв. 2018
 // quads  
  vIndex.resize(uMaxElementsNum * 6);

  for (unsigned int i = 0; i < uMaxElementsNum; i++)
  {
    vIndex[i * 6] = i * 4;
    vIndex[i * 6 + 1] = i * 4 + 1;
    vIndex[i * 6 + 2] = i * 4 + 2;

    vIndex[i * 6 + 3] = i * 4 + 2;
    vIndex[i * 6 + 4] = i * 4 + 1;
    vIndex[i * 6 + 5] = i * 4 + 3;
  }

  // Fill in a buffer description.
  Desc.Usage = D3D11_USAGE_DEFAULT;
  Desc.ByteWidth = sizeof(unsigned int) * vIndex.size();
  Desc.BindFlags = D3D11_BIND_INDEX_BUFFER;
  Desc.CPUAccessFlags = 0;
  Desc.MiscFlags = 0;

  // Define the resource data.
  D3D11_SUBRESOURCE_DATA InitData;
  InitData.pSysMem = &vIndex[0];
  InitData.SysMemPitch = 0;
  InitData.SysMemSlicePitch = 0;

  // Create the buffer with the device.
  hr = m_Device->CreateBuffer(&Desc, &InitData, &m_pIndexBuffer);
  if (FAILED(hr))
    return false;
Вот так не грузит что-то индексы
Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.