Tomasz Kapuściński
517d6f069a
Reimplemented drawing primitives in OpenGL 3.3 engine
2016-02-15 20:31:32 +01:00
Tomasz Kapuściński
79c21f6676
Moved LightLocations to outside of UniformLocations
2016-02-15 20:05:25 +01:00
krzys-h
977607a934
Updated license headers
2016-02-13 14:11:30 +01:00
krzys-h
55412842df
Fixed some code style warnings
2016-02-13 13:46:56 +01:00
Tomasz Kapuściński
6b7e6cbc75
Added rendering modes and implemented additional OpenGL 2.1 shaders
2016-02-13 03:54:49 +01:00
Tomasz Kapuściński
bf8916b9eb
Changes in detection of graphics hardware capabilities
2016-02-12 16:14:29 +01:00
Tomasz Kapuściński
b6faadca03
Rewritten OpenGL 2.1 engine's two-sided lighting
2016-02-11 15:04:07 +01:00
Tomasz Kapuściński
32b480b226
Rewritten lighting in OpenGL 2.1 engine
2016-02-10 23:38:49 +01:00
Tomasz Kapuściński
898001e065
Changed CGL33Device requirement to OpenGL 3.2
2016-02-10 22:50:40 +01:00
Tomasz Kapuściński
447b466d6e
Optimizations in graphics engines
2016-02-10 21:40:41 +01:00
Tomasz Kapuściński
12067c1b9f
Optimized light updating in CGLDevice
2016-01-30 18:51:13 +01:00
Tomasz Kapuściński
9db943b820
Optimized matrix operations in CGLDevice
2016-01-30 17:41:11 +01:00
Tomasz Kapuściński
05e19f47c3
Corrected MSAA support detection
2016-01-29 12:02:36 +01:00
Tomasz Kapuściński
00221c9a3f
Optimized DrawPrimitives() in CGL33Device
2015-12-24 00:21:57 +01:00
Tomasz Kapuściński
d944a55905
Optimized DrawPrimitives() in CGL21Device
2015-12-24 00:06:58 +01:00
Tomasz Kapuściński
f2a295348c
Optimized DrawPrimitives() in CGLDevice
2015-12-23 23:49:00 +01:00
Tomasz Kapuściński
d82b5ef746
Added DrawPrimitives() for drawing multiple primitives (not optimized for now)
2015-12-23 23:23:10 +01:00
Tomasz Kapuściński
22e963e2c4
Added information about graphics card to error message
2015-12-20 17:34:55 +01:00
Tomasz Kapuściński
aa2e14219e
Added warnings and error messages to graphics devices regarding unsupported OpenGL version
2015-12-18 21:04:16 +01:00
Piotr Dziwinski
66ce745be0
Introduce forward declarations as suggested by colobot-lint
2015-09-27 16:28:14 +02:00
krzys-h
a0034f8000
Finalized SDL2 migration
2015-09-25 21:26:49 +02:00
krzys-h
dfa06dafcf
Refactored window resize
2015-09-25 11:11:35 +02:00
krzys-h
53e4470dbf
Started SDL2 migration
2015-09-24 21:09:46 +02:00
Tomasz Kapuściński
658e2ff1be
Possible fix for issue #520
2015-09-02 21:35:43 +02:00
Piotr Dziwinski
b93f610930
Fix license header in all files
2015-08-22 16:40:02 +02:00
Piotr Dziwinski
ba3284b8b8
Apply clang-modernize -add-override
2015-08-17 22:12:09 +02:00
Piotr Dziwinski
2289d69735
Replace NULL -> nullptr
2015-08-16 12:43:42 +02:00
Piotr Dziwinski
d703eb7165
Compile fixes for MSVC2013
2015-08-16 00:39:08 +02:00
Piotr Dziwinski
0258b63d39
Fix memory leak in creating textures
2015-08-13 23:42:27 +02:00
Piotr Dziwinski
93a06c0c23
Remove manual memory management from graphics classes
2015-08-12 21:07:16 +02:00
Piotr Dziwinski
f29a826ad2
Fix Clang warnings about use of abs()
2015-08-06 14:31:40 +02:00
Piotr Dziwinski
111d279de5
Add proper initializations in OpenGL classes
2015-08-06 08:22:11 +02:00
Piotr Dziwinski
c38ecd67ea
Fix crash in glDeleteTexture
2015-08-05 23:06:54 +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
72b9738eb9
Fixed possible problems when trying to use shadow maps in unsupported configuraions ( #522 )
2015-07-20 22:34:39 +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
02c24fbf27
CProfile -> CConfigFile
2015-07-19 16:05:09 +02:00
Tomasz Kapuściński
1d69021e94
Potential fix to #511
2015-07-18 02:02:38 +02:00
Piotr Dziwinski
a872ea128b
Add MakeUnique template to avoid use of naked new
2015-07-17 20:06:59 +02:00
Tomasz Kapuściński
195667ab2c
Potential fix for rendering problems in OpenGL 2.1 engine under Linux
2015-06-26 19:55:46 +02:00
Piotr Dziwinski
88ec9aaae3
Drop GCC 4.6 support
2015-06-26 00:24:32 +02:00
Piotr Dziwinski
7e21d3bd79
Get rid of some more manual memory management
2015-06-26 00:24:05 +02:00
Tomasz Kapuściński
f2318803e5
Added Multisample anti-aliasing (MSAA)
2015-06-22 00:56:47 +02:00
Piotr Dziwinski
5f1d3c21d4
Fix some more warnings reported by Clang
2015-06-21 19:46:01 +02:00
Tomasz Kapuściński
7d57ec634e
Refactored framebuffer implementations
2015-06-21 18:48:31 +02:00
Tomasz Kapuściński
ff44637d49
Removed VBO override switch and some unnecessary code
2015-06-16 18:00:42 +02:00
Tomasz Kapuściński
26ec927b37
Corrected compilation errors and warning
2015-06-15 20:27:44 +02:00
Tomasz Kapuściński
012eb10e19
Added automatic graphics detection (-graphics auto)
2015-06-15 20:20:03 +02:00
Tomasz Kapuściński
ae29ebead3
Defaulted shadow color to 0.5 in OpenGL 2.1 engine
2015-06-05 19:48:28 +02:00
Tomasz Kapuściński
66d865942c
Added OpenGL 2.1 shaders for per-pixel lighting
2015-06-02 16:55:03 +02:00
Tomasz Kapuściński
d477caed3e
Second attempt at correcting compilation error
2015-06-01 18:41:14 +02:00
Tomasz Kapuściński
7acca9feb8
Corrected compilation error and unsigned comparison warnings
2015-06-01 17:45:51 +02:00
Tomasz Kapuściński
a0c56f54cb
Shader and buffer optimizations
2015-06-01 17:21:10 +02:00
Tomasz Kapuściński
d33ddae15a
Added warnings and information what shader files are not available
2015-05-29 12:39:14 +02:00
Tomasz Kapuściński
e1a0f5b1c7
Added OpenGL 2.1 engine
2015-05-27 22:12:02 +02:00
Tomasz Kapuściński
08bf066f78
Added shadow color setting
2015-05-27 21:58:32 +02:00
Tomasz Kapuściński
fa67e815b8
Implemented per-vertex lighting and set it as default in OpenGL 3.3 engine
2015-05-22 18:53:51 +02:00
Tomasz Kapuściński
f67c01e5e7
Added proper render to texture support
2015-05-21 18:03:17 +02:00
Tomasz Kapuściński
a045bf3830
Added shadow ambient support
2015-05-21 16:47:24 +02:00
Piotr Dziwinski
b1e8341475
Move OpenGL 3.3 shaders to main repository
2015-05-20 23:30:46 +02:00
Piotr Dziwinski
619ac3cf8d
Fixed glew linking problem on MXE
2015-05-19 23:03:32 +02:00
Tomasz Kapuściński
df8223700b
Corrected compilation error
2015-05-19 16:26:41 +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
03244ecdfd
Corrected assertion error when changing offscreen rendering
2015-05-12 20:20: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
3164e7256e
Changed terrain UV mapping ( fixes #306 for OpenGL engine, will cause similar problem on Direct3D)
2015-05-07 12:58:05 +02:00
Tomasz Kapuściński
d3b052f19b
Implemented trilinear filtering, mipmap level setting and anisotropic filtering
2015-05-06 17:55:10 +02:00
Piotr Dziwinski
3dce58c0fa
Replace override and noexcept with macros
2015-04-27 18:07:42 +02:00
Tomasz Kapuściński
990ecf7290
Corrected clamping mode in textures
2014-10-26 22:24:12 +01:00
krzys-h
c9eb3ce5c5
Another possible (and more likely correct) fix for #339
2014-10-25 18:17:03 +02:00
Tomasz Kapuściński
1aebe8af03
Added support for VBO in OpenGL older than 1.5 if ARB extension is present
2014-10-24 00:29:26 +02:00
Tomasz Kapuściński
d3a722a0c5
Improved VBO support detection
2014-10-22 00:53:35 +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
4bdfa0aa4e
Remove unused accessors from CDevice
2014-08-12 18:18:30 +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
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 'OdyX' Raboud
9e439d88bf
Fix the detection of alpha-channel in textures as created by IMG_Load
...
This fixes the textures loading under Mac OS X
2013-10-28 15:23:56 +01: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
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
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
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
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
Piotr Dziwinski
f7f6e10c70
Added check and warning about non-power-of-2 textures
2013-05-11 21:40:09 +02: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
bc859c4c59
VBO override option; argv parsing using getopt
...
* added -vbo option to override autodetection of OpenGL VBO extension
* refactored argument parsing to use getopt()
* fixed failing UTs
2013-03-10 15:44:21 +01:00
Piotr Dziwinski
209c6412ae
Refactoring in tests infrastructure
...
* all tests are now in /test/ subdirectory
* unit tests concatenated to one executable (TODO: ui, common)
* preparation for test environments (OpenGL and others)
* removed old TestCBot
2013-02-03 20:03:36 +01:00
Piotr Dziwinski
5a6b3f005a
Merge dev and dev-graphics
2013-01-07 19:43:04 +01:00
Piotr Dziwinski
edb1c0cbd6
GLEW fix for some graphics drivers
2013-01-06 23:13:05 +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
8818a8e5db
Corrected OpenGL extension detection
...
- corrected multitexture and VBO detection
- GLEW is now a required library
- minor CMakeLists refactoring
2013-01-05 23:03:06 +01:00
Piotr Dziwinski
89a3f586a2
Merge branch 'dev' into dev-graphics
2013-01-04 00:05:28 +01:00
Piotr Dziwinski
2c0c5ddda1
Fixed stupid debug code
...
Terrain VBOs should work now
2013-01-03 23:50:17 +01:00