Sam Hocevar
c9f75a6c3f
input: start splitting keyboard, mouse etc. objects
pirms 6 gadiem
Sam Hocevar
b0a8596001
RIP lol::Controller and lol::InputProfile ⚰️ LOL
pirms 6 gadiem
Sam Hocevar
8c81b07465
input: start replacing controller functions with standard input functions.
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.
pirms 6 gadiem
Sam Hocevar
fe66f12e53
input: start implementing controller features directly in the input device.
pirms 6 gadiem
Sam Hocevar
a713297cfb
input: minor cleanup.
pirms 6 gadiem
Sam Hocevar
1ab9866c31
input: drivers no longer need to create the default devices.
pirms 6 gadiem
Sam Hocevar
6ad9c0d8bf
Various compilation warning and error fixes.
pirms 6 gadiem
Sam Hocevar
fc43bd7e5b
input: remove useless code.
pirms 6 gadiem
Sam Hocevar
1f9be92a66
Use smart pointers in a lot of the rendering code.
pirms 6 gadiem
Sam Hocevar
beeded3d85
render: simplify Renderer code
The scene now owns its renderer, so there is no need to keep a list
of existing renderers and to call Renderer::Get().
pirms 6 gadiem
Sam Hocevar
6dd7a0cb39
Another lowercase switching frenzy, because why not.
pirms 6 gadiem
Sam Hocevar
968f7c92bb
Get rid of String::format in favour of a std::string version.
pirms 7 gadiem
touky
527e27c880
- ImGUI is now operational again
- Most recent version is in with index buffer support
pirms 8 gadiem
Sam Hocevar
0ef4e3c203
Clean up a lot of shader crap
pirms 8 gadiem
Sam Hocevar
d01f29d483
tutorial: fix input tutorial speed.
pirms 8 gadiem
Sam Hocevar
6a35a64dd5
sys: make a few functions lowercase.
pirms 8 gadiem
Sam Hocevar
078751a820
math: all API functions dealing with angles now use radians.
We already have the convenient degrees() and radians() functions to convert
between angle formats. This commit involves a lot of refactoring here and
there and I may have missed some places where conversions were needed. But
hopefully there aren’t may such places.
pirms 9 gadiem
Sam Hocevar
861568b146
misc: some cleanup in files, including UTF-8 BOM.
pirms 9 gadiem
Sam Hocevar
441a20af99
misc: fix copyright information here and there.
pirms 9 gadiem
Sam Hocevar
03c17fcae4
base: clean up and refactor containers.
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.
pirms 9 gadiem
Benjamin ‘Touky’ Huet
2170b89b11
MultiScene: Phase 4: Added SceneDisplay class to have multiple windows + implementation with SDL. Not with the others.
pirms 9 gadiem
Benjamin ‘Touky’ Huet
3e9e6178ae
Small refactor controller tweak
pirms 10 gadiem
Benjamin ‘Touky’ Huet
9477f1f722
Moved GetKey/Axis status tests to protected, and made them accessible through controller directly to implement layer system in the future.
pirms 10 gadiem
Benjamin ‘Touky’ Huet
0e09074d33
Revamped Game/Draw groups to split stuff and help spreading tick
pirms 10 gadiem
Benjamin ‘Touky’ Huet
4d3d7de4f2
Name refactors for doc stuff
pirms 10 gadiem
Benjamin ‘Touky’ Huet
6c3dd67bc0
Controller refactor to enforce InputProfile usage (because why not)
DefaultThreadManager build FIX
pirms 10 gadiem
Benjamin ‘Touky’ Huet
f67da65818
First pass of EasyMesh split & refactor
Big FAT pass on windows-warning. It is better now.
pirms 10 gadiem
Sam Hocevar
d72cb24bc0
build: move sample and tutorial files around.
pirms 10 gadiem
Sam Hocevar
cd988786b9
build: reorganise includes so that we can use precompiled headers later.
pirms 10 gadiem
Sam Hocevar
ad9a388e80
misc: remove 100% of the "using namespace std;" madness.
pirms 10 gadiem
Sam Hocevar
12aaff89e3
base: huge refactor in vector.h; GCC compilation times down by 50%.
pirms 10 gadiem
Sam Hocevar
fe665f85b4
base: strip core.h from its contents and put it in public/private headers.
pirms 10 gadiem
Sam Hocevar
398ee1b4d5
base: use lol::array in most places.
pirms 10 gadiem
Sam Hocevar
da6b3d5cd0
scenegraph: Entity::TickDraw() now provides a reference to the current
scene so that g_scene can be deprecated later.
pirms 10 gadiem
Benlitz
c1da4619f7
input: renamed xinput keys to something more human readable (such as A or DPadLeft) and inverted mouse Y axis to match joystick axis (negatives being up)
core: calling InitGame() at the first tick of an entity. InitDraw is still uncalled yet
fixed mrpigeon and orbital accordingly
pirms 11 gadiem
Benlitz
eab5c46b1e
input: added a name the controllers, and a static Get() function to easily retrieve a registered controller
pirms 11 gadiem
Benlitz
6b6d0137bb
fixed more projects regarding the shader attribute change
pirms 11 gadiem
Benlitz
8a657ea287
input: Removed previous input system
pirms 11 gadiem
Sam Hocevar
acb6927224
tutorial: get rid of global variables in the input tutorial.
pirms 11 gadiem
Sam Hocevar
3fdc7b3eef
tutorial: tweak the input tutorial code.
pirms 11 gadiem
Sam Hocevar
399a172425
build: fix a few compilation issues with input v2.
pirms 11 gadiem
Benlitz
f7da613a70
fixed a minor typo in the input tutorial
pirms 11 gadiem
Lolbot
c47d0f8c62
fixed 10 files out of 2754:
- removed 386 CR characters
- removed 4 trailing whitespaces
- replaced 189 tabs with spaces
pirms 11 gadiem
Benlitz
a7aac24c46
Completely reworked input system. Unified device interface, button, axis and cursor support, controller and binding system, mouse capture. Tutorial 07_input provided. Require to compile lolcore with LOL_INPUT_V2 to be activated (also needed app-side before including core.h)
pirms 11 gadiem
Sam Hocevar
6a8118cb18
build: put tutorials and lol.js in a new "demos" directory.
pirms 11 gadiem
Sam Hocevar
274a732e3c
gpu: move SetClearColor and SetClearDepth to the Renderer and RenderContext
classes instead of Video.
pirms 11 gadiem
Sam Hocevar
e9b4985dbd
gpu: add MeshPrimitive::Lines enum and modify the cube tutorial
to show how it can be used.
pirms 12 gadiem
Sam Hocevar
3adf42b00c
build: hide LolFx external declarations behind macros.
pirms 12 gadiem
Sam Hocevar
bbf72e1a64
core: pass the project directory to the binary build and get rid of
that 2-year old "temporary Win32 hack".
pirms 12 gadiem
Sam Hocevar
6a6e46cf0d
system: try to autodetect the data directory from the executable path;
currently works for images (SDL and GDI+ loaders) and sound samples.
pirms 12 gadiem