Commit Graph

291 Commits (d5ddf3ac76f996755d4484fbce8fe7357c1f2cb5)

Author SHA1 Message Date
Krzysztof Dermont 2260f6bf4f Big part of PhysFS support
* removed -mod argument
* removed -datadir argument
* removed -lang argument
* removed some dead ui code
* added resource manager and file loaders (stream and SDL)
* changed interface textures location to match new directory structure
* removed CGameData for mod support
* added PhysFS support
2014-06-20 23:51:28 +02:00
krzys-h f0d97bfdb9 Better datadir mod support 2014-05-18 12:12:47 +02:00
krzys-h f71658e38d Random relief generator 2014-04-10 21:50:26 +02:00
Oleg Kosmakov a181ba9bbf Fixes #271 2014-03-25 22:56:40 +02:00
andreymal e9960f5373 GetStringWidth fix 2014-03-02 04:15:59 +04:00
krzys-h 4a237f5925 CPauseManager 2013-12-31 13:24:09 +01:00
Piotr Dziwinski cd97feabb0 Revert back "Merge pull request #243 from OdyX/dev-fix-textures-loading"
False alarm, was caused probably by faulty build bot.
This definately should work on all platforms.
2013-10-29 22:04:12 +01:00
Piotr Dziwinski 70af33e45d Revert "Merge pull request #243 from OdyX/dev-fix-textures-loading"
Looks like it doesn't work on all platforms
2013-10-28 19:36:43 +01:00
Didier Raboud c2a717d5c9 Let mouse.png's format be detected
Fixes the mouse cursor on Mac OS X
2013-10-28 15:25:14 +01:00
Piotr Dziwinski 9017dbbbdb Fixed CTerrain-related memory leaks 2013-10-13 14:44:12 +02:00
Piotr Dziwinski ccb63bd29e Fixed memory leaks in CText 2013-10-12 21:14:33 +02:00
Piotr Dziwinski 5d0d9b5aa5 Fixed some CBot-related memory leaks
* fixed leaks in CScript::CheckToken()
 * fixed leaks in CInterface
 * commented out unused function in robotmain.cpp
2013-10-12 18:50:30 +02:00
Piotr Dziwinski f8a6c6750a Fix for #228
* "empty" objects were wrongly handled in CPyro
2013-06-26 20:44:17 +02:00
erihel 41fa8458c2 Some Ui refactoring 2013-06-24 22:09:39 +02:00
Piotr Dziwinski bfcce26f89 Changes in build organization
* targets are now created in top-level build directory
 * more things are now configured through CMake options
 * changed debug build detection from NDEBUG to DEV_BUILD
 * moved po and desktop directories
 * moved last unit test out of src directory
