msdfgen
specs
msdfgen | specs | |
---|---|---|
27 | 13 | |
3,713 | 2,406 | |
- | 0.7% | |
7.0 | 6.4 | |
9 days ago | 8 days ago | |
C++ | Rust | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
msdfgen
-
Shader Park Is Kinda Neat
This very well explained here https://github.com/Chlumsky/msdfgen and with more details in link d pdf.
Basically, signed distance fields allow high resolution renders from low resolution rasters which represent character shape.
-
SDF font rendering & cuttoff parameter value
No idea how to help you but I will just drop this since it improved the quality for me by 1000 https://github.com/Chlumsky/msdfgen
-
Best approach to render a lot of text.
And that's the complicated state of the art version for 3D perspective. Other versions are even simpler.
-
Leveraging Rust and the GPU to render user interfaces at 120 FPS
This is known as a “multi-channel signed distance field”, or “msdf”.
https://github.com/Chlumsky/msdfgen
-
Font question: What software do you use to create "Signed Distance Field" from OTF or TTF?
I use this, free and has been very good for me https://github.com/Chlumsky/msdfgen
- MelonJS – a fresh and lightweight JavaScript game engine
- What is the maximum number of texture2D's I can have in a single texture array uniform binding?
-
Why are SDF editors not more popular for creating assets?
Distance fields are not slow to render. They don't need a powerful gpu. Valve was already using SDF for textures in 2007 and released a paper about it. MSDF (multi channel signed distance fields) is a popular text libraries for game engine devs that uses distance fields. Distance fields are fast to render in 2D and even 3D. The problem is with everything around it. Lighting, shadows, shading will all require specialized tooling and likely a specialized engine for very little benefit (imo).
-
Vector Graphics on GPU
Signed distance fields only work well for relatively simple characters.
If you have highly detailed characters like Chinese or emojis, you need larger resolution to faithfully represent every detail. One way to get around excessive memory requirements is to store the characters in their default vector forms and only render the required characters on demand, but then you might as well render them at the required pixel resolution and do away with the additional complexity of SDF rendering.
SDFs are still useful though if you have to render text at many different resolutions, for example on signs in computer games, as seen in the original paper https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007...
In the past, SDFs also had problems with sharp corners, which has been solved in https://github.com/Chlumsky/msdfgen
-
Adventures in Text Rendering: Kerning and Glyph Atlases
MSDFGen looks pretty sweet. https://github.com/Chlumsky/msdfgen
specs
-
Why ECS pattern is popular in Rust?
The question arises from seeing a plethora of projects using ECS: hecs , Bevy , specs, legion
-
Want to learn how to make games with Rust and the Bevy game engine? Now is a great time to jump in with the recently released Bevy version 0.10. I created a Bevy 0.10 beginner tutorial video series for those looking to learn and join our game dev community!
Instead, I'm using now the specs Library. It's a pure ECS library and much less powerful, without any visualization capabilities, but its works for me :)
-
Is implementing an ECS in rust a bad idea for a beginner project?
writing an ECS is defined a challenging project, no matter the language or if you're a beginner. although it is entirely possible to write one in Rust, check out specs and bevy_ecs for examples.
-
Ecs fundamentally at odds with borrow checker.
specs
- Goggles - A specs-derived DIY library for doing ECS
-
Veloren is releasing 0.13!
The official 3d rendering client uses a custom engine called Voxygen. They use Specs for logic.
-
How are rust devs doing?
Rust has a delightful ECS library, specs, that I absolutely love. It has safe multi-threaded execution built right in, which is fantastic for the pretty parallelizable work I was doing. Concurrency in C++ is nasty business on the best of days, and I've run into so many nasty bugs with the custom system I've had to build out to fit the web's weird threading model.
-
Programming a Rogue-Like with Rust
Man, this Specs [0] library is so strange to me, coming from a Unity background. Is there some sort of comparison as to why one way is better than the other?
[0] https://specs.amethyst.rs/
-
Bellclone: a simple 2D game about jumping
Hi everyone - I just picked up one of my long-unfinished side project built with Rust and would like to show it to you here. It's a clone of the famous(?) Winterbells game. It's written entirely in Rust and uses OpenGL and an entity-component-system architecture ([the `specs` crate](https://crates.io/crates/specs)) (still learning), no game engine.
-
There are a *lot* of actor framework projects on Cargo.
Wait did the person at your company write specs or something else because they weren't pleased with it? I don't know much about amethyst and vaguely know about entity component systems but I watched a talk on someone making a game with amethyst and was pretty impressed -- it looked thoroughly approachable and I do not doubt the performance is there (since the whole reason you do ECS is performance).
What are some alternatives?
msdf-atlas-gen - MSDF font atlas generator
bevy - A refreshingly simple data-driven game engine built in Rust
8SSEDT - Tutorial about 8-points Signed Sequential Euclidean Distance Transform
Amethyst - Data-oriented and data-driven game engine written in Rust
vello - An experimental GPU compute-centric 2D renderer.
ggez - Rust library to create a Good Game Easily
troika - A JavaScript framework for interactive 3D and 2D visualizations
Crayon - A small, portable and extensible game framework written in Rust.
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
piston - A modular game engine written in Rust
msdfgl - OpenGL implementation of the MSDF algorithm
RG3D - 3D and 2D game engine written in Rust [Moved to: https://github.com/FyroxEngine/Fyrox]