Image Pipeline
Overview
- The Image Pipeline refers to the pipeline for fetching images and decoding them into textures.
- The image pipeline consists of the following steps:
- Request for image data
- Retrieval of image data from the local cache if available
- Retrieval of image data from the servers if required
- Decompression of the image data into texture data for use by the graphics system
System Overview
Local Texture Caching
- See Texture Cache
Simulator Pipeline
- The current system for fetching images from the servers goes through the simulator using UDP.
- This system is not well documented and will be replaced by the HTTP Image Pipeline
HTTP Image Pipeline
HTTP Image State Machine
- Load From Cache* Load any Image data from the local cache
- Compare the cached data with the requested discard level. If no additional data is required, skip to Decode Image
- Request URL Request a URL for the image from the simulator (Note: URL requests are batched)
- Wait for URL Idle until the URL Response is received
- Request Image Request the Image data from the server using the URL provided
- Wait for Image Idle until the Image Response is received
- Decode Image* Decode the Image
- Cache Image* Cache the Image
- Note: These steps are actually implemented using an asynchronous request / response pattern, but because this is internal to the client, that is not illustrated here.