Commit Graph

9738 Commits

Author SHA1 Message Date
alexey.lysiuk 3aac058022 Fixed loading of Hexen and Strife
Names in sprite offsets files for these IWADs contain '[' and '\' characters and such names need to be quoted
2016-12-08 12:07:12 +02:00
Christoph Oelckers 0720dd9816 Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	src/p_map.cpp
2016-12-08 10:17:12 +01:00
Christoph Oelckers 66d287ea81 - fixed: Stepping through a ceiling portal on a two-sided line did not work.
- fixed: Stepping up an actor checked against the sector's own ceiling, even if it was a crossable portal.
2016-12-08 10:16:22 +01:00
Christoph Oelckers 12f0b56036 - fixed: Stepping up through a portal did not work when the step line was two-sided. This special case was only implemented for one-sided lines
- fixed: The portal collector set bad flags for collected lower portals.
2016-12-08 00:59:04 +01:00
Christoph Oelckers 1e950d75bd - made dynamic light attenuation completely opt-in. This can be done either by setting a MAPINFO option for lights that do not automatically specify it and with a light property. The light property will always take precedence, if set. 2016-12-07 23:17:18 +01:00
Christoph Oelckers aa939ef17a Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-12-07 22:53:06 +01:00
Christoph Oelckers f547daccc8 Merge branch 'master' of https://github.com/rheit/zdoom
# Conflicts:
#	src/CMakeLists.txt
2016-12-07 22:51:05 +01:00
Christoph Oelckers 6adcba3c4b - fixed linkage for fuzzviewheight
- fixed naming conflict with GCC's virtual table.
2016-12-07 18:39:09 +01:00
Edoardo Prezioso e4c208602d - Fixed GCC/Clang warning/error. 2016-12-07 16:07:25 +01:00
Christoph Oelckers 2677976cae - r_drawt.cpp is no longer needed. 2016-12-07 15:44:25 +01:00
Christoph Oelckers a118903e3e - complete removal of assembly stuff. Nothing of this gets used anymore. 2016-12-07 14:41:21 +01:00
Christoph Oelckers ed141943e1 - removed use of BestColor_MMX because there is no measurable improvement at all on a modern system. On top of that this function does not get called nearly often enough to justify the hassle. Like DoBlending this would require hundreds of calls per frame to make any impact that would be measurable. 2016-12-07 14:40:19 +01:00
Christoph Oelckers 5910067c44 - discontinue using the MMX assembly version of DoBlending.
Some benchmarking shows that on SSE systems it only harms performance and compared to the intrinsics version the gains are too marginal for something this infrequently called.
Doing 100000 calls of DoBlending results in a 5 ms decrease of using assembly vs intrinsics on a 3.4 GHz Core i7, meaning that even on a computer that is 10x slower you can still do 1000 or so blends per frame without a speed hit.
2016-12-07 14:40:18 +01:00
Rachael Alexanderson 2200f6eda3 - fixed: compile error with SDLGLVideo class macro 2016-12-07 13:21:28 +01:00
Christoph Oelckers 42346c58d3 - disabled assembly entirely to make the MT drawer submission compile.
This still requires a review of the two non-drawer functions that get 'lost'.
2016-12-07 12:31:43 +01:00
Christoph Oelckers 1e42c6f227 - added copyright headers to two files missing them. 2016-12-07 11:40:59 +01:00
Magnus Norddahl 3ff91807b8 Move swrenderer into a namespace, add multithreading framework, and move drawers to commands 2016-12-07 09:34:49 +01:00
Christoph Oelckers 56f67726f0 - seems a Linux file was missed when refactoring the IMPLEMENT_CLASS macros. 2016-12-07 00:54:40 +01:00
Christoph Oelckers 6271ecf2af Merge remote-tracking branch 'remotes/zdoom/master' 2016-12-06 22:47:53 +01:00
Christoph Oelckers c3fb43db3a Merge branch 'gz-zscript' 2016-12-06 22:47:37 +01:00
Christoph Oelckers 52645afb4b - for the time being, make ZScript command line switch locked so that everybody understands that it's not ready for use in released mods yet. 2016-12-06 22:42:10 +01:00
Christoph Oelckers a3ae05299b - fixed: glPolygonOffset was not called for flat sprites. 2016-12-06 19:17:02 +01:00
Christoph Oelckers c115c0a5b2 - fixed: Random flicker lights must set up their size on the first tic they are run. If not they will keep the radius of the previous effect which may be too large. 2016-12-06 18:35:34 +01:00
Christoph Oelckers d04c37101e Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-12-06 12:59:03 +01:00
Christoph Oelckers 17698467d7 - made application of dynamic lights to additively blended surfaces a MAPINFO option. In most cases this is not wanted but sometimes this can be used to good effect so it should be there as an option. 2016-12-06 12:58:45 +01:00
Christoph Oelckers fb7b49bba1 Merge branch 'master' of https://github.com/rheit/zdoom 2016-12-06 12:35:22 +01:00
Christoph Oelckers e41e404143 Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript 2016-12-06 12:33:52 +01:00
Christoph Oelckers b2d1b0d7a6 - fixed: FTranslatedLineTarget::angleFromSource returned the attack angle, not the angle between actors when returned from P_LineAttack.
For most attack functions this is wrong, it's only the Hexen fighter attack needing this particular value, so it has been split up into two return values now.
2016-12-06 11:04:54 +01:00
Christoph Oelckers daaa6e7831 - fixed bad parameter in AActor::ModifyDamage. 2016-12-06 00:00:56 +01:00
Rachael Alexanderson 824705eaca - Fixed compile errors with maxviewpitch update 2016-12-05 22:32:18 +01:00
Rachael Alexanderson c53a20aea6 - Notify gamesim of maxviewpitch change. 2016-12-05 22:32:18 +01:00
Christoph Oelckers 092461ed34 - make dynamic object casts a dedicated VM instruction instead of a builtin function.
This can see some heavy use in iterators where saving several hundreds of function calls can be achieved. In these cases, using a function to do the job will become a significant time waster.
2016-12-05 14:52:34 +01:00
Christoph Oelckers f722967abe - added automatic type deduction capabilities for local variables. If you type 'let variable = value;' the type of 'variable' will be deduced from the given value. This is mostly of interest for type casting pointers, because 'let p = Classtype(objectvar);' does not require writing the class type name twice. 2016-12-05 13:24:42 +01:00
Christoph Oelckers 67bdac5227 Merge branch 'master' into zscript 2016-12-05 12:03:59 +01:00
Christoph Oelckers 7624973ef3 - updated list of render styles in UDMF spec. 2016-12-05 11:50:41 +01:00
Christoph Oelckers c0a622eb54 - removed pointless assignment. 2016-12-05 02:08:26 +01:00
Christoph Oelckers f6fb27b683 - deleted rt_copy*col and rt_map*col assembly versions after running benchmarks that show inferior performance to the C++ versions on both older and newer CPUs. 2016-12-05 00:46:58 +01:00
Christoph Oelckers 86fcc3fd21 - added a heavily optimized version of vlinec4 for x64. The original loaded everything from the global variables. While this is acceptable in 32 bit code because it has an immediate register load instruction, for 64 bit this does not exist. Accessing these variables from the stack or a register doubles the execution speed of this function and on a Core i7-3770 from 2012 is even faster than the assembly version. Right now the assembly version is still there, pending a benchmark run on an older 64 bit system. 2016-12-04 23:53:36 +01:00
Christoph Oelckers f4454d2e00 - minor, but very effective optimization for R_DrawSpanMasked: Do not store the texel value in a byte. Store it in a local int variable. This allows the compiler to read it with a zero extending instruction instead of using a byte reading instruction and then later having it to convert to an int anyway. This removes one instruction from the loop which results in a 10% performance increase on 32 bit. 2016-12-04 19:32:54 +01:00
Christoph Oelckers c9caaf08c8 - removed asm version of R_DrawFuzzColumn, because even on my 9 year old laptop this was significantly slower than the C version. 2016-12-04 18:38:38 +01:00
Christoph Oelckers 13efb34964 - removed the asm version of R_DrawColumn because it doesn't provide any significant benefit.
On modern systems it is actually slower than the C version, only on old ones it is marginally faster - but the overall execution time for this function is so low that even in the worst case scenario the minor loss of performance on older systems is still not relevant.
2016-12-04 18:05:34 +01:00
Christoph Oelckers 8fd03bc4a3 - fixed a few prototypes. 2016-12-04 16:57:10 +01:00
Christoph Oelckers 93163d12f1 - removed R_DrawColumnHorizP_ASM completely after discovering that the compiler generated code isn't really anything worse than the old assembly code. This looks like something that may have been relevant 10 years ago but today it looks like there's no need for hand optimization here anymore. And since it appears to be broken anyway, off this goes. 2016-12-04 15:31:08 +01:00
Christoph Oelckers d0cf34890c - disabled R_DrawColumnHorizP_ASM because that function appears prone to crashing when rendering decals. 2016-12-04 15:01:48 +01:00
Christoph Oelckers bf0aedfd9c Merge branch 'master' of https://github.com/rheit/zdoom into zscript 2016-12-04 14:29:24 +01:00
Christoph Oelckers 5a08768eaf - removed unused label. 2016-12-04 14:29:03 +01:00
Magnus Norddahl 0ed0c47a45 Optimize capped sky rendering by writing 4 pixels at a time in 5 bands (solid, fade, texture, fade, solid) 2016-12-04 14:28:13 +01:00
Christoph Oelckers ebdc672985 - fixed: A_Saw was using the wrong angle for adjusting the facing direction at the end. 2016-12-04 10:45:20 +01:00
Christoph Oelckers 18b953dd50 - fixed: Blasted objects should also be subject to being checked with CanCollideWith. 2016-12-04 10:34:36 +01:00
Christoph Oelckers 71e8f09126 Merge branch 'master' of https://github.com/rheit/zdoom into zscript 2016-12-04 10:27:35 +01:00