Piotr Dziwinski
18f9bfb575
Make saving screenshot thread- and exception-safe
...
* introduce ResourceOwningThread wrapper for safely passing resources
to new threads
* make CEventQueue thread-safe
* start screenshot saving thread using ResourceOwningThread
* change direct call at end of writing screenshot to thread-safe
event communication
2015-08-04 20:37:15 +02:00
krzys-h
04960035c1
Save screenshot image in a separate background thread ( #546 )
2015-08-03 21:40:30 +02:00
krzys-h
5e4a423bf0
Cleaned up "textures/"+something, fixed more possible occurences of #531
2015-08-03 20:55:33 +02:00
Piotr Dziwinski
11b0398c03
Include refactoring
...
* reordered includes according to correct style
* removed some unnecessary includes
2015-08-02 17:49:07 +02:00
Piotr Dziwinski
7d8b56d9ab
More style fixes
2015-08-02 12:06:14 +02:00
Piotr Dziwinski
3b585d9f51
Some style and whitespace fixes
2015-08-02 11:36:36 +02:00
krzys-h
6818e32150
Fixed shadow mapping disable when not supported ( #522 )
2015-07-29 22:30:44 +02:00
krzys-h
083f216529
Team object recoloring ( #514 )
2015-07-22 12:45:50 +02:00
krzys-h
72b9738eb9
Fixed possible problems when trying to use shadow maps in unsupported configuraions ( #522 )
2015-07-20 22:34:39 +02:00
krzys-h
52a3e0b24f
Fixed minimap texture disappearing on texture settings change
...
Bug mentioned by @erihel in #505
2015-07-20 21:22:34 +02:00
krzys-h
4741118b61
Added new options to configuration presets
2015-07-20 20:47:44 +02:00
krzys-h
5593f427f6
Proper fix to #94 (finally!!!!)
...
It was so simple, wasn't it?
Additionaly:
* fixed texture recoloring after changing texture settings while simulation is running
* fixed annoying "could not open textures/shadow*.png" messages
* don't ChangeColor() if not in simulation to reduce lag in settings
2015-07-20 19:35:20 +02:00
krzys-h
7b3ae32626
Shadow mapping now disables old shadows
2015-07-20 18:56:15 +02:00
krzys-h
f03734d17f
Added shadow mapping to settings screen
2015-07-20 18:42:09 +02:00
krzys-h
e2ebcb769e
Added MSAA to settings screen
2015-07-20 16:29:09 +02:00
krzys-h
90756f8b34
Added FilterMode, MipmapLevel and Anisotropy to settings screen
2015-07-20 13:56:45 +02:00
krzys-h
a879e496f5
Removed unused texture quality setting
2015-07-20 12:21:16 +02:00
krzys-h
02c24fbf27
CProfile -> CConfigFile
2015-07-19 16:05:09 +02:00
Tomasz Kapuściński
644f5b4d7f
Corrected some problems with dynamic shadows
2015-07-19 00:07:59 +02:00
Piotr Dziwinski
a872ea128b
Add MakeUnique template to avoid use of naked new
2015-07-17 20:06:59 +02:00
krzys-h
2b9811d225
Movie lock refactoring
2015-07-16 22:09:50 +02:00
krzys-h
6e404f5aa2
Better mouse scaling on widescreen resolutions
2015-07-13 11:58:52 +02:00
Piotr Dziwinski
e8582d214c
CStaticObject subclass using new model framework
...
* added reading/writing working version of new model format V3
* added CStaticObject with minial interface intended for
non-interactive static objects like trees
* converted first model, tree0, to new format
2015-07-11 19:52:38 +02:00
krzys-h
36d08e852c
Better splashscreen scaling on widescreen resolutions
2015-07-11 12:57:18 +02:00
Piotr Dziwinski
93e950584a
Refactor model-related code
...
* refactored model loading code based on code from dev-models
* support new model format V2 (without LOD levels)
* removed LOD levels support in CEngine and from model files
* preparations for new model format V3:
- support for multiple meshes in one model file
- support for saving crash spheres and shadow spots
- removed all direct dependencies on CEngine enum values
- quantized model rendering states to new flags and enums
2015-07-09 21:37:04 +02:00
krzys-h
c84ce92a86
Fixed F12 debug screen background
2015-07-09 18:50:11 +02:00
Tomasz Kapuściński
37e2f24fbc
Corrected small rendering problem
2015-06-25 11:47:42 +02:00
Tomasz Kapuściński
3cc2857372
Small corrections in MSAA implementation
2015-06-22 23:42:01 +02:00
Piotr Dziwinski
8806d1708d
Proper CAuto, CBrain, CMotion, CPhysics, CPyro lifetime management
...
* change manual memory manament to std::unique_ptr
* create CPyroManager
* finally get rid of CInstanceManager
2015-06-22 21:58:58 +02:00
Tomasz Kapuściński
f2318803e5
Added Multisample anti-aliasing (MSAA)
2015-06-22 00:56:47 +02:00
Tomasz Kapuściński
7d57ec634e
Refactored framebuffer implementations
2015-06-21 18:48:31 +02:00
Tomasz Kapuściński
94851c2694
Merge branch 'dev' of https://github.com/colobot/colobot into dev
2015-06-20 20:02:11 +02:00
Tomasz Kapuściński
ec3069eea7
Defaulted shadow color value to 0.5
2015-06-20 20:02:06 +02:00
Piotr Dziwinski
f9b09d08f0
Create CObjectFactory
...
* move functions creating objects to new class CObjectFactory
* replace calls to CObject::Create*() with CObjectManager::Create()
* move creation/deletion of some objects to better places
* make CModelManager non-singleton
* clean up some code in changed functions
2015-06-20 19:37:25 +02:00
Tomasz Kapuściński
a880210b3d
Added ShadowRange option
2015-06-15 18:41:31 +02:00
Tomasz Kapuściński
d112971c3e
Corrected shadow mapping and added experimental self-shadowing
2015-06-01 17:22:49 +02:00
Tomasz Kapuściński
e1a0f5b1c7
Added OpenGL 2.1 engine
2015-05-27 22:12:02 +02:00
Tomasz Kapuściński
8abdd4b740
Improved shadow mapping
2015-05-21 18:18:46 +02:00
Tomasz Kapuściński
3a1dffd8df
Fixing some warnings
2015-05-19 17:15:08 +02:00
Tomasz Kapuściński
933609967a
Added OpenGL 3.3 graphics implementation
2015-05-19 14:29:31 +02:00
Tomasz Kapuściński
d210dcf70e
Implemented graceful degradation of shadow quality when not enough texture units are available
2015-05-15 10:12:35 +02:00
Tomasz Kapuściński
e747443312
Increased quality of dynamic shadows
2015-05-14 15:31:57 +02:00
Tomasz Kapuściński
2665847c41
Added support for offscreen rendering and high resolution shadow maps
2015-05-12 13:09:31 +02:00
Tomasz Kapuściński
b033e35385
Transparent textures no longer cast shadows in transparent parts
2015-05-11 18:00:02 +02:00
Tomasz Kapuściński
0b2f00530b
Added experimental support for dynamic shadows (shadow mapping)
2015-05-11 15:21:17 +02:00
Tomasz Kapuściński
d3b052f19b
Implemented trilinear filtering, mipmap level setting and anisotropic filtering
2015-05-06 17:55:10 +02:00
krzys-h
eec6041104
Refactoring of input and input bindings, CInput class
2014-12-11 19:14:33 +01:00
Piotr Dziwinski
f30592bf56
Better fix for #94
2014-11-22 13:30:50 +01:00
krzys-h
dbdaecd1e8
Fixed texture recoloring reset
...
Partially fixes #218
2014-11-11 15:32:38 +01:00
krzys-h
ef35a3a2ef
Custom path to SecondTexture, closes #370
2014-11-10 20:46:39 +01:00
krzys-h
6d2fd18b41
Implemented mission timer
2014-10-29 17:53:46 +01:00
krzys-h
d91569e165
Showing coordinates in stats menu (F12/showstat); removed "showpos" cheat
...
Issue #277
Conflicts:
src/object/cheat.cpp
src/object/robotmain.cpp
src/object/robotmain.h
2014-10-29 16:08:55 +01:00
krzys-h
9d68868f8e
Possible fix for #339 (?)
2014-10-25 18:00:39 +02:00
krzys-h
97b7c0cab1
Fixed map turning gray after resizing window
2014-10-20 21:54:52 +02:00
krzys-h
f65b00089a
Merge branch 'dev' into dev-physfs
...
Conflicts:
data
2014-10-14 15:42:19 +02:00
krzys-h
9fd6cf5449
Changed all occurences of PPC in the code to TerranovaTeam
2014-10-14 15:26:18 +02:00
Piotr Dziwinski
5274acd624
Merge with dev
2014-10-07 22:15:40 +02:00
krzys-h
b3fa72c007
Moved effect??.png textures and made pos= in GroundSpot optional
2014-09-27 18:26:29 +02:00
krzys-h
4a202a086f
Fixed #314
2014-08-06 17:18:52 +02:00
krzys-h
7131abd385
Fixed SatCom image loading
...
Now LoadTexture/SetTexture functions require full path with "textures/" directory
2014-07-24 22:17:49 +02:00
Mohamed Waheed
117a5289ea
fixed issue #223 about disabling shadows/ground textures
2014-07-12 19:37:34 +00:00
krzys-h
96d49d84aa
Merge branch 'dev' into dev-physfs
...
Conflicts:
data
src/app/gamedata.cpp
src/ui/control.cpp
src/ui/edit.cpp
src/ui/maindialog.cpp
2014-07-11 15:24:44 +02:00
krzys-h
106ec014b8
Fixed texture and script loading
2014-07-10 16:25:40 +02:00
Mohamed Waheed
b7125a5b24
formatting and enhancements for savefile screenshot feature
2014-06-24 20:27:31 +03:00
Mohamed Waheed
613e1d74c4
implemented savefile screenshot feature
2014-06-24 01:35:05 +03:00
Krzysztof Dermont
754154341d
More work on PhysFS support
...
* added output stream
* fixed music loading
2014-06-22 15:01:06 +02:00
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
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
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
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
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
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
XienDev
658ebe015f
Fix for shadows (bugs #176 and #132 )
2013-04-29 13:51:37 +03: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 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
Piotr Dziwinski
a937a7b6ec
Changed model min/max to LOD levels
2013-01-27 11:43:53 +01:00
Piotr Dziwinski
d1942e1216
Correct font scaling with resolution
2013-01-04 00:29:19 +01:00
Piotr Dziwinski
2ebe1fbcb6
Fixed spider and worm model loading
2012-12-28 13:23:49 +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
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
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
6fdaf5de46
CParticle rewrite
2012-10-05 18:59:49 +02:00
Piotr Dziwinski
85d253b094
Fixed bugs in texture coloring
2012-09-30 11:26:59 +02:00