forked from MoonsideGames/Refresh
SetTextureDataYUV
parent
e0dcaa222b
commit
25cec457b4
|
@ -1816,7 +1816,7 @@ static void D3D11_SetTextureData(
|
||||||
data,
|
data,
|
||||||
BytesPerRow(w, d3d11Texture->format),
|
BytesPerRow(w, d3d11Texture->format),
|
||||||
BytesPerImage(w, h, d3d11Texture->format),
|
BytesPerImage(w, h, d3d11Texture->format),
|
||||||
D3D11_COPY_DISCARD /* FIXME: Is this right? */
|
0 /* FIXME: Could DISCARD here if we know we're overwriting the whole image... */
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1838,7 +1838,49 @@ static void D3D11_SetTextureDataYUV(
|
||||||
uint32_t yStride,
|
uint32_t yStride,
|
||||||
uint32_t uvStride
|
uint32_t uvStride
|
||||||
) {
|
) {
|
||||||
NOT_IMPLEMENTED
|
D3D11Renderer *renderer = (D3D11Renderer*) driverData;
|
||||||
|
D3D11CommandBuffer *d3d11CommandBuffer = (D3D11CommandBuffer*) commandBuffer;
|
||||||
|
D3D11Texture *yTex = (D3D11Texture*) y;
|
||||||
|
D3D11Texture *uTex = (D3D11Texture*) u;
|
||||||
|
D3D11Texture *vTex = (D3D11Texture*) v;
|
||||||
|
D3D11_BOX yBox = { 0, 0, 0, yWidth, yHeight, 1 };
|
||||||
|
D3D11_BOX uvBox = { 0, 0, 0, uvWidth, uvHeight, 1 };
|
||||||
|
|
||||||
|
/* Y */
|
||||||
|
ID3D11DeviceContext1_UpdateSubresource1(
|
||||||
|
d3d11CommandBuffer->context,
|
||||||
|
yTex->handle,
|
||||||
|
0,
|
||||||
|
&yBox,
|
||||||
|
yDataPtr,
|
||||||
|
yStride,
|
||||||
|
0,
|
||||||
|
D3D11_COPY_DISCARD
|
||||||
|
);
|
||||||
|
|
||||||
|
/* U */
|
||||||
|
ID3D11DeviceContext1_UpdateSubresource1(
|
||||||
|
d3d11CommandBuffer->context,
|
||||||
|
uTex->handle,
|
||||||
|
0,
|
||||||
|
&uvBox,
|
||||||
|
uDataPtr,
|
||||||
|
uvStride,
|
||||||
|
0,
|
||||||
|
D3D11_COPY_DISCARD
|
||||||
|
);
|
||||||
|
|
||||||
|
/* V */
|
||||||
|
ID3D11DeviceContext1_UpdateSubresource1(
|
||||||
|
d3d11CommandBuffer->context,
|
||||||
|
vTex->handle,
|
||||||
|
0,
|
||||||
|
&uvBox,
|
||||||
|
vDataPtr,
|
||||||
|
uvStride,
|
||||||
|
0,
|
||||||
|
D3D11_COPY_DISCARD
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void D3D11_CopyTextureToTexture(
|
static void D3D11_CopyTextureToTexture(
|
||||||
|
|
Loading…
Reference in New Issue