oliviersohn / hamazed Goto Github PK
View Code? Open in Web Editor NEWMonorepo for a multi-player game engine, and game examples
Monorepo for a multi-player game engine, and game examples
On Ubuntu (18.04 at least), this bug in GLFW, makes the game occasionally freeze until the player generates an event in the window (a key-press, a mouse movement).
As a workaround, maybe posting an empty event with a small (o(ms) or o(us)) time delay will ensure that the freeze is not noticeable for the user.
Note that this bug doesn't happen on OSX.
When compiling on OSX with optimizations (stack clean && stack build
with resolver lts-9.12
(ghc 8.0.2)), the program loops infinitely (400% CPU, and execution is blocked) when an animation is triggered.
The bug is visible at this commit : 9f25223 (to reproduce, shoot at a number in the game)
This branch reproduces the problem with a minimal amount of code:
https://github.com/OlivierSohn/hamazed/tree/repro-ghc-14521-A
stack version:
$ stack --version
Version 1.3.2, Git revision 3f675146590da4f3edf768b89355f798229da2a5 (4395 commits) x86_64 hpack-0.15.0
A ticket was opened concerning this potential ghc bug : https://ghc.haskell.org/trac/ghc/ticket/14521
The algorithm determining "the maximal font size such that all characters fit within a given block" (see createFont
) was developped on OSX, with a particular graphic card driver.
On Linux, and using another graphic card driver, some characters are bigger than expected : their outer borders "leak" in the incremental rendering process.
I see 2 possible sources for this behaviour:
FTGL.getFontBBox
on different platforms (see testFont
)Note that if there are some roundings that we have no control over, and that we cannot know in advance, we could either use a bigger margin in createFont
or let users adjust the margin so that "it looks good on their screen".
Could you please add some screenshots of the game to the README?
Cool project, though!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.