Documentation
¶
Overview ¶
Package render can be used to render parsed map to image. Currently supports only orthogonal rendering out-of-the-box.
Index ¶
- Variables
- type OrthogonalRendererEngine
- func (e *OrthogonalRendererEngine) GetFinalImageSize() image.Rectangle
- func (e *OrthogonalRendererEngine) GetTilePosition(x, y int) image.Rectangle
- func (e *OrthogonalRendererEngine) Init(m *tiled.Map)
- func (e *OrthogonalRendererEngine) RotateTileImage(tile *tiled.LayerTile, img image.Image) image.Image
- type Renderer
- func (r *Renderer) Clear()
- func (r *Renderer) RenderGroup(groupID int) error
- func (r *Renderer) RenderGroupLayer(groupID, layerID int) error
- func (r *Renderer) RenderGroupObjectGroup(groupID, objectGroupID int) error
- func (r *Renderer) RenderLayer(id int) error
- func (r *Renderer) RenderObjectGroup(i int) error
- func (r *Renderer) RenderVisibleGroups() error
- func (r *Renderer) RenderVisibleLayers() error
- func (r *Renderer) RenderVisibleLayersAndObjectGroups() error
- func (r *Renderer) RenderVisibleObjectGroups() error
- func (r *Renderer) SaveAsGif(w io.Writer, options *gif.Options) error
- func (r *Renderer) SaveAsJpeg(w io.Writer, options *jpeg.Options) error
- func (r *Renderer) SaveAsPng(w io.Writer) error
- type RendererEngine
Constants ¶
This section is empty.
Variables ¶
var ( // ErrUnsupportedOrientation represents an error in the unsupported orientation for rendering. ErrUnsupportedOrientation = errors.New("tiled/render: unsupported orientation") // ErrUnsupportedRenderOrder represents an error in the unsupported order for rendering. ErrUnsupportedRenderOrder = errors.New("tiled/render: unsupported render order") // ErrOutOfBounds represents an error that the index is out of bounds ErrOutOfBounds = errors.New("tiled/render: index out of bounds") )
Functions ¶
This section is empty.
Types ¶
type OrthogonalRendererEngine ¶
type OrthogonalRendererEngine struct {
// contains filtered or unexported fields
}
OrthogonalRendererEngine represents orthogonal rendering engine.
func (*OrthogonalRendererEngine) GetFinalImageSize ¶
func (e *OrthogonalRendererEngine) GetFinalImageSize() image.Rectangle
GetFinalImageSize returns final image size based on map data.
func (*OrthogonalRendererEngine) GetTilePosition ¶
func (e *OrthogonalRendererEngine) GetTilePosition(x, y int) image.Rectangle
GetTilePosition returns tile position in image.
func (*OrthogonalRendererEngine) Init ¶
func (e *OrthogonalRendererEngine) Init(m *tiled.Map)
Init initializes rendering engine with provided map options.
func (*OrthogonalRendererEngine) RotateTileImage ¶
func (e *OrthogonalRendererEngine) RotateTileImage(tile *tiled.LayerTile, img image.Image) image.Image
RotateTileImage rotates provided tile layer.
type Renderer ¶
type Renderer struct { Result *image.NRGBA // The image result after rendering using the Render functions. // contains filtered or unexported fields }
Renderer represents an rendering engine.
func NewRenderer ¶
NewRenderer creates new rendering engine instance.
func NewRendererWithFileSystem ¶ added in v0.10.0
NewRendererWithFileSystem creates new rendering engine instance with a custom file system.
func (*Renderer) Clear ¶
func (r *Renderer) Clear()
Clear clears the render result to allow for separation of layers. For example, you can render a layer, make a copy of the render, clear the renderer, and repeat for each layer in the Map.
func (*Renderer) RenderGroup ¶ added in v0.12.0
RenderGroup renders single group.
func (*Renderer) RenderGroupLayer ¶ added in v0.12.0
RenderGroupLayer renders single map layer in a certain group.
func (*Renderer) RenderGroupObjectGroup ¶ added in v0.12.0
RenderGroupObjectGroup renders single object group in a certain group.
func (*Renderer) RenderLayer ¶
RenderLayer renders single map layer.
func (*Renderer) RenderObjectGroup ¶ added in v0.12.0
RenderObjectGroup renders a single object group
func (*Renderer) RenderVisibleGroups ¶ added in v0.12.0
RenderVisibleGroups renders all visible groups
func (*Renderer) RenderVisibleLayers ¶
RenderVisibleLayers renders all visible map layers.
func (*Renderer) RenderVisibleLayersAndObjectGroups ¶ added in v0.12.0
RenderVisibleLayersAndObjectGroups render all layers and object groups, layer first, objectGroup second so the order may be incorrect, you may put them into different groups, then call RenderVisibleGroups
func (*Renderer) RenderVisibleObjectGroups ¶ added in v0.12.0
RenderVisibleObjectGroups renders all visible object groups
func (*Renderer) SaveAsJpeg ¶
SaveAsJpeg writes rendered layers as JPEG image to provided writer.
type RendererEngine ¶
type RendererEngine interface { Init(m *tiled.Map) GetFinalImageSize() image.Rectangle RotateTileImage(tile *tiled.LayerTile, img image.Image) image.Image GetTilePosition(x, y int) image.Rectangle }
RendererEngine is the interface implemented by objects that provide rendering engine for Tiled maps.