This lets us get rid of m_autorelease and m_destroy and we’ll be able
to implement init_game/init_draw later, for stuff that must happen
on the render thread.
Controller::WasKeyReleasedThisFrame() is now keyboard->key_released() so
there is usually no need for a controller. They will completely disappear
when joystick axis binding has been ported to InputDevice.
I was arguing that Enter and other keys should be part of the text
input API, but it’s hard to decide what Tab actually does. I prefer
to give more freedom to the client application.
The only reason we had to keep this was for emscripten builds. We can
now use SDL v2 using “emconfigure ./configure CFLAGS="-s USE_SDL=2” and
a few additional flags.
SDL_Mixer v2 is not available in emscripten packages but either it will
be added at some time, or I will get rid of it altogether. An alternate
solution could be this code snippet I found:
cd SDL2_mixer
emconfigure ./configure --prefix=$(pwd)/dist --enable-music-ogg --disable-music-ogg-shared CFLAGS="-s USE_VORBIS=1"
emmake make install
Moved ImageLoader to ResourceLoader, so that loading is extensible.
i.e. here: Zed image loader now loads up a tileset instead of being a
hacked image loader.
Goal is to support more funky stuff (wad, pak .....)
Using “Array” instead of “array” is now fully deprecated, and I replaced
the Log::Debug() etc. functions with msg::debug() etc. because log:: was
unavailable due to being a maths function.
Added up-to-date copyright notice and BOM to modified files, just in case.
The containers no longer force the user to use the ptrdiff_t type for
size information. For convenience, size() now always returns an int,
and the size_s() method offers a way to handle arrays with more than
2 billion elements. Internally, we still use ptrdiff_t, though.
Since so much code had to be changed, I took the opportunity to get
rid of capitalised accessors for classes that are lowercase.
SDL2: Mouse is back ! With correct focus support
SDL2: Added typing support with keyboard
ShaderBuilder: Refactored and simplified Shader block creation
Several warning removal
Fixed Image::Copy