xgl: Resource transition proposal from Bug 12904.
Added resource transition proposal from Bug 12904.
Updated function prototypes.
Added XGL_IMAGE_CREATE_MUTABLE_FORMAT_BIT based on Intel's request.
Unless this flag is specified, image views created from the image must match the base format.
xgl.py: changes for resource tracking
loader: changes for resource tracking
icd: changes for resource tracking
tests: changes for resource tracking
demos: changes for resource tracking
diff --git a/demos/cube.c b/demos/cube.c
index f5b27cb..155729f 100644
--- a/demos/cube.c
+++ b/demos/cube.c
@@ -262,12 +262,11 @@
{
const XGL_COLOR_ATTACHMENT_BIND_INFO color_attachment = {
.view = demo->buffers[demo->current_buffer].view,
- .colorAttachmentState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
+ .layout = XGL_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
};
const XGL_DEPTH_STENCIL_BIND_INFO depth_stencil = {
.view = demo->depth.view,
- .depthState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
- .stencilState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
+ .layout = XGL_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
};
const XGL_FLOAT clear_color[4] = { 0.2f, 0.2f, 0.2f, 0.2f };
const XGL_FLOAT clear_depth = 1.0f;
@@ -880,8 +879,6 @@
demo->uniform_data.attach.sType = XGL_STRUCTURE_TYPE_BUFFER_VIEW_ATTACH_INFO;
demo->uniform_data.attach.view = demo->uniform_data.view;
- // no preparation..
- demo->uniform_data.attach.state = XGL_BUFFER_STATE_DATA_TRANSFER;
}
static void demo_prepare_descriptor_set(struct demo *demo)
@@ -908,7 +905,7 @@
image_view.sType = XGL_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO;
image_view.pNext = NULL;
image_view.view = demo->textures[0].view;
- image_view.state = XGL_IMAGE_STATE_GRAPHICS_SHADER_READ_ONLY;
+ image_view.layout = XGL_IMAGE_LAYOUT_GENERAL;
xglAttachSamplerDescriptors(demo->dset, 1, 1, &demo->textures[0].sampler);
xglAttachImageViewDescriptors(demo->dset, 2, 1, &image_view);
diff --git a/demos/tri.c b/demos/tri.c
index 82aadc7..8d74698 100644
--- a/demos/tri.c
+++ b/demos/tri.c
@@ -86,12 +86,11 @@
{
const XGL_COLOR_ATTACHMENT_BIND_INFO color_attachment = {
.view = demo->buffers[demo->current_buffer].view,
- .colorAttachmentState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
+ .layout = XGL_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
};
const XGL_DEPTH_STENCIL_BIND_INFO depth_stencil = {
.view = demo->depth.view,
- .depthState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
- .stencilState = XGL_IMAGE_STATE_TARGET_RENDER_ACCESS_OPTIMAL,
+ .layout = XGL_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL,
};
const XGL_FLOAT clear_color[4] = { 0.2f, 0.2f, 0.2f, 0.2f };
const XGL_FLOAT clear_depth = 0.9f;
@@ -565,7 +564,7 @@
.sType = XGL_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO,
.pNext = NULL,
.view = demo->textures[i].view,
- .state = XGL_IMAGE_STATE_GRAPHICS_SHADER_READ_ONLY,
+ .layout = XGL_IMAGE_LAYOUT_GENERAL,
};
xglAttachSamplerDescriptors(demo->dset, 2 * i, 1,