Commit Graph

811 Commits

Author SHA1 Message Date
Jonas Kulla 23e712a730 Tilemap: Draw consecutive scanrows in one draw call
If consecutive scanrows in the scene list have no foreign
elements in between them, we batch them up and draw them
in one glDrawElements() call.

This should reduce the Tilemap induced draw calls on
average by at least 50 percent.
2013-10-13 22:00:38 +02:00
Jonas Kulla 99cfe9aefd Tilemap: Optimize scanrow z ordering 2013-10-13 12:58:56 +02:00
Jonas Kulla 0f4a9930de README: fix more inconsistencies 2013-10-12 15:59:52 +02:00
Jonas Kulla f520b5a32e Fix ruby include paths for config.h, on amd64 2013-10-12 12:51:43 +02:00
Jonas Kulla 95daa78ef7 Clarify points in readme 2013-10-11 22:28:54 +02:00
Jonas Kulla 69637c75af Replace Qt functions deprecated in 5.0 2013-10-11 10:32:56 +02:00
Jonas Kulla 8b96174457 Fix broken asset include path 2013-10-10 12:50:04 +02:00
Jonas Kulla 4af4f5bd6b Ensure attached autotiles aren't mega surfaces 2013-10-09 18:08:44 +02:00
Jonas Kulla 8b53681e11 Turn on 'fixedAspectRatio' by default
This is more consistent with RMXP's behavior.
2013-10-09 14:17:21 +02:00
Jonas Kulla 4b28314433 Update config table and default values 2013-10-09 14:11:59 +02:00
Jonas Kulla f8e8ece946 Forgot to add license header 2013-10-09 13:44:15 +02:00
Jonas Kulla cb6f73f7df Rename 'GlobalState' to 'SharedState' to avoid confusion with GLState
This was particularly nasty with the shorthand macros
'gState' and 'glState'. The former is now 'shState'.
2013-10-09 12:30:33 +02:00
Jonas Kulla 807bee5748 Print info about shader compilation to console 2013-10-09 12:26:42 +02:00
Jonas Kulla ba304feb54 Minor code move
Move animation based state data together and add comments
2013-10-09 11:52:39 +02:00
Jonas Kulla 6a4fd804a7 Clarify point about latest library version 2013-10-09 04:16:00 +02:00
Jonas Kulla 34d4103111 Always request OpenGL Core profile 2013-10-08 06:29:05 +02:00
Jonas Kulla 6fef49f42a Cosmetic fixes 2013-10-08 06:05:06 +02:00
Jonas Kulla a108843069 Add 'System.data_directory()' for save files etc.
Just a small wrapper around SDL2's GetPrefPath()
2013-10-08 06:04:21 +02:00
Jonas Kulla dd25323cdd Ifdef out more RGSS2 functionality 2013-10-06 10:28:03 +02:00
Jonas Kulla ce70b6dc95 Fix a heavy memory corruption in p()/print()
If you free locally allocated ruby objects
you're gonna have a BAAAD time
2013-10-06 10:19:31 +02:00
Jonas Kulla 49e7b66a53 Bitmap: s/tex/gl 2013-10-06 08:54:16 +02:00
Jonas Kulla 89238aebe9 s/rgss/RGSS 2013-10-06 07:11:03 +02:00
Jonas Kulla 26843f2e51 Implement FPS display (F2 to toggle ON/OFF) 2013-10-06 07:05:01 +02:00
Jonas Kulla 41675859dd Actually destroy duplicated PHYSFS_Io instance on close
Fixes crash after loading about a hundred maps
2013-10-06 05:11:22 +02:00
Jonas Kulla 958af38442 Optimize archive reading
This should be almost as fast as reading unencrypted
files from disk now. I also don't see any possible further
optimizations, so this is probably as fast as it gets.
2013-10-04 07:52:40 +02:00
Jonas Kulla a9fc44f79d Fix filesystem init for relative 'gamePath's 2013-10-03 22:11:25 +02:00
Jonas Kulla 4ddc487f17 Fix a critical bug with seeking in archives
Also, other small cleanups on the way.
2013-10-03 22:09:35 +02:00
Jonas Kulla d20b652155 No point in drawing spaces 2013-10-03 00:48:12 +02:00
Jonas Kulla ca5f52d93d Add '$ORIGIN/lib' rpath for now 2013-10-02 22:48:27 +02:00
Jonas Kulla d8dab9c429 Start ifdef'ing out RGSS2 functionality 2013-10-02 22:40:09 +02:00
Jonas Kulla 751b9c3ae5 Clip text surface to texture bounds on fast upload 2013-10-02 21:39:44 +02:00
Jonas Kulla 19c30e3ddd Fix shader code. Thanks Mesa!
On the other hand, the kind of shit fglrx
just lets through boggles the mind.
2013-10-02 15:00:17 +02:00
Jonas Kulla bb70c39811 Ensure SDL_image and SDL_ttf initialize correctly 2013-10-02 13:50:58 +02:00
Jonas Kulla 0f58852e2b Remove GL_ARB_imaging requirement
Mesa doesn't have it, and I'm not sure it really
serves any purpose at all.
2013-10-02 13:35:14 +02:00
Jonas Kulla 7b97075282 Remove unnecessary allocations 2013-10-01 18:27:22 +02:00
Jonas Kulla a54acce6b7 Implement Bitmap 'blur'
I was a bit confused at first because I thought Enterbrain
had actually implemented a full Gaussian blur, but nope,
just dumb averaging.
2013-10-01 18:12:52 +02:00
Jonas Kulla 20ec560145 Wrap color clear in 'FBO::clear()' convenience function 2013-10-01 13:10:14 +02:00
Jonas Kulla 082a9ae483 Fix style and add link to mattn's repo 2013-10-01 12:24:35 +02:00
Jonas Kulla a1c2a73006 Warn about mruby-onig-regexp 2013-10-01 12:21:30 +02:00
Jonas Kulla ceb7821362 Minor code style fix 2013-10-01 12:15:28 +02:00
Jonas Kulla 8baa76541c Merge branch 'bitmap_blur' 2013-10-01 12:06:40 +02:00
Jonas Kulla baff4e362e Fix minor GPU timer query issue 2013-10-01 12:05:58 +02:00
Jonas Kulla 9f26ff9fb0 Port over Bitmap 'radial_blur' from old SFML codebase
This implementation is also heaps better than the old
one as it doesn't use a (differently sized) aux texture,
meaning the Bitmap discards its old texture and aquires
one of same size, making reuse through the TexPool a
lot more likely. It also saves on the aux texture blits
and binding switches.

As the setup / resource acquisition far outweighs the
actual rendering cost, operation time is relatively
constant no matter how many divisions are used.
2013-10-01 12:03:20 +02:00
Jonas Kulla 088f0a2a30 Prefer pkg-config for lib flags where possible 2013-10-01 05:30:45 +02:00
Jonas Kulla b5afeadb5b Fix null deref 2013-10-01 02:29:02 +02:00
Jonas Kulla 73d5cb5bad Comment out unsupported audio formats 2013-10-01 02:28:46 +02:00
Jonas Kulla 408864339f Implement case insensitive path resolution 2013-09-30 21:20:29 +02:00
Jonas Kulla f49b03ba23 Window: Always rebuild cursor_rect tex coords
If the same Window updated its control verts without a visble
cursor_rect, these tex coords will get randomly overwritten by
further control parts.
2013-09-30 19:32:45 +02:00
Jonas Kulla 05f73f0b98 Ensure Elements don't unlink from an already dead Scene 2013-09-30 19:30:27 +02:00
Jonas Kulla 9d34fc966b Tilemap: Clamp sampled tileset height to multiple of 32 2013-09-30 01:38:46 +02:00