image->bo = NULL;
image->offset = 0;
image->type = pCreateInfo->imageType;
+ image->format = pCreateInfo->format;
image->extent = pCreateInfo->extent;
assert(image->extent.width > 0);
view->surface_state = create_surface_state(device, view->image, format);
+ /* TODO: Miplevels */
+ view->extent = view->image->extent;
+
*pView = (VkImageView) view;
return VK_SUCCESS;
{
struct anv_device *device = (struct anv_device *) _device;
struct anv_color_attachment_view *view;
- struct anv_image *image;
const struct anv_format *format =
anv_format_for_vk_format(pCreateInfo->format);
return vk_error(VK_ERROR_OUT_OF_HOST_MEMORY);
view->image = (struct anv_image *) pCreateInfo->image;
- image = view->image;
- view->surface_state = create_surface_state(device, image, format);
+ view->surface_state = create_surface_state(device, view->image, format);
+
+ /* TODO: Miplevels */
+ view->extent = view->image->extent;
*pView = (VkColorAttachmentView) view;
struct anv_image {
VkImageType type;
+ VkFormat format;
VkExtent3D extent;
uint32_t tile_mode;
VkDeviceSize size;
struct anv_color_attachment_view {
struct anv_image * image;
struct anv_state surface_state;
+
+ VkExtent3D extent;
};
struct anv_image_view {
struct anv_image * image;
struct anv_state surface_state;
+
+ VkExtent3D extent;
};
struct anv_sampler {