2013-06-22 01:17:19 +02:00
Piotr Dziwinski 1377e48910 Reverted enum values to fix UT regression 2013-06-22 01:17:19 +02:00
Piotr Dziwinski 28b4e9a634 Fixed terrain light priorities (fix for #139)
* lights illuminating the terrain specified in scene file are now
   always moved to front of light ordering
2013-06-20 23:14:37 +02:00
Piotr Dziwinski 4c33172e17 Fixed string formats in light debug prints 2013-06-17 20:52:56 +02:00
Piotr Dziwinski 366d3a551e Added debug aids for lighting
* displaying positions of current lights (F11)
 * dumping info to console (F10)
 * added assert() in suspicious place in CPyro
2013-06-17 18:17:21 +02:00
Piotr Dziwinski b4700e3bed Fix for #133
* objects are now copied and textures are updated correctly
 * also added function to debug objects
2013-06-17 11:48:57 +02:00
Piotr Dziwinski 7874aca10c Enhanced logging, option to auto-start mission
* added logging of application events
 * changed debug mode flag to independent debug modes
 * added option to auto-start mission (load a mission immediately
   after startup)
 * removed "enum value out of range" prints
 * some refactoring
2013-06-16 21:54:36 +02:00
krzys-h 18b27d258e Fixed bug with white map
I'm not sure when it was introduced, probably in 8f6fd2a131.
It was showing errors like "Couldn't load texture 'map.png'" and "Invalid texture data"
2013-06-10 15:38:55 +02:00
Piotr Dziwinski b22d852b4c Fixed variable shadowing warnings
* fixed -Wshadow warnings
 * refactored some constructors
2013-05-27 22:29:42 +02:00
Piotr Dziwinski 950a3474d5 Refactored sound code
* fixed formatting and naming to be uniform with rest of code
 * moved default implementation of CSound to cpp module
2013-05-27 10:19:16 +02:00
Piotr Dziwinski 8765d58b02 Fixed code formatting
* moved braces to new lines
 * fixed some function/variable names
 * fixed whitespace issues
2013-05-27 10:19:16 +02:00
Piotr Dziwinski 8f6fd2a131 Changes in texture code & refactoring
* refactored and altered slightly the texture pack code
 * added flushing of texture cache
 * some refactoring and const-correctness in CApplication methods
2013-05-26 14:50:23 +02:00
Piotr Dziwinski b41957f2f9 Corrected some valgrind issues
* fixed several uninitialized variable issues
 * fixed possible memory corruption in CEngine
2013-05-26 11:34:53 +02:00
Piotr Dziwinski 07839a561f Unicode symbols for special characters
* added support for special characters from original text bitmaps
2013-05-12 18:38:01 +02:00
krzys-h 04f747b00b Added simple texturepack support (#208) 2013-05-12 14:55:41 +02:00
Piotr Dziwinski cec406ea31 Non-power-of-2 padding for background images
* added padding options
 * removed old hardcoded image sizes
2013-05-11 23:12:13 +02:00
erihel 2ba146cd63 Fixed problem with test compilation
Altered test cmake files to fix linker problem.
Changed tga to png in pyro.
Changed enum in CMotionDummy.
2013-04-29 14:29:12 +02:00
erihel 64162a0e6f Merge branch 'fix-for-shadows' of https://github.com/xiendev/colobot into xiendev-fix-for-shadows 2013-04-29 14:20:07 +02:00
XienDev 658ebe015f Fix for shadows (bugs #176 and #132) 2013-04-29 13:51:37 +03:00
erihel 5669053de0 Some code refactoring
Changed vehicule (french) to vehicle (english) in enums and variables
2013-04-27 17:50:30 +02:00
krzys-h 9485e1a95f Improved log levels 2013-04-01 12:58:55 +02:00
Piotr Dziwinski ff97de5477 Fixed graphics objects after reset
Should fix #120 and perhaps some other bugs as well
2013-03-31 13:06:38 +02:00
Piotr Dziwinski 195d6cded0 Fixed timer functions on win32
* changed win32 implementation to QueryPerformaceTimer system function
 * refactored system utils code
 * proper tests for time utils and update event creation in application
 * should fix issue #134
2013-03-24 12:00:12 +01:00
Piotr Dziwinski 4a30800cf1 Fixes for compiling on MSYS
* fixed SDL_main() and putenv() issues
 * disabled desktop subdir for MSYS
 * disabled building CBot_console for now
2013-03-22 19:17:08 +01:00
Piotr Dziwinski f729686539 Fixed segfault in light manager
Also fixed minor memory leak
2013-02-28 22:56:44 +01:00
Piotr Dziwinski 08c646bb92 Fixed stupid error, tweaked ambient light colors
* fixed stupid error in light manager
 * tweaked ambient light colors to 0.1 of diffuse;
   colors should not be oversaturated now
2013-02-28 22:06:22 +01:00
Piotr Dziwinski b0d86ebe5a Better light sorting
Should fix lighting issue (#62)
2013-02-25 21:58:01 +01:00
erihel ba2df2cb42 * Fix for satcom freeze 2013-02-24 01:40:55 +01:00
Piotr Dziwiński 001d37b257 CInstanceManager refactoring
* removed classes managed by CInstanceManager
   except for CObject, CPyro, CBrain and CPhysics
   because of dependencies
 * refactored instance searching to use existing singleton instances of
   CApplication, CEngine and CRobotMain and calling their getter
   functions
2013-02-17 12:11:56 +01:00
PaweX 34e758a9da Additional parameter for function aim(x, y) 2013-02-13 02:44:43 +01:00
adiblol d3106c73ff More camera distance from AlienQueen 2013-02-11 22:59:51 +01:00
erihel 3f6a6a9eef * Syntax highlighting in cbot editor (needs to be tested) 2013-02-09 23:49:38 +01:00
erihel 6f64770714 * Fixes to ingame editor
* Fixes to editor window. It's now possible to resize, move and press buttons
2013-02-09 21:00:07 +01:00
Piotr Dziwinski a937a7b6ec Changed model min/max to LOD levels 2013-01-27 11:43:53 +01:00
Piotr Dziwinski 1285712aa2 CMakeLists enhancements
- compiler detection (clang and gcc version check)
 - compile flags only for src/ subdir
 - system and local include paths
 - fix for clang compilation
2013-01-08 22:12:09 +01:00
Piotr Dziwinski 5a6b3f005a Merge dev and dev-graphics 2013-01-07 19:43:04 +01:00
Marcin Zawadzki ff5c890854 Small fix in detecting language. Fixes needed to compile code using clang 2013-01-05 23:03:26 +01:00
Piotr Dziwinski d1942e1216 Correct font scaling with resolution 2013-01-04 00:29:19 +01:00
Piotr Dziwinski 89a3f586a2 Merge branch 'dev' into dev-graphics 2013-01-04 00:05:28 +01:00
Piotr Dziwinski 2ebe1fbcb6 Fixed spider and worm model loading 2012-12-28 13:23:49 +01:00
Piotr Dziwinski 45bee618f9 Fixed unicode rendering bug 2012-12-27 16:32:46 +01:00
Piotr Dziwinski 3582f107a5 Fixes and refactoring 2012-12-27 14:18:16 +01:00
Piotr Dziwinski 5574eccebd Engine optimization - rewritten model management
- new class CModelManager
 - rewritten engine object structure in CEngine
 - created shared model data instead of separate objects per each
   model instance
 - minor refactoring
2012-12-26 20:58:02 +01:00
Didier Raboud 7e9ef0c042 Put common CXX flags in common variables
CMAKE_CXX_FLAGS is taken into account in all builds; build-type-specific
flags are appended to it.
2012-12-19 16:55:00 +01:00
Didier Raboud 3c976c040b Don't enforce CMake build type on users.
Only set CMAKE_BUILD_TYPE to Debug when no value is provided.
2012-12-19 16:52:17 +01:00
Piotr Dziwinski 56a170391f Split gtest and gmock, fixed using system packages
- split the bundled gtest and gmock libraries
- allowed the use of system gmock
- refactoring in CMakeLists
2012-12-16 13:22:58 +01:00
Piotr Dziwinski 4811defca2 Static objects using OpenGL VBOs and display lists 2012-12-14 21:30:35 +01:00
Piotr Dziwinski 3ce488307f Performance counters 2012-10-25 23:29:49 +02:00
Piotr Dziwinski 688315ab76 ComputeSphereVisibility and fixes in CEngine TODOs
- view frustum culling with ComputeSphereVisibility - game should run
  faster now
- resolved/removed most TODOs from CEngine
- fixed OpenGL tests
2012-10-20 23:06:56 +02:00
Piotr Dziwinski 728e7e405d Transparent plant textures 2012-10-20 18:40:24 +02:00
Piotr Dziwinski 40e065aea9 Ground spot texture drawing 2012-10-20 16:34:22 +02:00
Piotr Dziwinski 6d06c9f722 Flare textures should work now 2012-10-19 23:05:41 +02:00
Piotr Dziwinski be4654c63b Fix track mapping and sphere particle position 2012-10-19 22:43:18 +02:00
Piotr Dziwinski a90cd304ba Track texture mapping 2012-10-19 22:37:11 +02:00
Piotr Dziwinski f6e27099b2 Doxygen/comment fixes and some #include refactoring 2012-10-17 21:55:45 +02:00
Piotr Dziwinski 9738631e5e Removed unnecessary dynamic_casts 2012-10-17 21:48:40 +02:00
Zaba999 7575ffd49b Merge branch 'dev' of https://github.com/colobot/colobot into dev 2012-10-11 23:10:07 +02:00
Zaba999 8a932fed3e Added saving user scripts on game save. Fixed bug in writing script to file. 2012-10-11 23:09:29 +02:00
Piotr Dziwinski 6fdaf5de46 CParticle rewrite 2012-10-05 18:59:49 +02:00
Piotr Dziwinski ff99b74b25 Some CPyro docs 2012-10-05 18:59:03 +02:00
Piotr Dziwinski 37302a2504 CLightning rewrite 2012-10-05 15:26:24 +02:00
Piotr Dziwinski 703f03f316 CPyro rewrite 2012-10-03 00:30:17 +02:00
Piotr Dziwinski 85d253b094 Fixed bugs in texture coloring 2012-09-30 11:26:59 +02:00
Piotr Dziwinski 8ea4736a46 Font coloring; fix for resize hack
- added font coloring and changed default color to black
- fixed resize hack incorrectly changing video config,
  but font resizing will not work for now
2012-09-30 10:56:35 +02:00
Piotr Dziwinski b46dc3850f Map texture painting 2012-09-30 00:23:26 +02:00
Piotr Dziwinski a8554cfae3 Texture coloring 2012-09-29 23:37:38 +02:00
Piotr Dziwinski 4193f8a3a9 Fix for transparent objects and fadeouts 2012-09-29 22:44:05 +02:00
Piotr Dziwinski 5a751d9c0d Fixed texture regression
There was a bug in texture modesetting but only visible after certain
mode changes.
2012-09-29 19:35:14 +02:00
Piotr Dziwinski 677ce3960c Some fixes and optimizations
- fixed 2nd texture setting
- added padding to some structs for faster access
- changed rendering primitives to glDrawArrays()
- optimized texture modesetting calls
- fixed some valgrind errors
2012-09-29 10:40:11 +02:00
adiblol 77952a85e6 Merge remote-tracking branch 'origin/dev' into dev-graphics 2012-09-27 23:55:13 +02:00
erihel 9f4c1454dc * Ingame help should now display correctly 2012-09-27 23:42:52 +02:00
Piotr Dziwinski 6d0ed0d26a Completely fixed light issues
Directional and spot lights are now set properly
2012-09-27 23:18:12 +02:00
Piotr Dziwinski a394c9efec Updated docs and some Doxygen fixes 2012-09-27 20:43:20 +02:00
Piotr Dziwinski 2ef1c8b6f8 Fixed blinking light problem
- temporarily commented out misbehaving code in CPhysics
- some fixes in CLightManager
- minor refactoring in CRobotMain
2012-09-27 20:36:52 +02:00
Piotr Dziwinski 80d3a9bff1 Lighting fix (experimental)
- changed fixed light allocation to prioritized per-use basis
- minor refactoring in CPlanet and CWater
2012-09-26 23:18:57 +02:00
Piotr Dziwinski 2fa4d7b0db Refactored resource and relief loading
- now loading can be from any image format
- added IntColor struct for precise pixel operations
2012-09-26 19:18:33 +02:00
Piotr Dziwinski 6bdc1e8ac1 Merge master & dev 2012-09-26 16:40:27 +02:00
Piotr Dziwinski 45fd8aad33 Fog color fix; refactoring
- fixed fog color setting
- removed unused glSecondaryColor and altered struct VertexCol
- minor refactoring in CText
2012-09-26 16:31:04 +02:00
Michał Zieliński dad42df4c7 made graphics/engine/text cleaner, I hope 2012-09-25 18:44:43 +02:00
erihel 2db419a1e0 * Building should work now without 'ground not flat' message 2012-09-25 18:26:16 +02:00
Michał Zieliński b06544871a made graphics/engine/text cleaner, I hope 2012-09-24 23:55:52 +02:00
Piotr Dziwinski b1edcc822f Various fixes
- disabled UserDir() in path lookup
 - fixed crashes on loading missions in CObject
 - fixed texture bug in CTerrain
 - changed mouse move event handling to avoid flooding event queue
 - enabled all missions for testing
2012-09-22 17:36:10 +02:00
Piotr Dziwinski fd09071c29 Data dir paths
- changed access to paths in data directory in CApplication
- models now load from data directory
2012-09-22 14:40:13 +02:00
Piotr Dziwinski 0ff419560d Event fixes & refactoring
- added new state tracking to Event
- removed old fields from Event
- fixed some issues with Events and fps counter
2012-09-22 00:38:17 +02:00
Piotr Dziwinski 60c37aac3a robotmain, restext and engine fixes 2012-09-21 00:01:03 +02:00
Piotr Dziwinski bd36d76b31 Mouse pos setting, low cpu mode, stats display 2012-09-20 20:37:37 +02:00
Piotr Dziwinski 7b6bbf79c4 Namespace and styling fix 2012-09-19 23:50:28 +02:00
Piotr Dziwinski 7479f486b6 Forgotten fix in dev-graphics 2012-09-19 22:53:06 +02:00
Piotr Dziwinski 10c9d92cd2 Mouse wheel events, motion vectors
- added mouse wheel events
- added motion vectors to CRobotMain
- other minor changes in event.h
2012-09-19 21:23:42 +02:00
Zaba999 7bce8f073c Merge branch 'dev' of https://github.com/adiblol/colobot into dev
Conflicts:
	src/ui/slider.cpp
2012-09-18 22:39:10 +02:00
Zaba999 a397922e8d warnings fight in progress. 2012-09-18 00:01:00 +02:00
Piotr Dziwinski 4b67386a69 Change of background image handling
- removed old 4 quarter backgrounds
- fixes in texture loading
- other minor fixes
2012-09-17 23:41:53 +02:00
Zaba999 844e11db4f changes needeto to cimpile on windows. 2012-09-17 20:47:27 +02:00
Piotr Dziwinski 2e21435f43 Some memory leaks fixed 2012-09-16 20:00:25 +02:00
Piotr Dziwinski 6a0d150539 Interface works
- removed mock of CInterface and fixed event passing to CRobotMain
- changed texture names from tga and bmp to png
- UI now works but interaction is still broken
2012-09-16 10:38:08 +02:00
Piotr Dziwinski ad6bc13dc2 Merge dev-common and various fixes to achieve compilation
- merged changes from dev-common
- fixed many compilation errors (CBrain, UI, ...)
- temporarily commented out some problematic code (e.g. input bindings)
- (partially) fixed #include styling
- everything compiles except for CRobotMain, CMainDialog and CStudio
2012-09-15 18:50:51 +02:00
Piotr Dziwinski 34d7dcf3be Simulation timestamps and input bindings
- added new simulation time calculations in CApplication
- added simulation frame updates
- rewritten old input binding code and input state tracking
2012-09-12 23:43:04 +02:00
Zaba999 1bb1eb7b87 half of task compile. 2012-09-11 23:11:34 +02:00
Zaba999 e57be247c2 commented new part in cmakelist and reverted stubs in camera.cpp. Will be commited later after implementation is finished in dev-object branch. 2012-09-10 23:39:22 +02:00
Zaba999 479a67a731 Merge with changes from Zaba999 fork. 2012-09-10 23:29:38 +02:00
Piotr Dziwinski 901f10b2ba Fixed old model format bugs 2012-09-09 23:34:52 +02:00
Piotr Dziwinski efe4f0badd Refactoring in src/common
- refactored CInstanceManager and some headers
- removed old headers
2012-09-09 17:51:10 +02:00
Piotr Dziwinski c6673b9aee Texture format detection; minor fixes
- detection of texture format
- fixed depth mask bug
- minor refactoring
2012-09-09 12:56:09 +02:00
Piotr Dziwinski c2c1294ec9 CTerrain refactoring & fixes
- refactored CTerrain code
- fixed some minor bugs
2012-09-08 23:44:14 +02:00
Piotr Dziwinski 31c29ea482 CModelFile fixes; test framework
- fixes in CModelFile IO
- added Google Test framework for automatic testing
- rewrote modelfile_test in the new framework
2012-09-08 03:05:12 +02:00
Piotr Dziwinski 08f1b68ffd Fix 2012-09-03 22:37:28 +02:00
Piotr Dziwinski 09fd0e205e Fix 2012-09-03 19:21:37 +02:00
Piotr Dziwinski 01fd19d2cd Fix 2012-08-31 21:51:28 +02:00
Piotr Dziwinski e94e26ae1e New model file format
- added new binary and text formats for models
- fixes and improvements in CModelFile
- tool for converting model files
- minor additions and fixes
2012-08-31 20:55:16 +02:00
Piotr Dziwinski 3e52ae4ca9 Fixes in terrain rendering 2012-08-27 01:02:25 +02:00
Piotr Dziwinski 5b45911856 Improved error messages
Added some logging and improved error messages displayed to user
2012-08-13 23:09:30 +02:00
Piotr Dziwinski 712154bc4f Rendering functions, documentation
- rewrote the render functions for CEngine, CCloud and CWater
- added documentation
2012-08-13 00:14:42 +02:00
Piotr Dziwinski 45a5e1e865 Object handling in CEngine
- finished rewriting CEngine object, shadow, etc. handling
- refactored texture code
- added new log levels
2012-08-12 19:28:22 +02:00
Piotr Dziwinski b4b74c30e9 Fixes & testing in CEngine
- fixed bugs in settings modes, etc.
- some additions and minor refactoring
2012-08-12 10:45:04 +02:00
Piotr Dziwinski 1996507fd3 Documentation update
- updated Doxyfile
- added/changed file, dir and namespace descriptions
- fixed some errors in doxygen tags
2012-08-11 18:39:16 +02:00
Piotr Dziwinski 7f80ca2971 Render mode setting, refactoring
- finished SetState in CEngine
- refactored Size and IntSize back to Point and IntPoint
- other minor changes in CEngine
2012-08-11 17:17:04 +02:00
Piotr Dziwinski 63257034c9 Partial CEngine implementation
- added rewritten implementation for basic modesetting in CEngine
- started rewriting proper rendering and object handling in CEngine
2012-08-10 23:31:42 +02:00
Piotr Dziwinski c3ab23ac9d Graphics stubs
- added stubs for functions in CLightning, CParticle and CPyro
- cleaned object.h and physics.h headers
- created temporary stubs to compile CCamera
- other necessary changes to compile successfully
2012-08-09 22:50:04 +02:00
Piotr Dziwinski acff306cc1 CPlanet implementation
Added rewritten CPlanet implementation
2012-08-09 22:49:13 +02:00
Piotr Dziwinski c1936514c0 CWater and CCloud basic implementation
Added rewritten implementation for CWater and CCloud
Won't link yet because of missing functions
2012-08-08 23:51:19 +02:00
Piotr Dziwinski 878eec8eea CTerrain implementation
Added rewritten CTerrain implementation
Compiles OK, but functions are missing from other classes
Also needs testing
2012-08-08 21:32:44 +02:00
Piotr Dziwinski f7e78b21e9 Font rendering
- implemented rest of CText interface excluding some minor features
2012-08-06 20:20:50 +02:00
Piotr Dziwinski 61bfb22f27 Basic font rendering
- added basic font rendering
- minor refactoring & fixes
2012-08-03 23:23:13 +02:00
Piotr Dziwinski 5e637ca028 Switched to new style casts
- rewrote old C-style casts to new ..._cast<>
- corrected some dangerous casts
- added -Wold-style-cast to compile flags
2012-07-30 22:59:18 +02:00
Piotr Dziwinski 220ff9fe52 CCamera rewrite
Rewritten old code; doesn't compile yet because changes in other
modules are needed.
2012-07-29 18:42:56 +02:00
Piotr Dziwinski 7c5a3514dd Video mode changing
- added video mode querying & changing
- added joystick querying & changing
- cleaned up CApplication interface
2012-07-29 15:09:53 +02:00
Piotr Dziwinski 4ddcd9f810 Change of paths in src/graphics
- moved abstract core to src/graphics/core
- moved proper graphics engine to src/graphics/engine
2012-07-26 22:26:19 +02:00