44 Commits

Author SHA1 Message Date
Eduardo Bart
d39cf361ab improve minimap 2012-06-22 02:26:22 -03:00
Eduardo Bart
8761220deb Refactoring and flexibility changes
* Split game module into game and game_interface
* Move core_lib to corelib
* Move miniwindow to corelib
* Introduce init.lua script for initializing the client, giving much more flexibility
* OTClient is no longer Application derived and is much simpler
2012-06-19 21:16:52 -03:00
Eduardo Bart
1c7bbaea89 Fix memory leaks
* Fix recursive reference memory leak in UIWidget
* Make Event/ScheduledEvent memory-leak safe
* Fix exit crashs by freeing graphics resources before destroying GL context
* Add many asserts to avoid any leak regression
2012-06-18 05:13:52 -03:00
Eduardo Bart
83f86eac64 experimental map shaders 2012-06-14 15:26:55 -03:00
Eduardo Bart
1a2e97bb5e show private message on screen
* disable GL blending in some situations to speedup on older hardware
* fix wrap size in CachedText
2012-06-09 10:00:08 -03:00
Eduardo Bart
1a7f2a44fc graphics fixes and improvements 2012-06-08 21:40:41 -03:00
Eduardo Bart
bb1fb939c4 just fixes
* fix battle rendering
* fix rendering glitch when following creatures
* properly throw exceptions from C++ to lua and avoid exception crashs
* fixes rendering states in framebuffer
2012-06-06 11:10:35 -03:00
Eduardo Bart
d49cad31e2 fixes in EGL platform 2012-06-03 11:10:34 -03:00
Eduardo Bart
1c5b906b5b some optimizations 2012-06-02 11:43:27 -03:00
Eduardo Bart
ba01909088 fix alpha blending issues 2012-06-01 20:22:10 -03:00
Eduardo Bart
14db1066fc change logger 2012-06-01 17:39:23 -03:00
Eduardo Bart
bd2faabe99 graphics optimization feature inspirated by diablo3 engine
* the rendering now consits of two panes
- the background pane (for animated stuff like the map)
- the foreground pane (for steady stuff, like UI)
each pane has it own max FPS and works idependently
this may increase graphics performance on many platforms
2012-06-01 16:39:09 -03:00
Eduardo Bart
7b512bfa9f fix minor bug in opengl1 framebuffer 2012-05-13 11:45:32 -03:00
Eduardo Bart
f14706206a continue implementing new graphics engine
* implement OpenGL ES 1.1 and OpenGL ES 2.0 support
* new framebuffer that can run on any opengl implementation
* fixes in outfit size rendering
2012-04-20 07:16:03 -03:00
Eduardo Bart
58d76e255d begin implementing OpenGL 1.0 engine
* option to pass -opengl1 or -opengl2 as argument
* note that with this commit there are a lot of graphics regressions and the master will remaing unstable for a while
* shaders disabled for a while
2012-04-18 20:03:43 -03:00
Eduardo Bart
16acfebe3b move clipping to painter 2012-04-04 19:46:49 -03:00
Eduardo Bart
b5a4d31fa7 more graphics optimizations
* avoid buffers clears
* use scisors testing instead of stencil testing for clipping
* remove stencil buffers
2012-04-04 17:18:24 -03:00
Eduardo Bart
3ad97c9eab crash handler, logger and oengles changes
* save log messages to otclient.txt
* fixes in FrameBuffer and HardwareBuffer to work with OpenGLES
* possibility to get compilation information from lua (compiler version, build date, build revision, build type)
* make crash handler more informatave
* handle assert crash signals (SIGABRT)
2012-03-22 09:57:43 -03:00
Eduardo Bart
c7469e4454 graphics fixes
* zooming without real FBOs kinda works, but with lower quality
* hardware detection for glGenerateMipmaps
* possibility to disable bilinear filtering, mipmaps, framebuffers, and realtime mipmap generation in g_graphics
* otclient works well using 3D acceleration in VirtualBox again
* many fixes regarding FBOs fallback implementation
2012-03-21 09:41:43 -03:00
Eduardo Bart
01d5fad315 support for OpenGL 2.0
* use OpenGL 2.0 auxiliary buffers when FBO is not supported, thus this means that OpenGL 3 is not a requirement anymore, so otclient might work in older video cards
* map zooming will never work well with Opengl 2.0 because of glCopyTexSubImage2D limitation
2012-03-20 19:26:07 -03:00
Eduardo Bart
b4261a8c7b bunch of optimizations 2012-03-20 12:17:10 -03:00
Eduardo Bart
9db7bd2602 rework map rendering 2012-01-29 22:00:12 -02:00
Eduardo Bart
4276bd680d allow use of mipmaps in framebuffers 2012-01-28 16:29:03 -02:00
Eduardo Bart
24aab00431 fix use with, improve move, change icons, improve topbar 2012-01-24 16:39:16 -02:00
Eduardo Bart
7bcf7f536e cache rendering of UILabel 2012-01-17 03:36:25 -02:00
Eduardo Bart
a1374baee1 major UIWidget rewrite with new features 2012-01-10 20:13:40 -02:00
Eduardo Bart
9104305f37 update copyright notice 2012-01-02 14:59:24 -02:00
Eduardo Bart
3abbf5255e introduce matrix class and use it 2011-12-24 21:14:12 -02:00
Eduardo Bart
7eead50806 use GLSL shaders 2011-12-06 22:31:55 -02:00
Eduardo Bart
f548825faf too many changes to list, many regressions were made, master will be UNSTABLE for a few days 2011-12-03 19:52:56 -02:00
Eduardo Bart
4afbe43e6f changes to prepare revgraphics 2011-12-01 17:38:46 -02:00
Eduardo Bart
1386064d71 add framebuffer support for old video cards 2011-11-25 20:29:45 -02:00
Eduardo Bart
18c122c71e add glext.h, remove GLU dependency 2011-11-22 22:21:33 -02:00
Eduardo Bart
e35a2e4c79 fix some graphics issues on Windows virtualbox 2011-10-30 21:13:22 -02:00
Eduardo Bart
f7eac377e7 restore copyright notice 2011-08-28 10:17:58 -03:00
Eduardo Bart
d8cc37afdb reorganize sources 2011-08-15 11:06:15 -03:00
Eduardo Bart
afc197f2dc rework on graphics.cpp, implement some GFX with lua 2011-08-14 14:45:25 -03:00
Eduardo Bart
55862b07ad merge total remake 2011-08-13 23:10:27 -03:00
Eduardo Bart
7cf188a67d fix framebuffer 2011-08-11 23:04:28 -03:00
Eduardo Bart
1a81d1520f framebuffer 2011-08-11 22:38:54 -03:00
Eduardo Bart
8ef1b28546 many changes and refactoring 2011-07-13 18:12:36 -03:00
Eduardo Bart
ca38f53e15 OpenGL in prerequesites 2011-05-15 13:39:14 -03:00
Eduardo Bart
c0fce81238 ahn? 2011-04-17 16:14:24 -03:00
Eduardo Bart
1f78f93096 refactoring paths and includes 2011-04-10 12:37:15 -03:00