| Top |
| GulkanTexture * | gulkan_texture_new () |
| GulkanTexture * | gulkan_texture_new_from_pixbuf () |
| GulkanTexture * | gulkan_texture_new_from_cairo_surface () |
| GulkanTexture * | gulkan_texture_new_from_dmabuf () |
| GulkanTexture * | gulkan_texture_new_mip_levels () |
| GulkanTexture * | gulkan_texture_new_export_fd () |
| void | gulkan_texture_record_transfer () |
| void | gulkan_texture_record_transfer_full () |
| gboolean | gulkan_texture_transfer_layout () |
| gboolean | gulkan_texture_transfer_layout_full () |
| gboolean | gulkan_texture_upload_pixels () |
| gboolean | gulkan_texture_upload_cairo_surface () |
| gboolean | gulkan_texture_upload_pixbuf () |
| VkImageView | gulkan_texture_get_image_view () |
| VkImage | gulkan_texture_get_image () |
| VkExtent2D | gulkan_texture_get_extent () |
| VkFormat | gulkan_texture_get_format () |
| guint | gulkan_texture_get_mip_levels () |
GulkanTexture * gulkan_texture_new (GulkanClient *client,VkExtent2D extent,VkFormat format);
GulkanTexture * gulkan_texture_new_from_pixbuf (GulkanClient *client,GdkPixbuf *pixbuf,VkFormat format,VkImageLayout layout,gboolean create_mipmaps);
GulkanTexture * gulkan_texture_new_from_cairo_surface (GulkanClient *client,cairo_surface_t *surface,VkFormat format,VkImageLayout layout);
GulkanTexture * gulkan_texture_new_from_dmabuf (GulkanClient *client,int fd,VkExtent2D extent,VkFormat format);
GulkanTexture * gulkan_texture_new_mip_levels (GulkanClient *client,VkExtent2D extent,guint mip_levels,VkFormat format);
GulkanTexture * gulkan_texture_new_export_fd (GulkanClient *client,VkExtent2D extent,VkFormat format,VkImageLayout layout,gsize *size,int *fd);
Allocates a GulkanTexture and exports it via external memory to an fd and provides the size of the external memory.
based on code from https://github.com/lostgoat/ogl-samples/blob/master/tests/gl-450-culling.cpp https://gitlab.com/beVR_nz/VulkanIPC_Demo/
void gulkan_texture_record_transfer (GulkanTexture *self,VkCommandBuffer cmd_buffer,VkImageLayout src_layout,VkImageLayout dst_layout);
void gulkan_texture_record_transfer_full (GulkanTexture *self,VkCommandBuffer cmd_buffer,VkAccessFlags src_access_mask,VkAccessFlags dst_access_mask,VkImageLayout src_layout,VkImageLayout dst_layout,VkPipelineStageFlags src_stage_mask,VkPipelineStageFlags dst_stage_mask);
gboolean gulkan_texture_transfer_layout (GulkanTexture *self,VkImageLayout src_layout,VkImageLayout dst_layout);
gboolean gulkan_texture_transfer_layout_full (GulkanTexture *self,VkAccessFlags src_access_mask,VkAccessFlags dst_access_mask,VkImageLayout src_layout,VkImageLayout dst_layout,VkPipelineStageFlags src_stage_mask,VkPipelineStageFlags dst_stage_mask);
gboolean gulkan_texture_upload_pixels (GulkanTexture *self,guchar *pixels,gsize size,VkImageLayout layout);
gboolean gulkan_texture_upload_cairo_surface (GulkanTexture *self,cairo_surface_t *surface,VkImageLayout layout);
gboolean gulkan_texture_upload_pixbuf (GulkanTexture *self,GdkPixbuf *pixbuf,VkImageLayout layout);