Commit Graph

244 Commits

Author SHA1 Message Date
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 c01b32b032 rework log function and protocol
* remove some protocol ifdefs, replace with game features system
2012-05-28 19:04:44 -03:00
Eduardo Bart 4c80d783d6 rewrite and reoganize tools functions
* create stdext namespace which contains additional C++ algorithms
* organize stdext in string, math, cast and exception utilities
2012-05-28 10:06:26 -03:00
Henrique Santiago 1203756baf items draw rework, npc trade fix 2012-05-13 12:05:30 -03:00
Eduardo Bart 7b512bfa9f fix minor bug in opengl1 framebuffer 2012-05-13 11:45:32 -03:00
Eduardo Bart e2dd71185b fixes for OpenGL ES platforms 2012-05-13 09:48:19 -03:00
Eduardo Bart 6495d74edd restore outfit colors
* rework sprite manager and ThingType
* render colored outfits again compatible with OpenGL 1
2012-05-09 17:26:34 -03:00
Eduardo Bart 2f0a151fed questlog module complete 2012-04-30 23:00:07 -03:00
Eduardo Bart 243bd3a930 fix rendering of quotes 2012-04-26 00:34:32 -03:00
Eduardo Bart 9aa12acc22 performance improvements
* no more freezes because of file IO from hard disk, now we cache sound/spr file buffers
* more opengl painter tweaks
2012-04-24 18:05:46 -03:00
Eduardo Bart ee664657fb avoid some opengl redundant calls 2012-04-24 13:37:46 -03:00
Eduardo Bart 70f14b5ac3 improve performance on linux by removing glFinish() 2012-04-24 13:23:33 -03:00
Eduardo Bart 9cf40d7f53 fix repeated texture allocation bug 2012-04-24 13:18:45 -03:00
Eduardo Bart efd17361f8 non relevant drawing changes 2012-04-24 09:21:48 -03:00
Eduardo Bart dcb196d45a minor opengl1 optimization 2012-04-20 10:32:21 -03:00
Eduardo Bart affcd03e06 don't use hardware buffers by default 2012-04-20 10:18:33 -03:00
Eduardo Bart d006e52c78 support for non power of two textures 2012-04-20 09:07:47 -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 0b8d8b4595 enable ogl debug with ifdefs 2012-04-12 16:56:05 -03:00
Eduardo Bart 879827bdbc enable opengl debugging on x11 2012-04-12 16:24:00 -03:00
Eduardo Bart a46a16738c performance improvement, lock free render 2012-04-12 11:26:56 -03:00
Eduardo Bart 2017fb366e some optimizations 2012-04-09 09:36:40 -03:00
Eduardo Bart 92bd1aba54 optimize graphics performance 2012-04-08 16:31:36 -03:00
Eduardo Bart 2e43a77d64 change mouse press behaviour 2012-04-07 00:37:29 -03:00
Eduardo Bart 2835a66bab experimental minimap
* a lot of rework in MapView
* new APIs for UIMap
2012-04-06 20:15:52 -03:00
Eduardo Bart 4f15da695c optimizations 2012-04-05 16:08:46 -03:00
Eduardo Bart 49727c573f platform fixes
* fix black cursor on win32
* fix front buffer refresh on some x11 platforms
* fix outfit framebuffer glitch
* display entergame by default
* change some icons
2012-04-05 09:18:25 -03:00
Eduardo Bart 16acfebe3b move clipping to painter 2012-04-04 19:46:49 -03:00
Eduardo Bart 79b4136a8d ... 2012-04-04 17:32:43 -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 034fce9147 improve clipping performance 2012-04-04 12:19:17 -03:00
Eduardo Bart 11ad1f5c5b performance improvements 2012-04-04 09:56:22 -03:00
Eduardo Bart c250bfcf42 fix issue 2012-04-03 23:54:56 -03:00
Eduardo Bart dd875fc925 support for GL_EXT_framebuffer_object 2012-04-03 23:41:12 -03:00
Eduardo Bart cb890e8cb1 prevent some protocol crashs 2012-04-03 19:24:15 -03:00
Eduardo Bart c33741d324 display unsupported extensions 2012-04-03 17:12:05 -03:00
Eduardo Bart 0ddaa234af rework on UILineEdit
* allow multiline text editing
* rename UILineEdit to UITextEdit
2012-03-31 10:43:01 -03:00
Eduardo Bart c13a5b5dab fix crash and focus bug 2012-03-30 04:40:13 -03:00
Eduardo Bart 4743763d48 remvoe blur, fix scroll issue on win32 2012-03-28 15:10:59 -03:00
Eduardo Bart 8c2a84b6be motion blur for fun 2012-03-28 14:34:07 -03:00
Eduardo Bart 56d6cc2cc0 testing bloom and motion blur 2012-03-28 14:18:21 -03:00
Eduardo Bart 8d14d9bc99 restore old modules
* partially restore vip, battle, healthbar, skills and inventory modules
* more fixes on UIWidgets
* implement UIMiniWindow close/minimize functionality
* allow drag and drop miniwindows beteween game panels
2012-03-28 11:10:21 -03:00
Eduardo Bart 8ea154016b fix and changes
* win32 compilation fix
* add buttons to miniwindow
* dispatcher events fixes
* ui fixes
2012-03-27 15:14:40 -03:00
Eduardo Bart de0008caf1 ui and graphics changes
* implement draw clipping using opengl stencil buffers
* allow to create Widgets by style name with g_ui.createWidgetByStyle
* styles can now have children widgets
* make proper use of the isNotPathable in pathfinding
* add scrollbar skin
2012-03-24 12:22:40 -03:00
Eduardo Bart 33458a3e39 modules changes
* speedup widget destruction checks
* rework outfit module using grid layout and the new design
* fixes in console, terminal, textmessage modules
2012-03-22 18:47:52 -03:00
Eduardo Bart 159eb98df2 introduce startup options
* startup options with -help and -version
* many startup options for graphics
2012-03-22 13:10:12 -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 28633a9e20 fixes
* dont use realtime mipmaps by default
* fix void rendering
* fix max Z rendering
2012-03-21 14:30:57 -03:00
Eduardo Bart 57adcb38bd rework windows crash handler
* use -Ofast -fomit-frame-pointer for release
* new windows crash handler that can generate backtraces reports
* fix crash after fatal errors
2012-03-21 12:31:34 -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 5c35938a92 many graphics performance tweaks
* use hardware vertex buffers (video memory)
* cache text drawing with vertex buffers instead of framebuffers
* avoid recalculating texture transformation matrix
2012-03-20 16:10:04 -03:00
Eduardo Bart b4261a8c7b bunch of optimizations 2012-03-20 12:17:10 -03:00
Eduardo Bart 3cd31bcd1e rework Color to optimize render 2012-03-19 18:56:07 -03:00
Eduardo Bart f62f507813 just fixes
* clean map when relogging
* fix otclientrc.lua reloading
* fix game disconnection messagebox
* fix animated texture
2012-03-19 14:54:47 -03:00
Eduardo Bart b46d4c4d5f non relevant changes 2012-03-16 10:31:21 -03:00
Eduardo Bart 27b83fa722 some optimizations and compilation changes
* speedup render of widget images on low end devices using mipmaps
* changes in CMakeLists.txt to allow usage of distcc and crosscompiling
2012-02-20 11:10:54 -02:00
Eduardo Bart e03bf33f58 BEAWARE all game functionality is disabled with this commit for a while
* rework client modules
* hide main window when loading
* remake top menu functions
* rework modules autoload
* improve path resolving for otml and lua
* move core_widgets to core_lib
* fix tooltip issues
* split some styles
* add bit32 lua library
* fix assert issues
* fix compilation on linux 32 systems
* rework gcc compile options
* renable and fix some warnings
* remove unused constants
* speedup sprite cache
* move UIGame to lua (not funcional yet)
* fix a lot of issues in x11 window
* fix crash handler
* add some warnings do uiwidget
and much more...
2012-02-20 00:28:13 -02:00
Eduardo Bart 619f751371 fixes in uicreature rendering 2012-02-07 23:33:08 -02:00
Eduardo Bart 88301c329a a lot of changes in modules 2012-02-06 17:19:47 -02:00
Eduardo Bart 3277c050c5 fix in OpenGL ES code 2012-02-03 12:02:59 -02:00
Eduardo Bart edeee80631 speedup sprite loading 2012-02-02 12:07:02 -02:00
Eduardo Bart 437f515e7c fix outfit problems 2012-01-30 04:27:21 -02: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 99ff5ce24c implement line wrap for text messages 2012-01-24 22:58:57 -02:00
Eduardo Bart 24aab00431 fix use with, improve move, change icons, improve topbar 2012-01-24 16:39:16 -02:00
Eduardo Bart 9450fab9e7 fix walk freeze, fix some texts displaying in pink 2012-01-19 14:23:45 -02:00
Eduardo Bart 7bcf7f536e cache rendering of UILabel 2012-01-17 03:36:25 -02:00
Eduardo Bart 44a20222bb walk and key event system rework with some regressions 2012-01-15 19:19:52 -02:00
Eduardo Bart bb768f43c0 improvments for shaders 2012-01-11 21:01:20 -02:00
Eduardo Bart a1374baee1 major UIWidget rewrite with new features 2012-01-10 20:13:40 -02:00
Eduardo Bart fb20ad1ba1 improve combobox and menu design 2012-01-05 16:02:27 -02:00
Eduardo Bart 30ce5e2ba9 reorganize some stuff 2012-01-04 23:28:29 -02:00
Eduardo Bart b8150d160e implement combobox and do some ui rework 2012-01-04 08:26:58 -02:00
Eduardo Bart 9104305f37 update copyright notice 2012-01-02 14:59:24 -02:00
Eduardo Bart 7c0ad7a356 fix EGL 2011-12-29 17:36:43 -02:00
Eduardo Bart d597335135 make work on win32 again using GLEW 2011-12-29 16:21:58 -02:00
Eduardo Bart 400afa9981 fix outfit glitches, init combobox, move shaders, remove unused particles files, create timer utility 2011-12-28 17:38:29 -02:00
Henrique Santiago df0f2febe6 more rework 2011-12-27 00:18:15 -02:00
Henrique Santiago 37a6a38ca6 some reworks 2011-12-26 04:14:57 -02:00
Eduardo Bart 3abbf5255e introduce matrix class and use it 2011-12-24 21:14:12 -02:00
Henrique Santiago e6d1252b34 creature names font fix 2011-12-21 02:44:08 -02:00
Eduardo Bart 2b25ffd86b changes to compile on gcc 4.7 2011-12-19 15:26:41 -02:00
Henrique Santiago 56a392f681 particle system with exori flam 2011-12-19 01:24:35 -02:00
Henrique Santiago ab9efe5a95 particles test 2011-12-18 21:44:49 -02:00
Henrique Santiago e3e6770957 particles start final size 2011-12-18 00:54:35 -02:00
Henrique Santiago 6973e1639a particles colors 2011-12-18 00:21:12 -02:00
Henrique Santiago eed6fab4b1 particles afectors upgrade and timer rework 2011-12-17 00:40:00 -02:00
Henrique Santiago bb0860c5d0 particles on center 2011-12-16 13:32:49 -02:00
Henrique Santiago bf28a92e31 affectors attract 2011-12-16 04:24:04 -02:00
Henrique Santiago 26eb3b42a6 some changes to particles 2011-12-16 00:48:10 -02:00
Henrique Santiago ad38dad227 particle affectors 2011-12-15 23:59:29 -02:00
Henrique Santiago 435161df62 emitter delay and system deletion 2011-12-15 21:48:15 -02:00
Henrique Santiago 9a5be9c4d8 add missing files 2011-12-15 18:55:05 -02:00
Henrique Santiago 2643de367a remove particles from emitter 2011-12-15 18:54:42 -02:00
Henrique Santiago 4f905da009 particles ptr fixes 2011-12-15 18:15:01 -02:00
Eduardo Bart 16bb12011a rework particles math 2011-12-15 17:59:24 -02:00
Eduardo Bart 1339e18202 ... 2011-12-15 16:42:56 -02:00