Clownacy
1016411fa4
Cleanup
2020-04-06 13:37:53 +01:00
Gabriel Ravier
1d9048c8a6
Merge branch 'portable' into improvePerformance2
...
# Conflicts:
# src/Backends/Rendering/Software.cpp
2020-04-05 01:16:09 +02:00
Clownacy
1ae63bea96
Move window ownership to the window backend
2020-04-04 20:51:07 +01:00
Clownacy
cdd69496c4
Fixes
2020-04-04 20:34:51 +01:00
Clownacy
135035bb1a
Change 'PlatformBackend' namespace to 'Backend'
2020-04-04 20:31:27 +01:00
Clownacy
4d322be866
Change render backend namespace to RenderBackend_
2020-04-04 20:24:34 +01:00
Clownacy
87e8a75df4
Rename GLFW3.h/SDL2.h
2020-04-04 19:18:46 +01:00
Clownacy
264d555073
Forgot to CTRL-F goddammit
2020-04-03 18:51:43 +01:00
Clownacy
1543521625
Fix more errors x_x
2020-04-03 18:36:48 +01:00
Clownacy
f548044464
Cleanup
2020-04-03 18:05:41 +01:00
Clownacy
40464a9fc0
Move-around Backend files
...
Hoping to introduce some degree of grouping
2020-04-03 14:42:11 +01:00
Clownacy
ee7cf6799b
Yet another warning
2020-04-03 02:12:06 +01:00
Clownacy
4f2f6ad4f4
More warnings
2020-04-03 02:10:28 +01:00
Clownacy
8266db3372
Shut-up another warning
2020-04-03 02:08:19 +01:00
Clownacy
5b996b3459
Give glad a CMake file
...
Today I learned that CMake will error if the project shares a
dependency with a nested CMake file (which could be from an
entirely-separate project that you have no control over).
I'm starting to really hate CMake.
2020-04-03 01:34:47 +01:00
Gabriel Ravier
f68984bd58
Merge branch 'portable' into improvePerformance2
...
# Conflicts:
# src/Backends/Audio/SDL2.cpp
2020-04-03 00:36:44 +02:00
Clownacy
96f46f3387
Fix compilation error
2020-04-02 00:00:12 +01:00
Clownacy
49f7887930
More cleanup
2020-04-01 16:27:55 +01:00
Clownacy
ff70664604
Cleanup and fixes
2020-04-01 16:11:34 +01:00
Clownacy
4d8be3bc36
More refactoring
...
Get fullscreen mostly working in GLFW3
2020-04-01 15:21:40 +01:00
Clownacy
c4aa8e28bb
More refactoring
2020-04-01 14:57:07 +01:00
Clownacy
5dbca99e19
Extremely horrible terrible nightmare refactoring
...
Working on ridding CSE2 of its hard SDL2 dependency.
For now, I have a rudimentary GLFW3 backend.
2020-03-31 21:56:10 +01:00
Clownacy
142bca6578
Split SDL2 code from Draw.cpp
2020-03-31 16:11:31 +01:00
Clownacy
d0b20316de
Don't do -Iexternal
...
It pollutes the #include space.
2020-03-31 14:26:24 +01:00
Clownacy
61e708751d
Apply missing OpenGL constants
2020-03-31 12:53:58 +01:00
Gabriel Ravier
fb353fbc7e
Backends/Rendering/SDLTexture: Solve -Wnarrowing warning
...
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-03-18 11:54:46 +01:00
Gabriel Ravier
5d61641415
Added ATTRIBUTE_HOT to Backend_ColourFill
...
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-02-13 19:55:39 +01:00
Gabriel Ravier
f43bd4f876
Removed bad omp (it doesn't actually improve anything, i did my measurements wrong)
2020-02-13 19:55:39 +01:00
Gabriel Ravier
2adfef0035
Got Backend_Blit to go from 17% CPU usage to 11% :
...
- used __builtin_expect to get a 8.5% performance improvement
- used #pragma omp for to get a 30% performance improvement
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-02-13 19:55:39 +01:00
Gabriel Ravier
e8ec6a8ffb
Optimize Backend_Blit a bit
2020-02-13 19:55:39 +01:00
Clownacy
a767c16d83
Un-un-const a few things
2020-02-09 18:55:41 +00:00
Clownacy
d4004fe99a
Store glyph pixels as chars, not floats
...
Smaller memory footprint, and probably-insignificant performance
impact.
2020-02-09 13:56:45 +00:00
Clownacy
bb11cd567d
Software renderer cleanup
2020-02-09 13:44:02 +00:00
Clownacy
60d3cc2ed6
Update cute_spritebatch.h
2020-02-09 12:40:35 +00:00
Clownacy
8edca4fb2e
Style tweak
2020-02-09 12:35:38 +00:00
Clownacy
59a8c2617f
Tweak some variable naming
...
The enhanced branch calls them the 'internal *screen* width/height',
which I think is more appropriate.
2020-02-05 15:52:43 +00:00
Clownacy
d9e7ebac38
Correct a typo
2020-02-05 15:47:26 +00:00
Clownacy
2af6a043ef
Clean-up the OpenGL renderers a little
2020-02-04 16:35:42 +00:00
Clownacy
1140ab0916
Clean-up renderer backend initialisation
2020-02-04 15:51:19 +00:00
Clownacy
ba6d711d3a
Tick cute_spritebatch once per frame
...
...As opposed to once per draw call.
This change was made because multiple draw calls can be made per
frame, or a only a handful of draw calls may be made per minute.
Since draw calls are an inconsistent metric, I just switched to
frames instead.
2020-02-04 14:57:06 +00:00
Clownacy
2e5e1994c2
Enable debug console prints in non-debug builds
2020-02-03 16:44:52 +00:00
Clownacy
53c0e8470f
Add an optimisation to the OpenGL renderers
...
Since we track the currently-bound "source texture", we don't need
to poll the OpenGL driver for the same info.
2020-02-03 15:53:59 +00:00
Clownacy
dfacd62662
Fix text-flickering in the OpenGL renderers
...
This would occur in CSE2E's options menu.
It was caused by cute_spritebatch destroying a texture atlas that
was being used by the current unflushed vertex buffer. To solve
this, we now track what textures are being used by current buffer,
and flush the buffer when the texture are about to be
modified/deleted.
As you can guess, this issue doesn't affect the SDLTexture backend,
since its batching system is half-decent.
2020-02-03 15:44:09 +00:00
Clownacy
b894543f3b
Shut up a C++11 error from the enhanced branch
...
Nice one, C++. Adding yet another C-incompatibility?
2020-02-03 14:43:02 +00:00
Clownacy
4190493fd8
More documentation
2020-02-02 00:34:03 +00:00
Clownacy
514d9f8739
Document the OpenGL renderer a bit more
...
This makes it easier to find things
2020-02-02 00:21:28 +00:00
Clownacy
d84f64a5a9
Tweak cute_spritebatch settings
...
1024x1024 seems like overkill
2020-02-02 00:10:01 +00:00
Clownacy
eb6ab89b85
Fixes and improvements
...
Made texture-atlasing occur immediately, notably.
2020-02-02 00:01:45 +00:00
Clownacy
1b2d4fdb4d
Fix the other rendering backends
...
Also finished ripping-out the sub-pixel support
2020-02-01 22:57:07 +00:00
Clownacy
eeed719c16
Get the SDLTexture renderer working again
2020-02-01 22:47:13 +00:00