返回排行榜

elringus/sprite-dicing

Rustdicing.elringus.com

Cross-engine tool for lossless compression of sprites with identical regions

game-developmentunityspritesclirusttoolgodotatlas
Star 增长趋势
Star
1.5k
Forks
154
周增长
Issues
1
5001k1.5k
2018年7月2021年3月2023年11月2026年7月
制品库crates.iocargo add sprite-dicing
README

SpriteDicing


crates.io CodeFactor CodeCov


Reuse repeating texture regions

Use SpriteDicing to split a set of sprite textures into units, discard identical ones, bake unique units into atlas textures to then seamlessly reconstruct the original sprites at runtime, without actually keeping original textures in the build.

The solution significantly reduces build size when multiple textures with identical areas are used. Consider a visual novel type of game, where multiple textures per character are used, each portraying different emotion; most of the texture space is occupied with identical data, while only a small area varies:

dicing illustration

These original five textures have total size of 17.5MB. After dicing, the resulting atlas texture will contain only the unique areas of the original textures and consume just 2.4MB, effectively compressing the textures by 86.3%.

🎬 Get Started

https://dicing.elringus.com/guide/getting-started


Sprite Dicing is used in Naninovel: Visual Novel, Dialogue & Cutscene Storytelling Engine. Check it out!

naninovel banner

相关仓库
godotengine/godot

Godot Engine – Multi-platform 2D and 3D game engine

C++MIT Licensegame-enginegodot
godotengine.org
114.5k26.1k
ocornut/imgui

Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

C++MIT Licenseguigamedev
74.9k11.9k
bevyengine/bevy

A refreshingly simple data-driven game engine built in Rust

Rustcrates.ioApache License 2.0bevygamedev
bevy.org
47.3k4.7k
phaserjs/phaser

Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering.

JavaScriptnpmMIT Licensephaserphaserjs
phaser.io
40k7.1k
raysan5/raylib

A simple and easy-to-use library to enjoy videogames programming

Czlib Licenseraylibc
raylib.com
34k3.2k
emilk/egui

egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native

Rustcrates.ioApache License 2.0guirust
egui.rs
29.8k2.1k
BabylonJS/Babylon.js

Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.

TypeScriptnpmApache License 2.0webglwebgl2
babylonjs.com
25.8k3.7k
libgdx/libgdx

Desktop/Android/HTML5/iOS Java game development framework

JavaMavenApache License 2.0libgdxjava
libgdx.com
25.2k6.5k
4ian/GDevelop

🎮 Open-source, cross-platform 2D/3D/multiplayer game engine designed for everyone.

JavaScriptnpmOthergamejavascript
gdevelop.io
25k1.5k
leereilly/games

Archived — A list of games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine.

game-enginehtml5-games
24.9k3.5k
clockworklabs/SpacetimeDB

Development at the speed of light

Rustcrates.ioOtherdatabasedataoriented
spacetimedb.com
24.8k1k
Donchitos/Claude-Code-Game-Studios

Turn Claude Code into a full game dev studio — 49 AI agents, 72 workflow skills, and a complete coordination system mirroring real studio hierarchy.

ShellMIT Licenseai-agentsai-assisted-development
23.3k3.3k