Commit Graph

286 Commits

Author SHA1 Message Date
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
Henrique Santiago 8926f33679 particles fixes 2011-12-15 16:39:57 -02:00
Henrique Santiago f67770ed00 particles from file 2011-12-15 16:20:09 -02:00
Henrique Santiago 24022317be particles improvements 2011-12-13 18:06:22 -02:00
Eduardo Bart 2030a4da29 Merge branch 'revgraphics'
Conflicts:
	src/framework/CMakeLists.txt
	src/framework/application.cpp
	src/framework/graphics/graphics.cpp
2011-12-09 12:23:32 -02:00
Henrique Santiago a679f258ee particles improve 2011-12-09 03:44:44 -02:00
Eduardo Bart 04ee85dc92 experiment shaders in outfit 2011-12-08 15:28:29 -02:00
Henrique Santiago 7233e4e039 particles duration 2011-12-08 06:04:16 -02:00
Henrique Santiago 34617091bc particles works, but really early state, need pointers fix 2011-12-08 05:28:52 -02:00
Eduardo Bart 5ec386b35f bloom shader 2011-12-07 21:43:12 -02:00
Henrique Santiago 262f54ce3b init particles, still not working 2011-12-07 18:00:28 -02:00
Eduardo Bart b5cf4ad2c4 test shader effect 2011-12-07 17:54:28 -02:00
Eduardo Bart 1a3dcb215e use vertex buffers 2011-12-07 16:49:20 -02:00
Eduardo Bart cc7c334d73 ... 2011-12-07 00:13:24 -02:00
Eduardo Bart b37a34219d fix shaders for OpenGL ES 2011-12-07 00:09:44 -02:00
Eduardo Bart f89bc352d5 fix shaders for OpenGL ES 2011-12-06 23:48:39 -02:00
Eduardo Bart 203d5768cb fix compile issues on n900 2011-12-06 22:45:38 -02:00
Eduardo Bart 7eead50806 use GLSL shaders 2011-12-06 22:31:55 -02:00
Eduardo Bart cf0aab6d4d reorganize modules 2011-12-05 16:39:33 -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 d5e15d1f06 add clock, change exceptions, add network exceptions, fix some crashes 2011-12-01 20:26:21 -02:00
Eduardo Bart 4afbe43e6f changes to prepare revgraphics 2011-12-01 17:38:46 -02:00
Eduardo Bart 9ca1637677 fix bug running in virtualbox 2011-11-26 01:35:54 -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 5c654f685c make styles closer to CSS syntax 2011-11-17 19:41:02 -02:00
Eduardo Bart b66cf3373f fix font glyph width calculation 2011-11-02 03:59:04 -02:00
Eduardo Bart d2e8e1d774 add command completion to console 2011-11-01 16:32:48 -02:00
Eduardo Bart 999fa731c0 new font files, fixed some font issues 2011-11-01 00:35:50 -02:00
Eduardo Bart ae6cd41819 remove unused allocator 2011-10-31 11:24:57 -02:00
Eduardo Bart e35a2e4c79 fix some graphics issues on Windows virtualbox 2011-10-30 21:13:22 -02:00
Eduardo Bart 4c5d1d0ca5 make work on Windows again 2011-10-30 18:11:43 -02:00
Eduardo Bart f4f0d7e960 fixed ratio image drawing support 2011-10-28 22:01:16 -02:00
Eduardo Bart 9aa87da074 small fix, thx darone 2011-09-08 14:38:21 -03:00
Eduardo Bart 4d10b0dd49 render improvments using some cache 2011-08-30 20:39:14 -03:00
Eduardo Bart ba8f8b889e simplify outfit render 2011-08-28 15:06:47 -03:00
Eduardo Bart 05edcc218d add some typedefs 2011-08-28 13:31:01 -03:00
Eduardo Bart e87297c1b5 reorganize all constants and place them into namespaces 2011-08-28 13:02:26 -03:00
Eduardo Bart f7eac377e7 restore copyright notice 2011-08-28 10:17:58 -03:00
Eduardo Bart 62871d8060 nothing, really 2011-08-27 19:32:16 -03:00
Eduardo Bart 67e3cfcb07 focus last logged character in charlist 2011-08-26 18:20:53 -03:00
Eduardo Bart 7359370251 new layout system, new UI state/styles system 2011-08-26 12:06:52 -03:00
Eduardo Bart 38529ea837 lua console and some changes 2011-08-20 17:30:41 -03:00
Eduardo Bart 033f14780d make otml simpler and easier to use, improve error handling/exceptions 2011-08-19 15:53:23 -03:00
Eduardo Bart c6dd25ed99 outfit colors 2011-08-19 09:26:26 -03:00
Eduardo Bart be15b1820d more refactoring 2011-08-15 18:02:52 -03:00
Eduardo Bart 2e1a96c2df rework on dat and spr loader 2011-08-15 16:15:49 -03:00
Eduardo Bart d8cc37afdb reorganize sources 2011-08-15 11:06:15 -03:00
Eduardo Bart 92b54b6f55 fix map render 2011-08-14 15:13:33 -03:00
Eduardo Bart afc197f2dc rework on graphics.cpp, implement some GFX with lua 2011-08-14 14:45:25 -03:00
Eduardo Bart 09af50c990 remake ui event system and reimplement line edit 2011-08-14 11:09:26 -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
Henrique 651315d4cd map draw working with lil bugs 2011-08-11 02:52:30 -03:00
Eduardo Bart 70f0b0dace new script engine, and things maybe be bugged for a while 2011-07-26 20:13:27 -03:00
Eduardo Bart ab7394f357 add a new folder structure redesign organized by packages 2011-07-17 08:52:20 -03:00
Eduardo Bart 571801ae39 some refactoring 2011-07-16 21:13:53 -03:00
Eduardo Bart 8ef1b28546 many changes and refactoring 2011-07-13 18:12:36 -03:00