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
- 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
- func (r *Renderer) UseTilesetCache(tilesetCache *TilesetCache)
- type RendererEngine
- type TilesetCache
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() (int, int)
GetFinalImageSize returns final image size based on map data.
func (*OrthogonalRendererEngine) GetTileGeometry ¶ added in v1.2.0
GetTileGeometry returns the geometry object used to render the tile at the correct position and orientation
func (*OrthogonalRendererEngine) Init ¶
func (e *OrthogonalRendererEngine) Init(m *tiled.Map)
Init initializes rendering engine with provided map options.
type Renderer ¶
type Renderer struct {
Result *ebiten.Image // 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 ¶
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 ¶
RenderGroup renders single group.
func (*Renderer) RenderGroupLayer ¶
RenderGroupLayer renders single map layer in a certain group.
func (*Renderer) RenderGroupObjectGroup ¶
RenderGroupObjectGroup renders single object group in a certain group.
func (*Renderer) RenderLayer ¶
RenderLayer renders single map layer.
func (*Renderer) RenderObjectGroup ¶
RenderObjectGroup renders a single object group
func (*Renderer) RenderVisibleGroups ¶
RenderVisibleGroups renders all visible groups
func (*Renderer) RenderVisibleLayers ¶
RenderVisibleLayers renders all visible map layers.
func (*Renderer) RenderVisibleLayersAndObjectGroups ¶
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 ¶
RenderVisibleObjectGroups renders all visible object groups
func (*Renderer) SaveAsJpeg ¶
SaveAsJpeg writes rendered layers as JPEG image to provided writer.
func (*Renderer) UseTilesetCache ¶ added in v1.2.0
func (r *Renderer) UseTilesetCache(tilesetCache *TilesetCache)
UseTilesetCache is used to set a shared TilesetCache
type RendererEngine ¶
type RendererEngine interface {
Init(m *tiled.Map)
GetFinalImageSize() (int, int)
GetTileGeometry(x, y int, tile *tiled.LayerTile) ebiten.GeoM
}
RendererEngine helps compute the tile geometries
type TilesetCache ¶ added in v1.2.0
type TilesetCache struct {
// contains filtered or unexported fields
}
TilesetCache is used to share tileset images between multiple renderers
func NewTilesetCache ¶ added in v1.2.0
func NewTilesetCache(fs fs.FS) *TilesetCache
NewTilesetCache creates a TilesetCache with an optional filesystem (pointing to an embedded tiled project)
func (*TilesetCache) GetTileImage ¶ added in v1.2.0
GetTileImage finds a SubImage from cache