Commit Graph

4735 Commits

Author SHA1 Message Date
Christoph Oelckers 7a727b6807 Merge branch 'master' into v2.x 2014-08-21 13:44:41 +02:00
Christoph Oelckers 816999109e Merge branch 'master' of https://github.com/rheit/zdoom 2014-08-21 13:42:43 +02:00
Christoph Oelckers eebd5c9d4d - fixed bad edit in linedef translation. 2014-08-21 13:38:47 +02:00
Christoph Oelckers df0d3543a8 - fixed: *ALL* original ceiling crushers, not just type 49, require a distance of 8 to the floor for the destination height. For the silent types this required a new action special, Ceiling_CrushAndRaiseSilentDist. This change only affects the XLAT mapping, the Hexen format types behave as before.
- removed the redundant internal ceilCrushAndRaiseDist ceiling movement type. It was precisely the same as ceilCrushAndRaise in all details.
2014-08-21 13:01:12 +02:00
Christoph Oelckers d794d9651f Merge branch 'upstream' of https://github.com/Edward850/zdoom 2014-08-21 12:08:24 +02:00
Christoph Oelckers 274a4216ea - disabling inlining in the GL loader produces an executable that's 8kb smaller. 2014-08-21 11:47:53 +02:00
Christoph Oelckers 78815a9601 -we need this, too. 2014-08-21 11:29:43 +02:00
Christoph Oelckers e132fc5eed - replaced GLEW with GLLoadGen for GL access. This allows to have a header that only contains what's actually required, namely OpenGL 3.3 plus glBegin and glEnd which are the only compatibility functions needed for the fallback render path.
GLEW has two major problems:

- it always includes everything, there is no way to restrict the header to a specific GL version
- it is mostly broken with a core profile and only works if all sanity checks get switched off.
2014-08-21 11:02:46 +02:00
Edward Richardson 07d7f690e8 Non-wall sprites need their original depth checks 2014-08-21 20:03:17 +12:00
Christoph Oelckers 6f65bccf1c - reinstated the far superior assembly HQnX version for Visual C++. 2014-08-20 12:45:33 +02:00
Christoph Oelckers 86d37e06f9 - lowered requirements of GL 2.x to OpenGL 3.3.
There was one issue preventing the previous 2.0 betas from running under GL 3.x: The lack of persistently mapped buffers.
For the dynamic light buffer today's changes take care of that problem.
For the vertex buffer there is no good workaround but we can use immediate mode render calls instead which have been reinstated.

To handle the current setup, the engine first tries to get a core profile context and checks for presence of GL 4.4 or the GL_ARB_buffer_storage extension.
If this fails the context is deleted again and a compatibility context retrieved which is then used for 'old style' rendering which does work on older GL versions.

This new version does not support GL 3.2 or lower, meaning that Intel GMA 3000 or lower is not supported. The reason for this is that the engine uses a few GL 3.3 features which are not present in the latest Intel driver.
In general the Intel GMA 3000 is far too weak, though, to run the demanding shader of GZDoom 2.x, so this is no real loss. Performance would be far from satisfying.

A command line option '-gl3' exists to force the fallback render path. On my Geforce 550Ti there's approx. 10% performance loss on this path.
2014-08-19 15:56:33 +02:00
Christoph Oelckers a2dc4afe3f - screwed by the editor's autocompletion... (wrong GL flag was used...) 2014-08-19 14:25:47 +02:00
Christoph Oelckers 00d7707aef - allow reallocation of light buffer if more lights are needed.
- added a light preprocessing pass to the renderer so that a non-persistent buffer can be used with minimal mapping/unmapping. This only gets used if necessary because it adds some overhead to the renderer.
2014-08-19 14:18:21 +02:00
Christoph Oelckers 38796e7714 - removed some obsolete and useless GL calls. 2014-08-17 11:41:03 +02:00
alexey.lysiuk b461000795 Fixed crash on opening 7z/LZMA archives, x64 only
With Position Independent Code (PIC) enabled on x64, non-MSVC compilers use wrong inline assembly for cpuid
2014-08-13 22:46:08 +03:00
Christoph Oelckers 5d6ef5cb16 Merge branch 'master' into v2.x 2014-08-11 13:19:42 +02:00
Christoph Oelckers c30cfb3190 Merge branch 'master' of https://github.com/rheit/zdoom 2014-08-11 13:18:21 +02:00
Christoph Oelckers f482dc094d fixed: R_PointOnSideSlow had precision issues with very short lines.
When this function was originally written there was no possibility of fractional vertex coordinates so it threw away the fractional parts of the node's directional vector (which in the original nodes was always 0.)
Now, with UDMF and high precision vertices this no longer works and the loss of significant parts of their value caused this code to produce erroneous results if the linedefs were only a few map units long and using fractional positions.
2014-08-11 12:27:04 +02:00
Christoph Oelckers 48163de8e2 must include doomdef.h in cmdlib.h to get TICRATE. 2014-08-11 11:47:14 +02:00
Christoph Oelckers f0eccb9d15 - BlueShadow's submission for keeping the max save amount of BasicArmorPickups around when picking up armor bonuses. 2014-08-11 10:08:49 +02:00
Christoph Oelckers 259466c3d4 fixed time printing.
- In ZDoom the timer runs a bit too fast because roundoff errors make 35 tics only last 0.98 seconds. None of the internal timing has been changed, only the places where a time value is printed it will get adjusted for this discrepancy.
2014-08-11 09:39:38 +02:00
Christoph Oelckers 1fcde91298 - BlueShadow's GetArmorInfo submission. 2014-08-08 09:25:35 +02:00
Randy Heit fefe6aa2c1 Specie -> Species
- specie: money in the form of coins rather than notes
- species: a group of living organisms consisting of similar individuals
  capable of exchanging genes or interbreeding
