Sven Eberhardt
81ba07cc48
reproduce lights assertion in C4Application constructor
2015-02-17 21:03:50 +01:00
Sven Eberhardt
33b49e21aa
Implement loading of serialized light sections.
2015-02-17 21:02:37 +01:00
Sven Eberhardt
68eb45732e
Log all relevant data for reproduction on tri.fanRY > tri.fanLY assertion.
...
Just compiling the logged light section and calling CalculateTriangles on it should be used to reproduce the assertion.
2015-02-17 01:31:10 +01:00
Nicolas Hake
9bfd232ab5
Test whether GLDEBUGPROCARB's userParam is const or not
...
Depending on how current your headers are, the userParam parameter to
GLDEBUGPROCARB may be const, or it may not. The ARB has added the const
qualifier at some point after publishing the specs. Hooray for breaking
API changes.
2015-02-16 21:21:31 +01:00
Maikel de Vries
15f75f072b
show exit interaction when inside object ( #1169 )
2015-02-16 20:31:29 +01:00
Maikel de Vries
d1577dce61
fix failure sequence for Chine.ocs
2015-02-16 20:29:45 +01:00
Nicolas Hake
feb9513666
GL: Use GLAPIENTRY instead of APIENTRY
...
They're the same on Windows, but Linux doesn't have APIENTRY at all.
2015-02-16 18:48:35 +01:00
Nicolas Hake
4db690b0c6
Add copyright header to files that were missing it
2015-02-16 18:40:52 +01:00
Nicolas Hake
04df02c9df
Win: Don't write a text crash dump if the log is already closed
...
Assertion failures or crashes during process shutdown must not write to
the log file if it is already closed, or the debugging CRT will raise
another assertion.
2015-02-16 18:14:29 +01:00
Nicolas Hake
c809ab4ae3
gl: Use glDeleteTextures instead of glDeleteObject to delete textures
...
glDeleteObject doesn't delete textures, it deletes shader objects.
2015-02-16 18:07:03 +01:00
Nicolas Hake
50a81a8dc7
gl: Don't call glDeleteObjectARB on null objects
...
glDeleteObjectARB will flag GL_INVALID_PARAMETER when it's called with a
null parameter. Avoid this so the error list doesn't get tainted.
2015-02-16 17:45:17 +01:00
Nicolas Hake
cac94659d0
wGL: Allow OpenGL debugging
...
This introduces a new command line parameter "--debug-opengl", which
will create special debug OpenGL contexts and attach a callback that the
driver will invoke when it detects a problem. The callback will then
write the error message to the logfile, and break into the debugger if
one is attached.
Currently only works on Windows.
2015-02-16 17:45:10 +01:00
Nicolas Hake
00a24846cc
GL: cast gluErrorString rv to const char* before handing to StdStrBuf
2015-02-16 17:44:20 +01:00
Maikel de Vries
d2988163f5
fix flag marker redrawing on owner change
2015-02-16 17:17:18 +01:00
Nicolas Hake
eed1c43b8a
GL: Correctly encode error strings
...
gluErrorString returns latin-1 encoded strings. Our code expects to
receive UTF-8 encoded strings everywhere, so make sure that the strings
are converted before passing them on.
2015-02-16 15:39:05 +01:00
Maikel de Vries
49997045f6
fixed burned wind generator radiusin Mine Rescue
2015-02-16 14:17:05 +01:00
Maikel de Vries
346d5cd709
another batch of Graphics.png removals
2015-02-15 22:37:08 +01:00
Maikel de Vries
41040eebfd
clean up dynamite box and fix ( #1265 )
2015-02-15 21:33:52 +01:00
Nicolas Hake
a70433b6a7
Skip drawing line objects with less than two vertices ( #1263 )
...
A line object must have at least two points to plot a line through. At
any vertex count less than that, we were accessing invalid memory by
dereferencing the first element of an empty vector (VtxNum==1), or
issuing an OOB read from the vertex data (VtxNum==0).
2015-02-15 14:23:44 +01:00
Maikel de Vries
7f79c77af6
fix javelin direction when aiming
2015-02-15 12:25:03 +01:00
Maikel de Vries
6cd3b9775c
fixed power need symbol display for elevator
2015-02-15 09:34:45 +01:00
Sven Eberhardt
a7ecc86dc4
Hide normal maps from landscape drawing texture list in editor. ( #1255 )
2015-02-14 23:45:16 +01:00
Nicolas Hake
9093bde491
Suppress -Wcast-align on clang
...
Alignment doesn't matter on any platform we support, and unlike gcc,
clang uses natural alignment instead of required alignment to emit this
warning.
2015-02-14 19:45:32 +01:00
Maikel de Vries
a5b6066f25
fix removal of ownership on flag movement
2015-02-14 00:16:32 +01:00
Nicolas Hake
cdd490b53c
Set some warning flags when compiling with clang
...
The Clang warning flags are woefully underdocumented, so I've just
matched the g++ list in as much as I knew the flags existed.
2015-02-14 00:11:51 +01:00
Nicolas Hake
2b332f5a74
Adapt mape to C4Group changes
2015-02-13 20:22:41 +01:00
Nicolas Hake
09ad403d06
C4Group: Stop checking operator new return value
...
new throws std::bad_alloc on failure. It never returns NULL, so checking
for that is useless.
2015-02-13 19:46:11 +01:00
Nicolas Hake
48626ce7ae
C4Group: Change int Status members to enums
2015-02-13 18:49:23 +01:00
Nicolas Hake
340e0e3f64
Remove unused C4Group::GetStatus
2015-02-13 18:37:20 +01:00
Nicolas Hake
413e66ff97
Move C4Group::PrintInternals out of C4Group
...
C4Group::PrintInternals is only used in the c4group command line tool.
Move the code there.
2015-02-13 18:25:21 +01:00
Nicolas Hake
c1e113f1f9
c4group: Remove useless version history
...
A list of versions and dates isn't helping anyone, especially not if
no actual changelog is available.
2015-02-13 17:21:49 +01:00
Nicolas Hake
73862d8fcb
Move C4Group::View out of C4Group
...
C4Group::View is only used in the c4group command line tool, so the
right place for that code is inside the tool. Added two public constant
accessors to return the header data and entries.
2015-02-13 17:19:37 +01:00
Nicolas Hake
ff263e5433
Fix potential buffer overflow in ssprintf
...
If vsnprintf fails for other reasons than too small a buffer, it returns
a negative value. Comparing that with a size_t value promotes the
negative value to unsigned, which makes for a very large result, almost
guaranteed to be larger than the buffer size.
2015-02-12 23:55:38 +01:00
Nicolas Hake
95641b5fb0
Add a dummy declaration to ssprintf
...
G++ doesn't allow attributes on function definitions for reasons. Add a
declaration immediately before the definition so it works.
2015-02-12 23:14:16 +01:00
Nicolas Hake
e21a5bdd44
Rename BoundBy to Clamp
...
"BoundBy" sounds like a predicate. "Clamp" is a common function name for
the operation in graphics processing, so it should be familiar to users.
2015-02-12 23:05:55 +01:00
Nicolas Hake
35e7ca509b
Replace NoPointer struct with template parameter deduction
...
We're trying to ensure that no caller passes a char* to ssprintf, but a
char array instead. This is way easier done by using template parameter
deduction than a specialized class template.
2015-02-12 22:25:36 +01:00
Nicolas Hake
69cdae5ef2
Use find_package instead of raw include to find libraries
2015-02-12 20:09:58 +01:00
Maikel de Vries
de8ee9d840
fix flag removal effect on power network
2015-02-11 22:42:35 +01:00
Nicolas Hake
ea354218bb
Remove unused private field StdMeshMaterialShader::Type
...
We'll keep the parameter just in case we'll ever need the info.
2015-02-11 20:48:18 +01:00
Nicolas Hake
2d1e4caabc
Remove a superfluous endianness test
...
We're not supporting BE systems, and even when we did, I'm not sure this
test could ever have done something.
2015-02-11 20:41:35 +01:00
Maikel de Vries
cba73bafca
implement flag ownership and network change on team switch and hostility change
2015-02-11 00:02:45 +01:00
Maikel de Vries
45a8c02cd0
clean up the animal library
2015-02-11 00:02:45 +01:00
Armin Burgmeier
8825b2c2fb
Interpret normal maps for meshes in Clonk coordinates, not OGRE coordinates
2015-02-09 21:18:47 -05:00
Armin Burgmeier
bcaa2399eb
Fix shader compilation on old Intel drivers
...
See http://forum.openclonk.org/topic_show.pl?pid=28313#pid28313
2015-02-09 20:10:40 -05:00
Maikel de Vries
7f79caade5
flag library: fix on owner change and clean up
2015-02-09 19:32:15 +01:00
Maikel de Vries
b7b6b187f7
clean up gold seller library
2015-02-09 19:32:15 +01:00
Nicolas Hake
81f9ee1c85
Reset C4Group search after Add() to invalidate stale directory cache
...
Adding a file to an on-disk unpacked C4Group file needs to reset the
directory cache so C4Group doesn't return old state later.
2015-02-08 22:28:33 +01:00
Nicolas Hake
06d86f7666
Split a return into multiple statements to make it less unreadable
...
IOCCC is that way ------->
2015-02-08 22:28:32 +01:00
Maikel de Vries
e47a08aaf7
clean up more flag related libraries
2015-02-08 15:28:13 +01:00
Nicolas Hake
3f5efe65ad
Tests: Link winmm
2015-02-08 15:05:14 +01:00