Images and GPU
Pictures and the graphics card: edit images, write shaders, chain effects and pack sprite sheets.
EditableImage and ImageService work on pictures in memory with Roblox's names. GpuService makes GpuTextures and ShaderPrograms, whose GLSL can live in the project as ShaderModules. An ImageProcessor runs a stack of effects you tune in Properties, AtlasBuilder packs sheets and tiles, and PixelArtProcessor turns frames into pixel-art sprites.
Up and coming
shot check knows these classes today; programs run them once the native runtime lands.
EditableImageDraw, crop, resize and recolour pictures in memory, then save them or send their bytes anywhere.GpuServiceYour program's line to the graphics card: make textures, load shaders and draw.ImageServiceOpen any image file, check its size without loading it, and pack sprite sheets.GpuTexturePictures that live on the graphics card: shaders draw into them, and you read, save or show them.ShaderProgramWrite a GLSL effect once and run it over any picture, or draw instanced geometry in one call.ShaderModuleKeep shaders in your project next to your scripts, with undo, history and live errors.ImageProcessorStack blur, shadows, outlines, colour curves and your own shaders, tune them in Properties, and run the look over one picture or a whole folder.ImageEffectThe base every image effect shares.BlurEffectBlur the picture.ColorCurveEffectReshape colour through any curve you like, written as a Luau function or as bezier points.BrightnessContrastEffectSet a picture's brightness and contrast as one step of the chain.HueShiftEffectTurn the hue of every colour in a picture.SaturationEffectChange a picture's saturation as one step of the chain.MultiplyEffectTint a picture by multiplying it with a colour.DropShadowEffectPut a drop shadow behind the shapes in a picture.InnerGlowEffectAdd an inner glow to the shapes in a picture.OutlineEffectDraw an outline around the shapes in a picture.DilateEffectPad a sprite's edges so filtering never pulls the background in.NoiseEffectMix white or Perlin noise into a picture.BlendEffectBlend another picture into this one.EdgesEffectInk lines where a render's normals or depth change.AmbientOcclusionEffectScreen-space ambient occlusion for a render.ShaderEffectRun your own fragment shader as one step of the chain.AtlasBuilderPack many images into as few sheets as possible, and cut the big ones into tiles.PixelArtProcessorTurn animation frames into small pixel-art sprites with one shared palette, outlines and steady colours.
