therocode / featherkit Goto Github PK
View Code? Open in Web Editor NEWFeatherkit game framework
License: zlib License
Featherkit game framework
License: zlib License
13:50:22 < clb> I recommend in that case to separate the audio update function to a C interface, which you use EM_ASM() with setTimeout (don't use setInterval!) to call it periodically
13:50:54 < clb> setTimeout()s will happen even if another tab is active or the browser was minimized
Still uses tuples/std::tie here:
http://featherkit.therocode.net/docs/classfea_1_1MessageReceiver.html
So that it's possible to give Drawable2Ds different parallax values on the different axes.
This is clearer and easier to work with. It also allows for extending sprite sheets etc, without having to change anything.
The documentation doesn't really explain much:
void fea::Drawable2D::setParallax ( float parallax)
Set the parallax.
What is the "parallax" exactly? :)
The rest of the class's documentation feels a bit bland too.
Might update this myself.
Namely the letters y, g, p, and q
For:
textSurface.setOrigin(textSurface.getSize()/2.0f);
textSurface.scale({0.9f, 0.9f});
This code does not scale around the set origin, but rather around (0.0f, 0.0f) on the text surface.
textSurface.rotate() works fine, rotates around the set origin.
This has not been tested on other Drawable2Ds.
maybe using lodepng
In fea::Viewport
This is what cppcheck found when ran with --enable=performance,portability,style,warning --inconclusive --std=c++11
on the incoming branch, excluding errors from generated C source files:
[src/audio/audiofilestream.cpp:11]: (style) Variable 'desiredSampleAmount' is assigned a value that is never used.
[src/audio/audioplayer.cpp:185]: (style, inconclusive) Consecutive return, break, continue, goto or throw statements are unnecessary.
[src/rendering/textsurface.cpp:15]: (style) Variable 'error' is assigned a value that is never used.
[src/rendering/textsurface.cpp:318]: (style) Variable 'currentWordStart' is assigned a value that is never used.
[src/ui/inputhandler.cpp:99]: (performance) Possible inefficient checking for 'newEvents' emptiness.
http://featherkit.therocode.net/docs/structfea_1_1VertexAttribute.html
uint32_t mFloatAmount
Amount of floats in the data array.
Incorrect description - the mfloatAmount variable represents the... "bunching" of the floats, like, how many are read at a time or something like that. e.g. 2 for 2D coordinates and 4 for colour information.
Hi, just started looking into featherkit - looks really nice.
I was just wondering if there is support for vertical text (text running down vertically), and perhaps other text features
ex. designating a max text width/height, so that if passed, the text starts showing on the next line, stopping if it passes a designated maximum height.
ex. changing font colour / font size within the text (so that despite being the same string, parts of the string have different sizes, colours)
And this is slightly off topic, but from what I hear, sfml has a few opengl context management limitations compared to sdl - does featherkit implement it's own context management method, or does it succeed sfml's?
Featherkit would benefit greatly from a networking module. Instead of planning on it - it should implemented with # 1 priority.
like the example here http://featherkit.therocode.net/docs/classfea_1_1MessageReceiver.html still uses data instead of mData
Right now Feather Kit has a few cases where std::hash is used in a way not intended by the C++ standard. The effect of this is that in very very very very rare cases (or less rare depending on the stdlib implementation) there will be collisions and things will break.
Must add symbol exporting to the classes that are exposed in the public API for visual studio to generate .dll files. This can also be useful to combine with the visibility flag of gcc/clang. With this solved, Feather Kit can officially support VS2013
Hello there,
I tried to compile featherkit on my machine: Windows 7 x64 with MinGW 4.8.1 x86.
I had to change a few things (I won't speak about CMake headaches or screw GCC headers) to do so. Here there are:
include/featherkit/freetype-gl/platform.h
src/freetype-gl/platform.c
round does exists in GCC, but not in Visual Studio prior to VS2013. double round(double)
and float roundf(float)
-> removed
src/rendering/projection.cpp
src/rendering/renderer2d.cpp
src/rendering/shader.cpp
src/util/entity/glmtypeadder.cpp
uses of degree is deprecated in the latest version of GLM, so I had to add #define GLM_FORCE_RADIANS
before all GLM includes.
also in src/rendering/projection.cpp
far and near collide with some other things, so I had to change their names
error: expected primary-expression before ')' token
GLfloat tz = -(far + near) / (far - near);
after investigated a little, I found that it's a macro with:
#ifdef near
#error "macro"
#endif
but didn't found its origin. EDIT: http://stackoverflow.com/a/8731967/1938200
These are only my 2 cents, you do what you want. ;)
<featherkit/stuff.hpp> -> <fea/stuff.hpp>
libfeatherkit-stuff.so -> libfea-stuff.so
fea::Black
fea::White
...
This can be done by using an unordered_map to keep track of tiles indices
It doesn't seem possible in at least one context to set the library variables to a custom one that is not found automatically without it being overwritten when generating. investigate.
use vectors instead of single parameters
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.