Gloam.Console.Render
0.7.0
dotnet add package Gloam.Console.Render --version 0.7.0
NuGet\Install-Package Gloam.Console.Render -Version 0.7.0
<PackageReference Include="Gloam.Console.Render" Version="0.7.0" />
<PackageVersion Include="Gloam.Console.Render" Version="0.7.0" />
<PackageReference Include="Gloam.Console.Render" />
paket add Gloam.Console.Render --version 0.7.0
#r "nuget: Gloam.Console.Render, 0.7.0"
#:package Gloam.Console.Render@0.7.0
#addin nuget:?package=Gloam.Console.Render&version=0.7.0
#tool nuget:?package=Gloam.Console.Render&version=0.7.0
Gloam.Console.Render
High-performance console rendering backend for Gloam engine
Overview
Gloam.Console.Render provides a full-featured console rendering implementation with double-buffered output, ANSI color support, and optimized drawing operations for roguelike games.
Features
- Console Rendering: Full
IRenderer
implementation for console output - Double Buffering: Flicker-free rendering with
ConsoleSurface
- ANSI Color Support: Rich color output with RGB to ConsoleColor mapping
- Layer Support: Integration with layer rendering system
- Input Handling:
ConsoleInputDevice
with keyboard input detection
Quick Start
using Gloam.Console.Render.Rendering;
using Gloam.Runtime;
// Setup console rendering
var renderer = new ConsoleRenderer();
var host = new GloamHost(hostConfig);
host.SetRenderer(renderer);
// Use with layers
var layerManager = new LayerRenderingManager();
layerManager.RegisterLayer(new GameWorldLayer(), priority: 0);
layerManager.RegisterLayer(new HudLayer(), priority: 100);
Rendering Features
- Console Surface:
ConsoleSurface
for efficient drawing operations - Color Management: Automatic RGB to ConsoleColor conversion
- Transparency Support: Alpha channel handling (alpha=0 treated as transparent)
- Background Bleed Prevention: Smart background color management
Key Components
- Renderer:
ConsoleRenderer
- Main rendering implementation - Surface:
ConsoleSurface
- Double-buffered drawing surface - Input:
ConsoleInputDevice
- Keyboard input with edge detection - Layer Integration: Full support for layer-based rendering
Performance Features
- Double Buffering: Only redraw changed console cells
- Optimized Drawing: Minimal console write operations
- Memory Efficient: Buffer pooling for reduced allocations
- High Frame Rates: Capable of 60+ FPS rendering
Usage with Layers
public class GameLayer : BaseLayerRenderer
{
public override async Task RenderAsync(IRenderer renderer, RenderLayerContext context)
{
// Draw game world
renderer.DrawGlyph(10, 5, '@', Colors.Gold);
renderer.DrawText(0, 0, "Health: 100", Colors.Red);
}
}
Documentation
License
MIT License - see LICENSE for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- dotnet-curses (>= 2.0.0)
- Gloam.Core (>= 0.7.0)
- Gloam.Core.Ui (>= 0.7.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Gloam.Console.Render:
Package | Downloads |
---|---|
Gloam.Runtime
High-performance dependency injection host for roguelike games with optimized game loop, scene management, and layer rendering. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.7.0 | 57 | 8/31/2025 |
Initial release with buffer pooling and ANSI rendering optimizations.