2014-08-07 22:40:12 -05:00
Randy Heit 75dc7de632 Merge branch 'master' of github.com:rheit/zdoom 2014-08-07 22:28:35 -05:00
Randy Heit 46592f5f6d Don't clamp SHADE2LIGHT
- Light levels aren't stored in bytes anymore, so there's no reason to
  clamp it anymore when loading Build maps.
2014-08-07 22:27:48 -05:00
Randy Heit fbb5689f29 Eliminate extra vars from FWallCoords
- cx1, cx2, cy1, and cy2 are not used anywhere, so get rid of them.
- Also annotated the comments to indicate the corresponding arrays in the Build engine.
2014-08-07 22:26:24 -05:00
Randy Heit e6a1d6b516 Parse more info from Blood's map header 2014-08-07 22:00:02 -05:00
Randy Heit 9659b894a3 Skip neardepth/fardepth checking in R_DrawSprite
- Wall sprites now clip much, much better than before.
2014-08-07 20:43:09 -05:00
Randy Heit 7b02027ba7 Fixed: Wall sprites cut off one pixel short of the window's right border 2014-08-07 20:00:49 -05:00
Randy Heit 6303935ad6 Use wall sprite Y scale 2014-08-07 19:57:55 -05:00
Randy Heit 0aa67c68ab Redo lighting for each wall sprite
- Because previously it just reused whatever the most recently drawn wall
  used.
2014-08-07 17:23:06 -05:00
Randy Heit e1ee80661e Make FWallCoords' members lowercase
because they're kind of a pain to type when all uppercase.
- Also, make its sx1 and sx2 members shorts, so it takes less space, since
  it's getting crammed into a vissprite now.
2014-08-07 17:12:04 -05:00
Leonard2 8c4c011ca2 MTHRUSPECIES on puffs
You were right it's cleaner that way
2014-08-07 18:05:39 +02:00
Leonard2 5400ce1a21 +MTHRUSPECIES on puffs 2014-08-07 15:50:21 +02:00
Christoph Oelckers b9ffb51d0c - small but important optimization: Two-sided lines with both sides in the same sector don't really require vertex splitting for precise rendering. 2014-08-04 23:00:40 +02:00
Christoph Oelckers 00e4d4e2df Merge branch 'master' into v2.x
Conflicts:
	src/gl/shaders/gl_shader.cpp
2014-08-03 18:16:15 +02:00
Christoph Oelckers 09a68e8c93 - fixed incorrect function call in shader compiler. 2014-08-03 18:14:19 +02:00
Christoph Oelckers 370582d2fa - corrected versioning info for development branch. 2014-08-03 12:25:59 +02:00
Christoph Oelckers 19cfffebb3 - fixed: the WallTypes enum contained a value that no longer was valid. This was fixed orignally last week but it seems to have gotten lost. 2014-08-03 12:21:05 +02:00
Christoph Oelckers c98e3ca99d Merge branch 'master' into v2.x 2014-08-03 10:58:41 +02:00
Christoph Oelckers b3e0d93385 - implemented rendering of wall sprites. 2014-08-03 10:57:58 +02:00
Christoph Oelckers 398d902e7e - split off sprite clipping adjustment code into its own function. 2014-08-03 10:22:12 +02:00
Christoph Oelckers 1b55c17379 Merge branch 'master' of https://github.com/rheit/zdoom 2014-08-03 10:08:05 +02:00
Randy Heit 1d02ad3aa2 Merge branch 'master' of github.com:rheit/zdoom 2014-08-02 22:40:02 -05:00
Randy Heit d0043bed78 Q&D port of decal code to draw generic wall sprites
- This still doesn't use all the sprite properties correctly. It also
  looks like they're going to need different code to build the clipping
  arrays. But at least wall sprites are drawn at the proper angle now!
2014-08-02 22:35:57 -05:00
Christoph Oelckers a1b579e5fc - added menu entry for newly added hud_showweapons CVAR. 2014-08-03 01:20:12 +02:00
Christoph Oelckers eef4d1fac1 Merge branch 'fix_build_nonmsvc' of https://github.com/alexey-lysiuk/gzdoom 2014-08-03 01:17:15 +02:00
Christoph Oelckers cd5e429d3b - adjust version number. 2014-08-02 23:12:08 +02:00
Christoph Oelckers a63871d170 - at least for Intel GMA we need shaders without 'discard' to render non-transparent stuff. The performance penalty is rather hefty here. 2014-08-02 21:06:34 +02:00
Christoph Oelckers a97b58fa27 - added check for light uniform buffer overflows, because uniform buffers on Intel are rather small. 2014-08-02 20:41:13 +02:00