EmojiEngine
EmojiEngine (also known as
Features
- Varying sizes
- Many different emoji
- Retina display ready
- Mouse control
- Keyboard controls
- Handles screen resizing
Performance Tricks
- Uses GL point sprites to avoid sending too much geometry
- Uses a mip-mapped sprite sheet for fast rendering of emoji at different scales.
- Renders the emoji front to back with depth testing to completely avoid overdraw.
- Binary transparency by dropping fragments, no need for alpha blending.
- Processes state updates entirely using linear iteration over JS typed arrays, so that even updating everything every frame in JS is fast.
License
The code I wrote is released under the MIT license. The emoji data included is also under the MIT license from here. EmojiEngine also uses twgl.