Christoph Oelckers
6aecb29995
- fixed: The VM function builder was set up with the wrong number of implicit arguments.
2016-11-02 16:05:57 +01:00
Christoph Oelckers
ff66dc3189
- flatten FxBinaryLogical chains into a single node for more efficient processing.
2016-11-02 15:46:15 +01:00
Christoph Oelckers
eca4fba0f6
- fixed a merge conflict which wasn't flagged by TortoiseMerge.
2016-11-02 14:15:09 +01:00
Christoph Oelckers
3a7f51db88
a_hereticimp.cpp does not exist anymore...
2016-11-02 13:39:37 +01:00
Christoph Oelckers
c44dc8d951
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-11-02 11:46:18 +01:00
Christoph Oelckers
570572fcf2
- scriptified a_hereticimp.cpp.
...
- fixed the comparison against 0 simplification which did not negate the result for '=='.
2016-11-02 11:44:48 +01:00
Christoph Oelckers
8b21719068
Merge branch 'zscript' of https://github.com/rheit/zdoom into zscript
2016-11-02 11:43:23 +01:00
Christoph Oelckers
703aaa373e
SHA-1: 8852bc7278d033bbed66c51bf23aee841ee977a9
...
* Revert "Modify CMPJMP to produce more compact code (as far as VC++ is concerned, anyway)"
This reverts commit 6ff973a06b
.
This modification did not work and broke the comparisons. Actually this had three problems:
* the asserts checked the wrong instruction
* the mask was not applied to regular comparisons.
* incrementing PC before testing does not work because 'test' references the PC.
2016-11-02 11:40:43 +01:00
Christoph Oelckers
f940216c17
Merge branch 'master' into zscript
...
# Conflicts:
# src/p_actionfunctions.cpp
# wadsrc/static/actors/actor.txt
2016-11-02 11:08:51 +01:00
Christoph Oelckers
ff8b216167
SHA-1: 8852bc7278d033bbed66c51bf23aee841ee977a9
...
* Revert "Modify CMPJMP to produce more compact code (as far as VC++ is concerned, anyway)"
This reverts commit 6ff973a06b
.
This modification did not work and broke the comparisons. Actually this had three problems:
* the asserts checked the wrong instruction
* the mask was not applied to regular comparisons.
* incrementing PC before testing does not work because 'test' references the PC.
2016-11-02 10:52:14 +01:00
Rachael Alexanderson
7cba67ad45
Merge branch 'master' of http://github.com/rheit/zdoom
2016-11-02 03:12:21 -04:00
Marisa Heit
f8641c0ffb
Fixed: MaxVisForFloor was broken by the switch to floats
...
- TODO: See if these visibility limits are even needed anymore.
2016-11-02 00:07:57 -05:00
Marisa Heit
3f32ccada6
Zero In2D before calling Flip()
...
- Fixes an assert when resizing the window in windowed mode. Flip() can call
V_OutputResized() in windowed mode.
2016-11-01 22:54:27 -05:00
Magnus Norddahl
1b7d21790d
Merge branch 'sprite_texcoord_fix' into qzdoom
2016-11-01 23:14:46 +01:00
Magnus Norddahl
5814270980
Fix wrapping and scaling issue for the U texture coordinate for sprites
2016-11-01 22:58:53 +01:00
Magnus Norddahl
477fb6d676
Added missing copyrights
2016-11-01 21:44:33 +01:00
Magnus Norddahl
1ccf190c4f
Merge remote-tracking branch 'zdoom/master' into qzdoom
2016-11-01 19:51:17 +01:00
nashmuhandes
578bf9b09c
Added "local" parameters to A_PlaySound and ACS PlaySound
2016-11-01 13:21:32 -04:00
Christoph Oelckers
48229837ed
- fixed: ACSStringPool::AddString did not check for NULL pointers as input. Let's just map them to the empty string, that's a lot better than crashing.
2016-11-01 13:20:58 -04:00
Christoph Oelckers
bfb8886e93
- fixed: RapidJSON in ASCII mode cannot handle extended 8 bit character sets and will produce broken data if the input contains some. This means we need to perform the conversion to UTF-8 on ZDoom's side and run RapidJSON in UTF-8 mode.
...
Daedalus triggers this with a 0x85 character which in Windows CP 1252 is the ellipsis (...) The converter will assume ISO-8859-1, though, but cannot do anything with these characters because they map to the font being used here.
2016-11-01 13:20:58 -04:00
Christoph Oelckers
88fd47247d
- scriptified several trivial functions from a_action.cpp.
2016-11-01 16:32:47 +01:00
nashmuhandes
b420347bab
Added "local" parameters to A_PlaySound and ACS PlaySound
2016-11-01 15:14:06 +01:00
Rachael Alexanderson
6755373f46
- fixed: map commands will now take capslock DM/COOP as arguments
2016-11-01 15:09:09 +01:00
Rachael Alexanderson
f72ebe6768
- Extended map, recordmap, and open commands to accept "dm/coop" as an extra parameter - to open maps in multiplayer mode with the requested ruleset.
2016-11-01 15:09:08 +01:00
Rachael Alexanderson
33637dda23
- fixed: map commands will now take capslock DM/COOP as arguments
2016-11-01 09:47:01 -04:00
Christoph Oelckers
3f57269a8b
- fixed: ACSStringPool::AddString did not check for NULL pointers as input. Let's just map them to the empty string, that's a lot better than crashing.
2016-11-01 13:36:33 +01:00
Christoph Oelckers
4cf0d76e8c
- fixed: RapidJSON in ASCII mode cannot handle extended 8 bit character sets and will produce broken data if the input contains some. This means we need to perform the conversion to UTF-8 on ZDoom's side and run RapidJSON in UTF-8 mode.
...
Daedalus triggers this with a 0x85 character which in Windows CP 1252 is the ellipsis (...) The converter will assume ISO-8859-1, though, but cannot do anything with these characters because they map to the font being used here.
2016-11-01 13:33:18 +01:00
Edoardo Prezioso
7137e87b4b
- Fixed GCC/Clang errors from recent commits.
2016-11-01 10:35:45 +01:00
Edoardo Prezioso
46a311b23c
- Fixed a typo in 1 pixel tall support addition.
...
Found by Clang -Wparentheses warning.
2016-11-01 09:59:59 +01:00
Rachael Alexanderson
3102668dfa
- Removed mp### commands, extended map, recordmap, and open commands to accept "dm/coop" as an extra parameter - to open maps in multiplayer mode with the respective ruleset.
2016-11-01 03:28:30 -04:00
Marisa Heit
429aed85e1
Fixed: Masked midtexture yscale incorrectly used the texture's X scale
2016-11-01 01:57:43 -04:00
Rachael Alexanderson
c6ea262baf
Merge commit '8d7e400f8eaa964f359849df34306ade247cf850'
2016-11-01 01:52:33 -04:00
Marisa Heit
5df21fda68
Fixed: Masked midtexture yscale incorrectly used the texture's X scale
2016-11-01 00:18:56 -05:00
Marisa Heit
9388597443
Add 1 pixel tall and wide texture support to the renderer
...
- These require manual detection and overriding of the scaling factors to
0, because a right shift of (32-0) bits wraps around to 0 and results in
no shift at all rather than leaving the register zeroed out.
2016-11-01 00:08:16 -05:00
Marisa Heit
8d7e400f8e
Fixed: DCanvas::FillSimplePoly must set dc_destorg
...
- dc_destorg is normally set to the upper-left corner of the view window.
If there is a border, then this won't coincide with the upper-left
corner of the screen, and DCanvas::FillSimplePoly would merrily write off
the end of the screen buffer.
2016-10-31 22:34:46 -05:00
Rachael Alexanderson
fb8c05bcb3
Merge branch 'master' of http://github.com/rheit/zdoom
2016-10-31 21:27:16 -04:00
Christoph Oelckers
6e6249f896
- reverted WEAPONTOP to its original value of 32 and made the added fudging bit part of the render side.
...
This is needed so that 'offset(0,32)' does what it is supposed to do.
2016-10-31 18:53:28 +01:00
Christoph Oelckers
8e12e7462c
Merge branch 'master' into zscript
2016-10-31 17:03:33 +01:00
Christoph Oelckers
e620c9bd7d
- scriptified parts of a_bossbrain.cpp. Some things cannot be done yet, the script code is there but commented out.
...
- exported thinker iterator and drop item chain to scripting. Unlike its native counterpart the script-side iterator is wrapped into a DObject to allow proper handling for memory management.
- fixed: The VMFunctionBuilder only distinguished between member and action functions but failed on static ones.
- fixed: FxAssign did not add all needed type casts. Except for purely numeric types it will now wrap the expression in an FxTypeCast. Numeric handling remains unchanged for both performance reasons and not altering semantics for DECORATE.
- exported all internal flags as variables to scripting. They still cannot be used in an actor definition.
- make ATAG_STATE the same as ATAG_GENERIC. Since state pointers exist as actual variables they can take both values which on occasion can trigger some asserts.
- gave PClass a bExported flag, so that scripts cannot see purely internal classes. Especially the types like PInt can cause problems.
Todo: we need readonly references to safely expose the actor defaults. Right now some badly behaving code could overwrite them.
2016-10-31 17:03:26 +01:00
Magnus Norddahl
cdf8264dc3
Cube and dome sky modes
2016-10-31 08:30:39 +01:00
Magnus Norddahl
7a9c674f83
Add triangle fan and strip
2016-10-31 08:30:08 +01:00
Magnus Norddahl
a1ba371eed
Added triangle drawer to the software renderer
2016-10-31 06:09:46 +01:00
Rachael Alexanderson
7333bdb57e
- Changed helpful syntax error messages for mpmap, mprecordmap, and mpopen
2016-10-31 00:50:43 -04:00
Rachael Alexanderson
bc319dce1d
- Corrected syntax error messages for mpmap, mpopen, mprecordmap
...
- Added initial state for "multiplayernext" to prevent possible initialization errors.
- Implemented "mpmap", "mpopen", and "mprecordmap". All 3 commands do exactly as their non-"mp" counterparts do, except they turn on multiplayer (botmode) emulation before doing so.
2016-10-31 00:49:19 -04:00
Rachael Alexanderson
49cccfae42
- Added initial state for "multiplayernext" to prevent possible initialization errors.
2016-10-31 00:42:02 -04:00
Rachael Alexanderson
4c5723c10a
- Implemented "mpmap", "mpopen", and "mprecordmap". All 3 commands do exactly as their non-"mp" counterparts do, except they turn on multiplayer (botmode) emulation before doing so.
2016-10-31 00:29:15 -04:00
Rachael Alexanderson
beab686ca6
Merge branch 'master' of http://github.com/rheit/zdoom
2016-10-30 23:44:09 -04:00
Braden Obrzut
43b2584f79
- Fixed: Reference to freed stack object in R_FindPlane. This caused a massive slowdown (90% drop in total performance) in R_FindPlane when built with optimizations on in GCC6. Although I don't really understand why since the comparison should have been O(1) regardless of memory contents and even if the check failed every plane it would still be pretty fast, this is what they mean when they say that anything can happen when undefined behavior is triggered.
2016-10-30 23:27:29 -04:00
Marisa Heit
6ff973a06b
Modify CMPJMP to produce more compact code (as far as VC++ is concerned, anyway)
2016-10-30 22:16:02 -05:00
Rachael Alexanderson
de2122e2aa
Merge branch 'master' of http://github.com/rheit/zdoom
2016-10-30 21:36:13 -04:00
FishyClockwork
7c1f7aa81c
Restricted custom goodbyes to ZSDF
2016-10-30 20:27:07 +01:00
Kyle Evans
1502eae2ac
Add XPM (X PixMap) version of ZDoom icon
2016-10-30 19:31:32 +01:00
FishyClockwork
42be7bee93
For USDF treat Require/Exclude as unknown
...
For USDF treat Require/Exclude as an unknown keyword.
2016-10-30 19:30:55 +01:00
FishyClockwork
c341bc0d3c
Added restriction of Require/Exclude to ZSDF
...
Added restriction of Require/Exclude to ZSDF (namespace = "ZDoom";).
A warning will be printed if a Require/Exclude block is detected in USDF (namespace = "Strife";).
2016-10-30 19:30:54 +01:00
FishyClockwork
b1880964fa
Added two new sub-blocks for Choice blocks
...
Added two new sub-blocks for Choice blocks: Require and Exclude.
The syntax for both is the same as Cost blocks.
Require defines what item must be present in your inventory in order to show this choice/reply.
Exclude defines what item must not be present in your inventory in order to show this choice/reply.
If any Require/Exclude blocks are defined then this choice/reply will be hidden until all blocks of both types are satisfied.
2016-10-30 19:30:53 +01:00
Christoph Oelckers
2857fac338
- scriptified a_archvile.cpp.
...
- fixed the type checks for the conditional operator.
2016-10-30 18:41:39 +01:00
Christoph Oelckers
a652c5f259
- fixed: For named functions the prototype needs to be set before the code generator starts resolving. Otherwise it will crash on incompletely set up forward declarations.
2016-10-30 16:21:44 +01:00
Christoph Oelckers
f8ccda2dc8
- scriptified A_Mushroom to test something a bit more complex.
...
- fixed: FxMinusSign trashed local variables that were used with negation.
- fixed: FxConditional only handled ints and floats, but not pointers and strings.
- fixed: A 'no states in non-actors' error was triggered, even for classes without any states.
2016-10-30 14:00:11 +01:00
Christoph Oelckers
9eeb56212b
- fixed: A VM function's NumArgs value needs to count stack arguments, not logical ones, meaning that for vectors each element needs to count separately.
...
- renamed VMFunction::Defaults to DefaultArgs to make searching easier.
- let ZCCCompiler process vector defaults for function parameters.
2016-10-30 09:05:42 +01:00
Magnus Norddahl
a7d06ddd77
Add texturing to triangle drawer
2016-10-30 08:18:55 +01:00
Leonard2
06ec6318a9
Fixed: A vector value could point to garbage data after being 'unnested'
2016-10-30 07:37:13 +01:00
Leonard2
5643d6c692
Make sure to use the REGT_MULTIREG flags for opcodes that need it
2016-10-30 07:37:12 +01:00
Leonard2
8be7af41a9
Don't use a struct reference for vectors as return type just like for parameters
2016-10-30 07:36:00 +01:00
Leonard2
94410accf4
Renamed "VectorInitializer" to "VectorValue"
...
This was really confusing for me as this is an actual vector "value" rather than an "initializer"
2016-10-30 07:34:14 +01:00
Rachael Alexanderson
6ea0baac3a
- Next "pre" tag.
2016-10-29 22:49:34 -04:00
Rachael Alexanderson
e2fa16c99e
Actually - changed our minds - this is going to be 1.0. :)
2016-10-29 21:51:43 -04:00
Rachael Alexanderson
09961abeea
- Version 0.1.1 tag
2016-10-29 21:44:30 -04:00
Christoph Oelckers
ac1c022911
- implemented the 'is' operator (i.e. class type check.)
2016-10-30 01:05:56 +02:00
Christoph Oelckers
78a18acf46
- added string handling to comparison operators.
2016-10-29 18:57:56 +02:00
Christoph Oelckers
853c6f6684
- fixed initialization of local variables with other local variables.
...
- fixed several occurenced where vectors were treated as floats. NOTE: The entire codegen.cpp file needs to be carefully reviewed for bad use of the REGT_ constants, there's probably more places where using them has broken some type checks.
- fixed: committed test version of zscript.txt instead of changed actor.txt by accident.
Initialization and assignment for strings is working with this commit.
2016-10-29 16:49:21 +02:00
Christoph Oelckers
7f2350cf64
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-29 16:08:46 +02:00
Christoph Oelckers
4dc97a6ed0
- fixed register allocation for vector arguments to script functions.
...
- handle 2D and 3D vectors in SetReturn.
2016-10-29 13:42:37 +02:00
Christoph Oelckers
7209f9edd6
- implemented passing vectors as parameters. So far working for native functions.
...
- removed the bogus optional value from the first A_Jump argument. A quick test with an older ZDoom revealed that this was never working - and implementing it would make things a lot more complicated, especially error checking in the code generator.
- fixed: The check for insufficient parameters to a function call was missing.
2016-10-29 13:10:27 +02:00
Christoph Oelckers
e94b4cc74e
Merge branch 'master' into zscript
2016-10-29 11:20:32 +02:00
Christoph Oelckers
f5d1b1a491
- added vector builtins Length() and Unit().
...
This should complete the vector type except for use as function parameter.
2016-10-29 10:43:22 +02:00
Christoph Oelckers
b5222f08e8
- implemented dot and cross products (not that I'd ever expect these to become useful in a game like Doom...)
2016-10-29 10:16:00 +02:00
Magnus Norddahl
de8260ed8b
Merge remote-tracking branch 'origin/dancingsprites' into qzdoom
2016-10-29 08:13:20 +02:00
Magnus Norddahl
87ea75169e
Fix texturefrac out of bounds bug
2016-10-29 08:11:12 +02:00
Magnus Norddahl
ea44a445af
Improve drawer debug info details
2016-10-29 07:20:16 +02:00
Magnus Norddahl
ea9b45d988
Change read access violations to be non-fatal
2016-10-29 06:50:09 +02:00
Magnus Norddahl
deaced4bfa
Merge remote-tracking branch 'origin/dancingsprites' into qzdoom
2016-10-29 06:14:22 +02:00
Magnus Norddahl
837ed7bd80
Fix dancing sprites due to texture coordinate calculations not taking pixel centers into account
...
Merge R_DrawMaskedColumn and R_DrawMaskedColumnHoriz into one function to remove code duplication
2016-10-29 05:35:41 +02:00
Leonard2
594a0c2008
Fixed: FxVMFunctionCall didn't check for varargs while checking argument count
2016-10-29 02:18:15 +02:00
Christoph Oelckers
e5878f0cb2
- implemented vector operations. Vectors are now fully working as local variables.
...
- removed mulv_kr and divv_kr instructions. The first are redundant and the second are useless. Maybe remove all other vector/const operations as well? They won't get used by the code generator.
- fixed disassembly of vector multiplication and division instructions.
2016-10-29 01:39:25 +02:00
Christoph Oelckers
9400f97189
- implemented local vector variables. Currently only the definition plus initial assignment works.
...
- removed all vector4 handling that had already been added, now that this type can no longer be defined.
2016-10-28 15:15:30 +02:00
Christoph Oelckers
f2f365bfef
- fixed setup for PString which was missing the load/store/move instructions which caused me to overlook its register type.
...
- properly set up the vector types.
- fixed: a struct must start with a size of 0, not 1. This caused the layout of the vectors to be broken.
2016-10-28 14:43:29 +02:00
Christoph Oelckers
ed5a94d187
- fixed GetOps() call and added info for vectors.
2016-10-28 13:30:19 +02:00
Christoph Oelckers
f511a9398e
- changed GetStore/LoadMoveOp and GetRegType to be based on a set of member variables instead of using virtual functions to return such trivial values. This not only creates significantly better code but also allows overriding these settings without having to create a new class just for changing them (as is needed for vectors.)
2016-10-28 10:44:01 +02:00
Christoph Oelckers
3b1f411dce
- added a full set of 2D vector instructions to the VM. The existing one was 3D only but there's also need to handle two-dimensional vectors.
...
- added the missing divv* instructions.
2016-10-28 10:13:07 +02:00
Christoph Oelckers
35cd48b86b
- fixed grammar rule for two-dimensional vectors.
2016-10-28 09:47:22 +02:00
Magnus Norddahl
54c94f6e58
Fix pinkie having the blues
2016-10-28 02:41:14 +02:00
Magnus Norddahl
767c3a2edd
Fix dancing sprites due to texture coordinate calculations not taking pixel centers into account
2016-10-28 01:55:59 +02:00
Christoph Oelckers
3fa315aaea
- replaced 'vector<2>' and 'vector<3>' with 'vector2' and 'vector3'.
...
- added initializer syntax for vectors. A vector can be set with vectorvar = (x,y,z); for a 3-dimensional vector and vectorvar = (x, y); for a 2-dimensional one.
2016-10-28 01:14:21 +02:00
Christoph Oelckers
286f9510d4
- got rid of all default parameter redundancies.
...
- scriptified a few more functions.
2016-10-28 00:32:52 +02:00
Christoph Oelckers
03efb63e93
- fixed bad register use in postincrement operator.
2016-10-27 19:14:16 +02:00
Christoph Oelckers
c7347608a4
- scriptified A_FatAttack*.
...
- swapped parameters of two-parameter VelToAngle method, so that internal and script version are in line.
- fixed parameter asserts to handle NULL pointers properly.
2016-10-27 17:47:46 +02:00
Christoph Oelckers
948ef62fcd
- use the function defaults from the script instead of explicitly setting them again in the code. This is a needless cause of potential errors and since the values are readily available now it's better to use them in the functions.
...
- fixed: ZCCCompiler did not process array access nodes.
- fixed: Function argument names were not placed in the destination list by the compiler.
- scriptified several trivial functions from p_actionfunctions.cpp.
2016-10-27 15:53:53 +02:00
Rachael Alexanderson
9ed45c7e03
Merge branch 'master' of http://github.com/rheit/zdoom
2016-10-26 22:06:25 -04:00
Jason A. Yundt
4c420938c9
- Added install rules so that 'make install' works.
2016-10-26 20:57:42 -04:00
Christoph Oelckers
66b1f36e56
- actually evaluate the default parameters and store them in the VMFunction.
...
- disabled the assert in PType::GetRegType. This assert blocks any use to check for types that are incompatible with function parameters.
- pass the default parameter constants to the native functions. At the moment this is not used yet.
- use the function defaults to complete argument lists to script functions.
- fixed all default values that got flagged by the expression evaluator as non-constant. Most were state labels and colors which were defaulted to "". The proper value is null for states and 0 for colors.
- also replaced all "" defaults for names with "none".
2016-10-27 01:30:34 +02:00
Christoph Oelckers
d32d52c0b9
- scriptified a_spidermaster.cpp.
...
- fixed bad assert in XOR_RK instruction.
2016-10-26 17:21:25 +02:00
Christoph Oelckers
c961e653a5
Merge branch 'master' into zscript
2016-10-26 15:55:56 +02:00
Christoph Oelckers
327d4d85a7
- fixed: UseOffsets can only be handled after the patch is has been set up.
2016-10-26 15:02:20 +02:00
Christoph Oelckers
a166183ab4
-fixed type handling for varargs (i.e. A_Jump.)
2016-10-26 14:15:11 +02:00
Christoph Oelckers
7c759f9fcf
- removed the FxDamageValue hack and implemented it properly using FxReturnStatement.
...
- added handling of damage functions for ZScript.
2016-10-26 14:04:49 +02:00
Christoph Oelckers
e50315bd31
- fixed: Deprecation messages should never appear in DECORATE.
...
- removed some console message spam.
2016-10-26 13:22:36 +02:00
Christoph Oelckers
d4ea991763
Merge branch 'master' into zscript
2016-10-26 12:18:06 +02:00
Christoph Oelckers
12ce76426e
Revert "Allows loading directories as IWADs using "-iwad" command line parameter."
...
This reverts commit 81449728d7
.
Reverted because it compromises the IWAD file lookup and fixing it properly is not so trivial.
The skipping of adding the file name extension was not only broken, but even after fixing the code does not work if the IWADs are located outside the working directory.
2016-10-26 12:13:57 +02:00
Rachael Alexanderson
692a0034b4
Merge http://github.com/rheit/zdoom
2016-10-26 06:10:52 -04:00
Christoph Oelckers
5309209039
- print a developer warning if the texture manager had to resolve a circular reference.
2016-10-26 12:03:28 +02:00
Christoph Oelckers
28fefdabc7
- added a 'listall' option to FTextureManager::ListTextures, so that the multipatchtexture lookup can find multiple older versions with the same use type.
...
This fixes an issue with DUMP 2 which looked for patches of the same name as the texture currently being defined and where the patches had the same use type as the composite texture. The function as implemented would only find the newly added composite and print an error.
2016-10-26 11:56:15 +02:00
Christoph Oelckers
823c52aeb2
- scriptified the functions in a_possessed.cpp and added the needed exports and constants.
...
- fixed: Script functions did not receive the function name when being created.
- relaxed the asserts for PARAM_STATE, because the VM knows nothing about ATAG_STATE. Any state variable's content (e.g. Actor.SeeState) will receive ATAG_GENERIC, rather than ATAG_STATE.
- added a 'NeedResult' flag so that certain operations can create shorter code if the result of the expression is not needed. So far only used for postdecrement/increment statements on local variables (which is the most frequent case where this matters.)
- fixed postincrement and decrement for local variables. Due to the result preservation semantics it created faulty code.
2016-10-26 11:30:30 +02:00
alexey.lysiuk
316e3395ad
Fixed crash on loading multipatch texture with height of 256
...
http://forum.zdoom.org/viewtopic.php?t=53953
2016-10-26 12:15:22 +03:00
Magnus Norddahl
2838e1b5de
Compile fix for macOS
2016-10-26 07:21:19 +02:00
Rachael Alexanderson
e533bc8234
Merge http://github.com/rheit/zdoom
2016-10-25 23:52:25 -04:00
Christoph Oelckers
fa8e05d56d
- do not allow a multipatch texture to use itself as patch. Instead, look for an older texture with the same name.
2016-10-25 22:40:58 +02:00
Christoph Oelckers
33d00070b5
- made some variables signed that should not be unsigned.
2016-10-25 17:07:19 +02:00
Edoardo Prezioso
be4ce05aee
- Fixed Clang compiler errors and some warnings.
2016-10-25 16:53:14 +02:00
Christoph Oelckers
6d0dad3b38
- scriptified the code for the Demon and DoomImp.
2016-10-25 14:41:58 +02:00
Christoph Oelckers
576fc0c237
- how did this happen.
2016-10-25 14:27:49 +02:00
Christoph Oelckers
142278a818
- fixed incomplete commit for bounce flags
...
- fixed flag clearing in new function.
2016-10-25 13:29:58 +02:00
Christoph Oelckers
656b8cb16e
- added explicit setter functions for the count and link flags so that A_ChangeFlag and A_SetFlag can be deprecated.
2016-10-25 10:15:24 +02:00
Christoph Oelckers
ae728cc61a
- made the count flags and NOBLOCKMAP and NOSECTOR read-only. These require special treatment to work which can only be done by a setter function.
2016-10-25 09:55:13 +02:00
Christoph Oelckers
34a07d4bd6
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-25 09:29:12 +02:00
MaxED
81449728d7
Allows loading directories as IWADs using "-iwad" command line parameter.
2016-10-25 09:25:57 +02:00
Rachael Alexanderson
623910bd2a
- Putting the CVAR definition right in the middle of prediction stuff probably wasn't the best idea.
2016-10-25 09:25:57 +02:00
Rachael Alexanderson
043e761eec
- Implemented sv_singleplayerrespawn
2016-10-25 09:25:56 +02:00
Rachael Alexanderson
b460ce31e8
Merge http://github.com/coelckers/gzdoom
2016-10-24 21:02:09 -04:00
Christoph Oelckers
f0ee3e3fa3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-25 01:04:43 +02:00
Christoph Oelckers
dad89b0783
- fixed: Portals with disconnected parts were not grouped correctly.
2016-10-25 01:03:44 +02:00
Christoph Oelckers
8368272b4d
- just to be thorough, added a 'sprite' keyword to define a patch to give priority to the TEX_Sprite namespace.
2016-10-24 23:40:37 +02:00
Christoph Oelckers
4e4fd97950
- fixed: Multipatch textures may not set up their patch references until all textures have been loaded.
...
If done earlier they will not be able to detect overrides of sprites and graphics which are not part of the PATCHES lump. There was some fudging code to work around this problem but it was only partially working.
Now these textures only collect the texture name and use type during setup and resolve them after all textures have been created.
2016-10-24 23:35:18 +02:00
Christoph Oelckers
fe909c4e3b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-24 22:25:04 +02:00
Christoph Oelckers
93ec6eb92e
- fixed DACSThinker did not save its LastScript member.
...
This was probably responsible for some weird behavior recently, but with the addition of the OF_Transient flag this outright crashed because it left NULL pointers on reload in places where they weren't checked for.
2016-10-24 22:23:27 +02:00
Christoph Oelckers
f810b98167
- implement flag variables with the VM's sbit and lbit instructions.
...
- synthesize PField entries from the flag list for AActor. This intentionally excludes the bounce flags for now.
- allow deprecated flags that do not call the deprecated flag handler.
- disallow constructs like (a = b) = c by not allowing an address request on an assignment operation.
- restrict modify/assign on boolean variables to the bit operators. Everything else needs to promote the result to an integer to make sense so it should be disallowed.
2016-10-24 17:18:20 +02:00
Christoph Oelckers
808188ff18
- added handling for structs. When defined inside classes or other structs the double member access will be merged, so there is no performance hit by using structs to group data.
2016-10-24 13:18:13 +02:00
Rachael Alexanderson
64ae207fb9
Merge http://github.com/coelckers/gzdoom
2016-10-24 01:07:10 -04:00
Christoph Oelckers
3f1673f34f
- scriptified A_HeadAttack, A_CyberAttack and A_Hoof.
2016-10-24 00:50:28 +02:00
Christoph Oelckers
bea625a42c
- added an ATTENUATE flag to dynamic lights, this is set by default for attached lights. For placed lights this is off, because it'd interfere with many existing maps that depend on unattenuated lights.
2016-10-23 20:42:48 +02:00
Christoph Oelckers
fbe2b76705
- fixed checks in sprite sorting logic. There were some missing parentheses.
2016-10-23 19:08:43 +02:00
Christoph Oelckers
10203afa41
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-23 18:50:59 +02:00
Magnus Norddahl
6cd214c2b9
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-23 17:43:27 +02:00
Magnus Norddahl
86f36b3081
Add function returning the generated assembly for a given llvm module
2016-10-23 17:43:18 +02:00
Christoph Oelckers
9f8a5dae21
- scriptified A_BruisAttack.
...
- removed 'self' as a dedicated token. Internally this gets handled as a normal but implicitly named variable so the token just gets in the way of proper processing.
- removed P_ prefix from SpawnMissile export.
- fixed a crash with misnamed function exports.
2016-10-23 17:15:24 +02:00
Christoph Oelckers
da56e5908d
- added an optimization to FxBoolCast that it doesn't force the source value to a 0/1 integer if not explicitly needed. When doing comparisons we do not care about actual values, we only want to know if it is 0 or not.
...
- added the above for the 'if' condition. It works for integers, floats and pointers and will save 3 instructions if the condition is a non-boolean that can be implicitly casted to bool.
2016-10-23 15:30:58 +02:00
Christoph Oelckers
5b952b116a
- named class functions are working. Yay!!
...
- converted A_BspiAttack and A_BabyMetal to script functions to test the implementation.
2016-10-23 14:26:33 +02:00
Rachael Alexanderson
4934fc5070
- Removed duplicate definition from ZDoom merge
2016-10-23 08:19:29 -04:00
Rachael Alexanderson
7d174e6b3e
Merge ../zdoom
2016-10-23 08:17:28 -04:00
Rachael Alexanderson
1e9d3b1917
- Putting the CVAR definition right in the middle of prediction stuff probably wasn't the best idea.
2016-10-23 08:14:54 -04:00
Christoph Oelckers
a2116fc7bf
- created an export for P_SpawnMissile so that I can do some tests with functions.
...
- allow class extensions.
These are separate blocks in different files that get concatenated to one class body for processing. The reason is to allow spreading the many functions in Actor over multiple files, so that they remain manageable. For example, all the Doom action functions should be in their respective files, but their symbols need to be in Actor. To extend a class, both files need to be in the same translation unit, so it won't allow user-side extension of internal classes.
2016-10-23 12:57:21 +02:00
Rachael Alexanderson
a39807eb9a
- Implemented sv_singleplayerrespawn
2016-10-23 06:10:24 -04:00
Rachael Alexanderson
edf2556ea3
- Implemented sv_singleplayerrespawn
2016-10-23 06:06:59 -04:00
Christoph Oelckers
f9cd2c9af7
- added switch/case processing. Right now it is just a sequence of test/jmp instructions. It may make sense to add a special opcode that can perform the comparisons natively but that's an option for later.
...
- added a TESTN instruction. This is like TEST but negates the operand. This was added to avoid flooding the constant table with too many case labels. With TEST and TESTN combined, all numbers between -65535 and 65535 can be kept entirely inside the instruction. Numbers outside this range still use a BEQ instruction.
2016-10-23 12:00:25 +02:00
Christoph Oelckers
6587828e32
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-23 08:34:46 +02:00
Marisa Heit
5ba5da0dcc
Fixed: Loading a savegame momentarily left players with undefined pitch limits
...
- This was only visible when using a screen wipe because the initial frame wiped
to would clamp the pitch to whatever undefined pitch range the player
had before the proper range was received.
2016-10-22 21:02:10 -05:00
Marisa Heit
31f01d076e
Fixed: Decals calculated "lighting" wrong
...
- Instead of calculating lighting based from the left edge of the wall
segment the decal was on, it was calculated from the left edge of the
wall instead.
2016-10-22 20:27:02 -05:00
Christoph Oelckers
ccabb6f9bd
- Gave FxExpression a type identifier field so that certain combinations that are easy to optimize can be detected.
2016-10-23 01:14:49 +02:00
Magnus Norddahl
d804f94a5e
Merge remote-tracking branch 'origin/ssao' into qzdoom
2016-10-22 21:36:29 +02:00
Magnus Norddahl
6c1c0d2972
Improve scene selection for SSAO so that the mainview drawmode always takes precedence
2016-10-22 21:35:49 +02:00
Magnus Norddahl
1f8b2ebd9f
Merge remote-tracking branch 'origin/ssao' into qzdoom
2016-10-22 21:26:30 +02:00
Magnus Norddahl
a3e19bf337
Fixed gl_ssao_portals not having effect
2016-10-22 21:25:29 +02:00
Christoph Oelckers
32d33618ea
- better fix for the class type problem: We already know the wanted type so let's use that instead of trying to determine it from the actual name.
2016-10-22 19:51:24 +02:00
Christoph Oelckers
c2b37aeeea
- fixed a conversion warning with the pointer-type AActor fields.
...
- added master and tracer to the list of exported variables.
- fixed: 'none' as class type must map to the real null pointer so that it won't get rejected by the stricter type checks.
- added handling for member function calls to zcc_compile.cpp.
- fixed: FxMemberFunctionCall may not delete the self expression if it gets passed on to the actual function call.
2016-10-22 19:43:53 +02:00
Christoph Oelckers
37914223f0
- reviewed all places where VARF_Action and NAP were used and fixed what was still wrong.
2016-10-22 18:24:47 +02:00
Christoph Oelckers
371712c53a
- turned everything I could into non-action functions.
...
- fixed emission of the self pointer in FxVMFunctionCall. I did not realize that the self expression only sets up a register for the value, not pushing it onto the stack.
2016-10-22 17:49:08 +02:00
Christoph Oelckers
32ac1a8ad7
- moved the special weapon functions from Inventory to StateProvider.
...
This will restrict them to the only classes that may use them: Weapon and CustomInventory.
Note: Should a mod surface which uses them improperly the better solution would be a warning message and NULLing the bogus code pointer instead of leaving them in Inventory.
2016-10-22 16:46:47 +02:00
Christoph Oelckers
d714670acc
- allow calling non-action functions directly from a state.
...
Ironically this only requires a very minor change in the calling code and an added member for the VMFunction to tell that code how many parameters to pass.
This change will allow to turn the vast majority of action functions into regular members, the only ones that still need to be an action function are the few that actually use the pointers.
2016-10-22 16:35:48 +02:00
Rachael Alexanderson
02659fab95
Merge http://github.com/rheit/zdoom
2016-10-22 09:06:08 -04:00
Christoph Oelckers
d6047ae651
- added the required code genration nodes for member function calls.
...
This is not testable right now because finally the action function mess has come full circle. The current setup makes it impossible to call action functions from non-action functions because the needed info is local to the functions.
Long avoided, this needs to be refactored now so that the different semantics for action functions are no longer needed.
2016-10-22 12:10:19 +02:00
Christoph Oelckers
38fa26af75
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-22 10:15:52 +02:00
Christoph Oelckers
853e49a077
- fixed: R_InitSkyMap must check for the null texture which cannot be used as a sky because it has no bitmap and will cause an access violation in the sky cap color calculation.
2016-10-22 09:58:56 +02:00
Christoph Oelckers
43aec68559
- implemented ~== operator.
...
Turned out this was really simple because the functionality was already there.
2016-10-22 09:31:37 +02:00
Rachael Alexanderson
fb301d5996
Merge http://github.com/rheit/zdoom
2016-10-22 01:36:32 -04:00
Marisa Heit
09b82b8a3a
Merge branch 'master' into zscript
2016-10-21 22:13:24 -05:00
Marisa Heit
5c596d3797
Change VM to increment PC after each instruction rather than before
...
- VC++ generated horribly stupid code for x64 when incrementing pc at the
beginning of each instruction by storing hundreds of copies of it for
every opcode executed. Incrementing pc at the end avoids this madness.
- It is possible I messed something up with this change. Hopefully not.
2016-10-21 22:11:23 -05:00
Christoph Oelckers
1e11042de0
- changed VM_EPSILON from 1/1024 to 1/65536 so that the ~== operator can actually be used.
...
1/1024 is far too coarse for ZDoom's purposes, this needs to be at least fixed point precision.
2016-10-22 02:52:28 +02:00
Rachael Alexanderson
9ee34254c8
- fixed: Crashing when using the "restart" ccmd
2016-10-21 19:26:05 -04:00
Christoph Oelckers
4b41e735f1
- added null pointer.
...
- fixed: FxMemberIdentifier checked for ClassPointers instead of object pointers to resolve the left hand side of the expression.
- allow comparison of pointers.
2016-10-22 00:50:04 +02:00
Rachael Alexanderson
f178043b81
Merge branch 'master' of https://github.com/raa-eruanna/QZDoom
2016-10-21 18:19:44 -04:00
Rachael Alexanderson
11a98bec7e
- fixed: Compiler error in hardware.cpp (vid_forceddraw)
2016-10-21 18:18:48 -04:00
Magnus Norddahl
2ba7915d1a
Merge remote-tracking branch 'origin/ssao' into qzdoom
2016-10-22 00:14:35 +02:00
Magnus Norddahl
e891911a99
Fix broken SSAO portal rendering and let FRenderState do the glDrawBuffers calls
2016-10-22 00:09:06 +02:00
Rachael Alexanderson
16fded31e1
- Show current renderer on startup. This is for diagnostic purposes when we ask people for their startup logs so we know what key settings are being used when there is a problem.
2016-10-21 17:53:21 -04:00
Magnus Norddahl
be2c50f11c
Merge remote-tracking branch 'gzdoom/master' into ssao
2016-10-21 23:48:30 +02:00
raa-eruanna
9cf9cc1318
Merge http://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.enu
2016-10-21 13:37:12 -04:00
Christoph Oelckers
3b0b0baf05
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
...
# Conflicts:
# wadsrc/static/actors/shared/player.txt
2016-10-21 19:31:08 +02:00
Christoph Oelckers
b1289fa783
- fixed: The serialiter functionfor FDoorAnimation accessed the invalid destination pointer when loading a savegame.
2016-10-21 19:24:40 +02:00
nashmuhandes
21b690a3c7
Fixed: Player.ViewBob should be multiplying the bobbing height in P_CalcHeight, not the velocity of the bobbing.
...
This mimics the act of the user altering their movebob CVar to compensate for non-standard player movement speeds.
2016-10-21 19:24:39 +02:00
raa-eruanna
e0efdd97b3
- Added: PlayerPawn property "Player.ViewBob" which acts as a MoveBob/StillBob multiplier.
2016-10-21 19:24:39 +02:00
Christoph Oelckers
89416835a8
- preparations for null pointer support.
...
- add pointer support to FxAssign.
2016-10-21 19:18:39 +02:00
Christoph Oelckers
5bed0a2b39
- implemented class member access for variables. (Struct members and functions not done yet.)
2016-10-21 17:41:39 +02:00
Christoph Oelckers
f5e4c4b109
- implemented the '<>=' operator - more as a VM coding exercise than for its usefulness, though.
2016-10-21 16:35:07 +02:00
Christoph Oelckers
9f260983c7
- implemented all assign/modify operators.
...
- use a table to translate from PEX to tokens to make the code easier to read.
2016-10-21 14:18:31 +02:00
raa-eruanna
ec9dd3f5af
- Fixed compiler errors with r_fullbrightignoresectorcolor merge
2016-10-21 07:53:32 -04:00
raa-eruanna
1ae478aacd
Merge commit '8678baf6f589a68635939a1063a28231a0aa01a1'
...
# Conflicts:
# src/r_data/colormaps.cpp
# src/r_main.cpp
# src/r_segs.cpp
# src/r_things.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2016-10-21 07:42:28 -04:00
raa-eruanna
8678baf6f5
- Fullbright fixes
2016-10-21 07:32:18 -04:00
raa-eruanna
df6214b142
- Fixes
2016-10-21 07:21:56 -04:00
raa-eruanna
c76431414a
- Implemented r_fullbrightignoresectorcolor from QZDoom
2016-10-21 07:06:24 -04:00
Christoph Oelckers
3e995d7aac
- changed assignment operators to be expressions, like they are in C and DECORATE.
...
This also means that for now Lua-style multi-assignments are disabled, those should be easy to enable by making some changes to the assignment_statement grammar so that it doesn't recognize single assignments, but for now this is low priority because it adds a significant amount of complexity to do this right with functions that have multiple return values.
2016-10-21 12:22:42 +02:00
raa-eruanna
b327a3312e
- Fully Implemented GZDoom fullbright emulation
2016-10-21 06:08:25 -04:00
Christoph Oelckers
1450c3dffb
- tested and fixed the regular assignment statement for both local and member variables.
...
The generated object code can definitely use an optimization pass but that's something left for later when more things are working. Right now it creates one opcode more than necessary for all member accesses (instead of using the offset in the store command it calculates an actual address of the variable in another address register) and can create one too many for non-constant expressions being assigned to local variables (a move between two registers because the emitted expression on the right hand side does not know that it can emit to the actual variable's register.)
2016-10-21 10:09:01 +02:00
Christoph Oelckers
9f99ca4788
- process most of the remaining statement types.
...
- extend assignment operations to handle local variables (untested.)
- make the implicit function arguments read only.
2016-10-21 01:12:54 +02:00
Magnus Norddahl
1cd27ca98a
Change how the LLVM execution engine to constructed and printf which target triple and CPU is being used
2016-10-20 21:57:45 +02:00
Christoph Oelckers
24394dfc92
- tested and fixed FxLocalVariableDeclaration.
...
- create proper variable data from the function prototype instead of assuming that there's just 3 pointers.
- added a printable name to VMScriptFunction for error output during gameplay in case something goes wrong.
2016-10-20 16:55:12 +02:00
Magnus Norddahl
1c2dcad36e
Fix linear skies
2016-10-20 15:16:02 +02:00
raa-eruanna
c62ee28726
Merge http://github.com/coelckers/gzdoom
2016-10-20 04:54:44 -04:00
raa-eruanna
f2fdeaec8a
Merge http://github.com/rheit/zdoom
2016-10-20 04:53:49 -04:00
Christoph Oelckers
2fd4fa9660
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
...
# Conflicts:
# wadsrc/static/actors/doom/doomimp.txt
2016-10-20 10:44:53 +02:00
Christoph Oelckers
96437d95fa
- use the new ZDoom code for retrieving a sky's cap color to avoid redundancies.
2016-10-20 10:36:23 +02:00
Christoph Oelckers
ce80d8157b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-20 10:24:37 +02:00
Christoph Oelckers
4b956a2f2b
- added support for the skyoffset property that had been settable in ANIMDEFS for GZDoom. This will only have an effect in sky mode 2.
2016-10-20 09:56:45 +02:00
raa-eruanna
a4393d352f
Merge http://github.com/rheit/zdoom
2016-10-20 03:30:51 -04:00
Christoph Oelckers
19d070c9bd
- fixed: averageColor swapped red and blue.
...
- renamed some stuff
2016-10-20 09:08:07 +02:00
Christoph Oelckers
ffc38d422e
- split up FxCompoundStatement into the old FxSequence and a new subclass. FxSequence is just a sequence of expressions, while FxCompoundStatement is the one that actually implements handling of local variables. The split was done so that ZCCCompiler::ConvertNode can return multiple statements as one object and for that FxCompoundStatement is not suitable.
...
- added conversion of local variable declarations. This is still untested
2016-10-20 01:09:35 +02:00
Magnus Norddahl
aa199a91c5
Merge remote-tracking branch 'origin/capsky' into qzdoom
...
# Conflicts:
# src/r_plane.cpp
# src/r_sky.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2016-10-20 01:05:05 +02:00
Magnus Norddahl
2fe545a4fd
Merge r_stretchsky and r_capsky into r_skymode
2016-10-20 00:59:51 +02:00
Magnus Norddahl
0888fc0cde
Merge remote-tracking branch 'origin/capsky' into qzdoom
2016-10-20 00:13:58 +02:00
Magnus Norddahl
5de8112578
Add support for capping sky with a solid color
2016-10-19 23:52:09 +02:00
Magnus Norddahl
4ccb69fa61
Palette version of sky drawers
2016-10-19 23:21:09 +02:00
Christoph Oelckers
2d85efce2a
- added processing of compound statements to the compiler. This means that anonymous functions without control statements are generating code now.
...
- added local variable declarations to the code generator. This is not tested yet, that will come with the next commit.
2016-10-19 19:05:48 +02:00
Magnus Norddahl
d5865a46a0
Move triangle drawer into a command and change the sky code to use it if r_cubesky is enabled
2016-10-19 17:44:50 +02:00
Christoph Oelckers
8a6230d64a
- Renamed FxSequence to FxCompoundStatement.
...
- fixed: The state parser was unable to accept empty anonymous functions, which should be treated as if there is none at all.
2016-10-19 16:15:02 +02:00
Magnus Norddahl
ea72152c31
Add doom style column clipping to triangle drawer
2016-10-19 15:43:10 +02:00
Christoph Oelckers
458c68775f
- fixed handling of loop statements.
...
All break and continue statements were collected in one list, and each loop statement taking hold of that entire list, including the breaks and continues from previous outer loops.
Changed it so that loop statements contain the jump addresses themselves and set a pointer in FCompileContext, so that the jump point can be set directly in the loop statement - and an error printed if there is none in the resolving stage, not the emitting one.
Consolidated the identical backpatching code of the three loop statement nodes into a subfunction.
2016-10-19 14:36:54 +02:00
Magnus Norddahl
6a7bb43ce1
Fix clipping bug
2016-10-19 14:32:28 +02:00
Christoph Oelckers
cfbcfc440d
- 'fixed' local variable declrations to work like C, not like some Lua-inspired nightmare. Also added proper initialization syntax for arrays.
2016-10-19 13:07:44 +02:00
Christoph Oelckers
33567741f5
- fixed: The parser was not generating a compound statement node for anonymous action functions.
2016-10-19 10:38:25 +02:00
Magnus Norddahl
ef70ba0985
More triangle rendering
2016-10-19 03:49:42 +02:00
Christoph Oelckers
665d752686
- added 'null' token to the ZScript parser which is needed for null pointers.
...
- removed function declaration parser from DECORATE because it is not needed anymore.
- fixed: comparison operators could not handle names.
2016-10-19 00:35:34 +02:00
raa-eruanna
68efdf5cef
- Fixed: Added linker flags for Linux to prevent crashes using LLVM. Using fix found by dpJudas.
2016-10-18 18:21:22 -04:00
raa-eruanna
226287875b
Creating 0.2pre tag
2016-10-18 14:07:44 -04:00
Magnus Norddahl
694cae054c
Add some experimental draw triangle code
2016-10-18 18:23:56 +02:00
raa-eruanna
79b14bbc08
- Updated version.h for beta tag
2016-10-18 11:38:35 -04:00
Christoph Oelckers
bef71f29e2
- make generation of the AST dump a command line parameter instead of having it depend on running a debug build.
...
- disable generation of the parser's trace file in debug builds.
This increases parsing time by a factor of 15 and is only needed when debugging a problem in the grammar.
2016-10-18 10:17:09 +02:00
Christoph Oelckers
61cc7dbb29
- another batch of Hexen items converted.
...
- fixed parsing of named damage types and pain chances.
2016-10-18 10:09:02 +02:00
Marisa Heit
1652c02a08
Add unsigned division opcodes to the VM
2016-10-17 22:37:49 -05:00
Magnus Norddahl
49b4860426
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-18 01:16:45 +02:00
Magnus Norddahl
df3f5ae882
Use OpenGL to allocate the canvas buffer to avoid a costly memcpy
2016-10-18 01:16:36 +02:00
Christoph Oelckers
646f9b21c7
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
...
# Conflicts:
# src/scripting/codegeneration/codegen.cpp
2016-10-18 00:55:56 +02:00
raa-eruanna
f32a2547bc
- Fixed LLVM compile for LLVM 3.8 (Ubuntu)
2016-10-17 16:05:14 -04:00
Christoph Oelckers
1c21dbc44c
- handle trinary conditional statement.
2016-10-17 21:43:14 +02:00
Christoph Oelckers
a6a0c4b93c
- handle all unary operators.
...
- handle all binary operators which are already implemented in the code generator.
- implemented sizeof/alignof operators in code generator.
- rewrote RequestAddress so that its return value is not the writability of an address but the mere existence. Also changed it to not output errors itself because those cannot be dealt with by the calling function.
2016-10-17 20:33:35 +02:00
Christoph Oelckers
23a2a19a78
- added handling for shift and bit operators.
...
- added the '>>>' (unsigned shift) operator. Although, with unsigned numbers available, this is technically not really needed, DECORATE supports this so ZScript should, too, if only for the benefit of making conversion tools easier to handle.
2016-10-17 15:52:29 +02:00
Christoph Oelckers
938ab4ca70
- implemented '**' (power) operator. To ensure reliability, acustom 'pow' function will be used to calculate it.
...
- fixed: FxBinary::ResolveLR' check for numeric operations was incomplete. Like far too many other places it just assumed that everything with ValueType->GetRegType() == REGT_INT is a numeric type, but for names this is not the case.
2016-10-17 15:17:48 +02:00
raa-eruanna
cd21d017fb
Merge remote-tracking branch 'remotes/origin/decorate-viewbob'
2016-10-17 09:04:37 -04:00
Christoph Oelckers
d0a8960f61
- added genuine PEX_GT, PEX_GTEQ and PEX_NEQ operations to the parser.
...
These were previously faked with the inverse plus a boolean not. Although this works, it either leads to sub-optimal code generation or some fudging to avoid the inefficient handling.
Just adding proper handling to the parser seems the easiest and most straightforward way to get around this. The code generator already can deal with these operations properly so there's no good reason to do it differently.
2016-10-17 14:38:51 +02:00
Christoph Oelckers
552f094ec1
- converted the rest of Heretic's actors.
...
- fixed: Boolean constants were not properly handled.
2016-10-17 12:58:23 +02:00
Magnus Norddahl
af937366d1
Added DetectRangeError function
2016-10-17 12:36:01 +02:00
Magnus Norddahl
c9a9e93c66
Fix warning C4805: '!=': unsafe mix of type 'bool' and type 'int' in operation
2016-10-17 11:54:03 +02:00
Christoph Oelckers
c13916ea18
- converted more Heretic actors.
2016-10-17 10:07:12 +02:00
raa-eruanna
931d241056
- Change "vid_used3d" to true by default, in Windows.
2016-10-17 01:13:58 -04:00
raa-eruanna
4ec2db43a4
Merge http://github.com/rheit/zdoom
2016-10-17 01:13:16 -04:00
Braden Obrzut
b4bdb8fa7d
- Fixed: Assertion failure if a save was loaded without starting a new game (due to uninitialized RNG).
2016-10-17 00:22:06 -04:00
Braden Obrzut
741c9edf42
- Clear out GCC 6.2 warnings (interestingly they now check for misleading indentation which found a good case in fragglescript/t_func.cpp even though I believe it was harmless)
2016-10-17 00:19:08 -04:00
Magnus Norddahl
f8f710d9e2
Fix linker errors on Windows
2016-10-17 01:17:48 +02:00
Christoph Oelckers
c623539d2d
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-17 00:33:28 +02:00
Magnus Norddahl
c706d5465a
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-17 00:20:31 +02:00
Magnus Norddahl
d654301bc2
macOS compile fixes and support for slightly older versions of LLVM (to allow Mac users to brew install llvm)
2016-10-17 00:19:07 +02:00
raa-eruanna
963e33b49b
Merge http://github.com/rheit/zdoom
2016-10-16 18:02:20 -04:00
Magnus Norddahl
dfed525e18
macOS warnings and build fix
2016-10-16 23:18:56 +02:00
Magnus Norddahl
8b297221fe
Merge branch 'gl_swframebuffer' into qzdoom
2016-10-16 23:18:16 +02:00
Magnus Norddahl
f81d0d3964
macOS support and Intel driver bug fixes
2016-10-16 22:40:08 +02:00
Christoph Oelckers
6650e2bbfb
- converted some Heretic stuff to ZScript for testing.
...
- added type casts to the arguments of function calls.
- added string constant to state conversion to FxTypeCast.
2016-10-16 22:32:52 +02:00
Braden Obrzut
9dd42be15f
- Fixed: Demo playback on Windows XP since we don't patch fstat for v140_xp bug.
2016-10-16 16:22:21 -04:00
Christoph Oelckers
afd9347087
- changed order of script files to match the old DECORATE list for easy comparison of the disassembly.
...
- added a descriptive name to all types for error messages.
- added a generic type cast node to the code generator.
- added a few more cast operations to the 'cast' VM instruction.
- extended FxClassTypeCast to handle all possible input that can be cast to a class pointer, not just names.
2016-10-16 19:42:22 +02:00
Magnus Norddahl
2534e80a19
Fix vid_hw2d 0 rendering glitch
2016-10-16 16:14:54 +02:00
Magnus Norddahl
49e890f212
Fix hexen sky cap offset
2016-10-16 15:48:34 +02:00
Magnus Norddahl
204c037017
Fix blending modes
2016-10-16 15:41:47 +02:00
Magnus Norddahl
42138a6ab9
Fix hexen sky stretching
2016-10-16 13:08:52 +02:00
Magnus Norddahl
73f3ff9cd4
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-16 13:08:14 +02:00
Magnus Norddahl
1711f13eeb
Fix off-by-one bug
2016-10-16 13:08:06 +02:00
Christoph Oelckers
2da52cedc9
- restrict 8 and 16 bit integer types to struct and class members - and I am not really sure if they should even be allowed there, aside from legacy readonly properties. For 32 bit floats the same would hold, but those are already mapped to 64 bit doubles silently.
...
ZDoom only uses these types in a very few isolated places, and even those can be removed without problems, so it's very doubtful that having support for these types is of any benefit - on the other hand, having them will most likely introduce more code than is saved in the data by using them...
2016-10-16 12:47:26 +02:00
Christoph Oelckers
59ab8b7ccd
- implemented array-style syntax for Random calls.
...
- implemented handling of the basic math operators so that heretic/beast.txt can be processed.
This is working, aside from still needing the type casts to properly transform the strings to class pointers.
2016-10-16 10:59:12 +02:00
raa-eruanna
135c861247
Merge http://github.com/coelckers/gzdoom
2016-10-16 04:02:34 -04:00
Christoph Oelckers
2c7c04e803
- when simplifying a non-constant expression, leave any identifier that cannot be trivially simplified to a constant alone. It is better to defer resolution to more context-aware code for those.
2016-10-16 09:31:03 +02:00
Christoph Oelckers
6a6263a614
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-10-16 09:13:19 +02:00
Christoph Oelckers
59576e6d23
- use the newly added OF_Transient flag to avoid writing out the owned dynamic lights to savegames instead of destroying and recreating them each time.
2016-10-16 09:12:43 +02:00
Christoph Oelckers
b03489a43c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-16 08:51:13 +02:00
Marisa Heit
e4281454ce
Split ANIMATED into three parts, filtered by game that uses them
...
- ANIMATED contained definitions for Doom, Heretic, and Strife, all
crammed into a single file. This meant that animations from one game
could erroneously make their way into maps for another game that
provided custom textures with names that matched textures that animated
in the other game. There are now three separate ANIMATED lumps with only
the animations defined for the original game and no others. The one
that gets loaded depends on the game being played.
- Added documentation for the ANIMATED file format to the comment for
FTextureManager::InitAnimated(), since I had to figure it out from the
code.
2016-10-15 21:40:24 -05:00
Marisa Heit
ae14993ba4
Fixed: Possible invalid processing for Crash states that immediately destroy the actor
...
- Setting an actor's Crash state has the potential to destroy the actor if
the Crash state has one or more 0-tic states that end with Stop. This
was not taken into account when the object's Z velocity was 0, but it
was under the floor anyway.
2016-10-15 21:14:34 -05:00
Marisa Heit
58ec0e4594
Add OF_Transient flag for objects that shouldn't be written to disk
2016-10-15 20:57:56 -05:00
Christoph Oelckers
847b8c45ef
- Changed ZCCCompiler::Simplify to allow running in constant and non-constant mode. The difference is that non-constant mode does not attempt to simplify function name expressions because these cannot be processed without destroying them, if some identifier in there is not referencing a symbol, which is quite common.
2016-10-16 01:33:36 +02:00
Christoph Oelckers
d6ce60f63a
- added named RNG support to FxFunctionCall.
...
This looks simpler than duplicating all that stuff and avoids a lot code duplication.
2016-10-16 01:08:02 +02:00
Christoph Oelckers
55f6661c87
- added handling for all the builtins supported by DECORATE to FxFunctionCall.
...
For the random functions this class only handles the default-RNG version. The one with an explicit RNG needs to be done separately because the parser produces different output for them.
2016-10-16 00:12:33 +02:00
Magnus Norddahl
b3e4ba13ba
Use GetSkyCapColor to pick the sky solid color
2016-10-15 21:53:45 +02:00
Christoph Oelckers
b299b64e47
- the compile context now knows if it is invoked by ZScript or DECORATE, so that it can be more strict with ZScript if needed.
...
- added a truncation warning to FxIntCast, which only occurs with ZScript, not with DECORATE. FxBoolCast is intentionally left out because it would defeat the reason for this cast type.
2016-10-15 21:35:31 +02:00
Christoph Oelckers
c3e693b507
- added FindClassMemberFunction which retrieves a function symbol and performs some verification.
...
- removed Self parameter from FxFunctionCall. Actual member function calls through an object require quite different handling so lumping these two together makes no sense.
- added a workaround to deal with ACS_NamedExecuteWithResult to both the compiler and FindClassMemberFunction. The way the ZScript compiler sets this up means that it will call the builtin, not the actual action function, so the parser needs to do some explicit check to get past the same-named action function.
- pass a proper self pointer to FxActionSpecial. Although it's still not being used, propagating design shortcuts through several function levels is a very, very bad idea.
2016-10-15 20:16:44 +02:00
Christoph Oelckers
cbb990a79e
- pass the current function to the compile context instead of just the containing class.
2016-10-15 17:40:27 +02:00
Christoph Oelckers
db8ab1bc4a
- give PFunction a bit more information:
...
* explicitly require passing the owning class when creating it.
* extract self pointer class when adding a variant.
* put the flags on the single variants, we can not fully rule out that they will be 100% identical, if variants ever get allowed.
2016-10-15 15:50:45 +02:00
Christoph Oelckers
091da92819
- Added AStateProvider class which is used to define the special action function behavior of weapons and custom inventorys. The class itself does not do anything, but the compiler will use it to set up the action function prototypes differently which in turn will be used to do type checking during code generation.
2016-10-15 15:10:48 +02:00
Magnus Norddahl
491a4e28c0
Move true color sky drawing to its own drawers and chamge r_stretchsky to false as the new drawers can fade to a solid color
2016-10-15 15:04:14 +02:00
Christoph Oelckers
32a3f57a54
- more preparations to compile functions:
...
* Allow PFunction to work without a VMFunction being attached.
* The Variant for a function must store the prototype itself instead of relying on the VMFunction it points to. Otherwise it would not be possible to reference a prototype during compilation of the function because it does not exist yet.
* Give the variant a list of the function's argument's names, because these are also needed to compile the function.
* create an anonymous function symbol when the function gets registered to the builder. At this point we have all the needed information to set it up correctly, but later this is no longer the case. This is the most convenient info to have here because it contains everything that's needed to compile the function in the proper context, so it has to be present when starting compilation.
* added some preparations to implement special handling for weapons and custom inventory items, which can run action functions in another actor's context. This part is not active yet but the basics are present in SetImplicitArgs.
2016-10-15 14:36:08 +02:00
raa-eruanna
cfb985ceb3
Merge http://github.com/rheit/zdoom
2016-10-15 07:58:16 -04:00
Christoph Oelckers
2cb5839c11
- count errors in the parser and abort afterward if there were some.
...
- use FScriptPosition's error counter throughout the compiler so that there is only one counter for everything, not two.
Parts of the compiler use FScriptPosition, so this is easier to handle than having a separate counter in the compiler class. It also avoids having to pass the compiler object to any function where an error may be output. The TreeNodes contain sufficient data to be converted to an FScriptPosition and using that for error message formatting.
2016-10-15 12:15:25 +02:00
Christoph Oelckers
5f5da26321
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-15 10:52:35 +02:00
Christoph Oelckers
162da2fcaf
- allow to specify "none" to set an actor's translation to the identity table.
2016-10-15 10:51:48 +02:00
Christoph Oelckers
3b0d687b22
- committed from the wrong subdirectory and missed all files that just changed the #include line.
2016-10-15 10:43:02 +02:00
Christoph Oelckers
f86e64e712
- renamed thingdef_expression to codegen. Eventually this needs to be split up into smaller units because the file is already quite large and there's still a lot to add here.
2016-10-15 10:39:58 +02:00
Christoph Oelckers
d8a8b59006
- cleaned up the loop statement nodes in the code generator, which put some handling in FCompileContext and some of their data into the base FxExpression class instead of having an intermediate base class for all loops which is responsible for the relevant data. All this is now encapsulated in a new FxLoopStatement class which serves as base for the actual loop statements.
2016-10-15 10:34:26 +02:00
raa-eruanna
a61f76dc89
Merge http://github.com/rheit/zdoom
2016-10-14 18:16:55 -04:00
raa-eruanna
6608678ad8
- Fullbright sprites and decals now defy sector colormaps as they do in GZDoom. This is controlled by the setting "r_fullbrightignoresectorcolor".
2016-10-14 18:11:49 -04:00
Christoph Oelckers
7bdd320f13
- forgot to save this.
2016-10-14 23:51:38 +02:00
Christoph Oelckers
2e882a41a3
- removed some redundancy.
2016-10-14 23:13:08 +02:00
FishyClockwork
08504dcbe2
Added a small check just in case...
2016-10-14 23:11:58 +02:00
FishyClockwork
ecffd0bea6
Done the code changes.
...
This time only nulls I've added are nullptrs
2016-10-14 23:11:57 +02:00
alexey.lysiuk
0370592422
Fixed serialization of DSeqPolyNode class objects
...
Polyobject pointer was not serialized at all
2016-10-14 23:05:02 +02:00
Magnus Norddahl
36aff68501
Fix divide by zero if yscale is too small a number
2016-10-14 23:02:16 +02:00
Magnus Norddahl
657abb374b
Fix SkyViewpoint skyboxes not being rendered
2016-10-14 23:01:10 +02:00
Christoph Oelckers
9def9ec095
- added more casting kludges so that I can run some tests with Heretic's definitions.
2016-10-14 22:54:22 +02:00
Christoph Oelckers
d00e93bdab
- fixed order of state setup.
...
It looks like the setup of the action function and the adding of the states got inverted by something I tried, leaving the ActionFunc member empty on the real states.
2016-10-14 21:56:45 +02:00
Christoph Oelckers
52005214c1
- Added some fudging so that A_PlayerSkinCheck creates proper code until I can rewrite the FunctionCall expression to match what the script compiler needs. The current version of this class is too much geared toward DECORATE.
2016-10-14 21:15:46 +02:00
Christoph Oelckers
784f7ed671
- converted all of Doom's actors.
...
- fixed a few problems that were encountered during conversion:
* action specials as action functions were not recognized by the parser.
* Player.StartItem could not be parsed.
* disabled the naming hack for PowerupType. ZScript, unlike DECORATE will never prepend 'Power' to the power's name, it always needs to specified by its full name.
* states and defaults were not checked for empty bodies.
* the scope qualifier for goto labels was not properly converted to a string, because it is an ENamedName, not an FName.
2016-10-14 20:08:41 +02:00
raa-eruanna
00b9528e5f
Merge branch 'yscale_dividebyzero_fix' of http://github.com/dpjudas/dpdoom
2016-10-14 11:52:25 -04:00
raa-eruanna
b54b4f2786
Merge http://github.com/coelckers/gzdoom
2016-10-14 11:50:06 -04:00
alexey.lysiuk
c3ced5842a
Added multithreaded upscaling with xBRZ (macOS only)
2016-10-14 17:14:49 +03:00
alexey.lysiuk
58d44e89c9
Use single helper for xBRZ scalers
2016-10-14 17:03:26 +03:00
Magnus Norddahl
2a4a61d4d0
Fix divide by zero if yscale is too small a number
2016-10-14 15:23:23 +02:00
raa-eruanna
71e5ccc4da
Merge branch 'skyviewportfix' of http://github.com/dpjudas/dpdoom
2016-10-14 07:37:22 -04:00
raa-eruanna
b236dd9dc1
Merge http://github.com/rheit/zdoom
2016-10-14 07:34:30 -04:00
alexey.lysiuk
d6b3cbe0c9
Fixed serialization of MovePoly class objects
...
See http://forum.zdoom.org/viewtopic.php?t=53787
Removed "speed" field which is serialized in the parent class
2016-10-14 14:33:13 +03:00
Magnus Norddahl
f82195bc49
Switch to true color for translated sprites
2016-10-14 12:10:11 +02:00
Magnus Norddahl
f05e2337c2
Fix SkyViewpoint skyboxes not being rendered
2016-10-14 11:24:03 +02:00
Christoph Oelckers
9e2830a3db
- converted the rest of actors/shared.
...
- moved damagetype definitions to MAPINFO. These were in DECORATE which is not correct. The old code is left for compatibility.
2016-10-14 10:46:15 +02:00
Christoph Oelckers
b8a2059aa9
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-14 09:11:54 +02:00
Magnus Norddahl
366d494b18
Merged R_DrawMaskedColumnHoriz into R_DrawMaskedColumn
2016-10-14 08:33:59 +02:00
Marisa Heit
97107b6b6d
Update lempar.c to 2016-10-04 version
...
- Every update rolled into one, because I'm pretty sure I missed some while
updating lemon.c (not counting today's commits), since it wasn't always
updated at the same time as lemon.c.
- In particular, I think this check-in from 2016-06-06 was very important to
us after commit 3d5867d29e
(For the
Lemon-generated parser, add a new action type SHIFTREDUCE and use it to
further compress the parser tables and improve parser performance.):
* Fix lempar.c so that the shift-reduce optimization works for error
processing.
2016-10-13 22:30:12 -05:00
Christoph Oelckers
7de683f9f5
- converted a few more DECORATE files.
...
- started with the AST converter. So far it only deals with direct function calls with simple constants as parameters.
- added an error condition for the defaults block to get rid of some asserts.
2016-10-14 00:40:20 +02:00
Christoph Oelckers
7e8d7eb2ec
- fixed parsing of 'damage' default property.
...
- fixed processing of goto labels.
2016-10-13 22:52:31 +02:00
Christoph Oelckers
433bf46010
- removed token 'mode' because it isn't used anywhere and clashed with some actor properties.
...
- fixed uninitialized counter variable in DECORATE parser.
- allow dottable_id of xxx.color so that the property parser can parse 'powerup.color'.
- fixed crash with actor replacement in script compiler.
- add the lump number to tree nodes because parts of the property parser need that to make decisions.
- removed test stuff.
- converted inventory.txt, player.txt and specialspot.txt to ZSCRIPT. These were the minimal files required to allow actor.txt to parse successfully.
- removed the converted files from the DECORATE include list so that these are entirely handled by ZSCRIPT now.
2016-10-13 20:45:52 +02:00
Magnus Norddahl
2a0ab96341
Merge remote-tracking branch 'origin/ssao' into qzdoom
2016-10-13 18:12:56 +02:00
Magnus Norddahl
660a45a0e0
Add normals to decals
2016-10-13 18:04:00 +02:00
Magnus Norddahl
6caa53529f
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-13 11:17:00 +02:00
Magnus Norddahl
d1d443497f
Fix weird access violation in some of the drawers
2016-10-13 11:16:51 +02:00
raa-eruanna
3a13394661
- Changed max sky buffer to 3072 from 2048
2016-10-13 02:47:07 -04:00
raa-eruanna
5d08a81240
- fixed: compiler warning with bad copy-paste
...
- fixed: speed up sky compositing in truecolor mode with large buffers - only the last 4 buffers used are checked.
2016-10-13 02:37:38 -04:00
raa-eruanna
d96ec6c311
- Expand truecolor sky buffer from 4 columns to 2048 columns. 2048 is probably the max we'll ever need, even with 4k, 8k, or higher resolutions, since the algorithm checks for repeat columns.
2016-10-13 02:12:48 -04:00
Christoph Oelckers
a72fbb771f
- separated the code generation from the DECORATE parser and cleaned up the interface to the code generator. Most importantly, the VMScriptFunctions are now preallocated when being added to the list of functions to compile and will be filled in later by the code generator. This allowed the removal of some ugly maintenance code.
2016-10-13 00:53:59 +02:00
raa-eruanna
e01cdf6946
Merge http://github.com/rheit/zdoom
2016-10-12 18:20:44 -04:00
Christoph Oelckers
59ed26c0b6
- resorted some of thingdef.cpp's contents into more appropriate files.
...
- split FinishActor into several functions. While DECORATE can, ZSCRIPT cannot do all this in one go.
- split the state finalization into several class-specific virtual functions.
2016-10-12 20:42:41 +02:00
raa-eruanna
fbbdd403f1
- Implemented r_linearsky for dual-layer skies
2016-10-12 14:37:57 -04:00
Major Cooke
3f50eac145
Fixed merge conflicts and removed PSPF_FLIP now that it's already in ZDoom.
2016-10-12 13:16:16 -05:00
Christoph Oelckers
b1a83bfd26
- started with cleanup and separation of DECORATE code.
...
* everything related to scripting is now placed in a subdirectory 'scripting', which itself is separated into DECORATE, ZSCRIPT, the VM and code generation.
* a few items have been moved to different headers so that the DECORATE parser definitions can mostly be kept local. The only exception at the moment is the flags interface on which 3 source files depend.
2016-10-12 19:22:33 +02:00
Christoph Oelckers
6a8ab9a4d3
- implemented the state compiler. So far all it can handle is parameter-less functions.
...
To do the rest, some cleanup is needed first, to untangle the DECORATE parser from the actual code generation so that the low end stuff can actually be reused here instead of having to be redone.
2016-10-12 17:50:23 +02:00
Magnus Norddahl
b5b96ee222
Add a little bit more debug information
2016-10-12 13:49:12 +02:00
Magnus Norddahl
27b432a930
Improve crash handling in drawers
2016-10-12 13:25:05 +02:00
Christoph Oelckers
900644e465
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-12 12:43:56 +02:00
Christoph Oelckers
6f92efc72c
- renamed thingdef_codeptr.cpp and moved it out of thingdef/.
...
Ultimately, thingdef should only contain code that is directly related to the DECORATE parser, but that's not the case with this file. It's only function definitions which get used during gameplay and will also be accessed by ZScript.
The change is intentionally on master so that pull requests can adjust to it now instead of creating conflicts later.
2016-10-12 12:43:26 +02:00
raa-eruanna
15c08f73d5
Merge http://github.com/coelckers/gzdoom
2016-10-12 03:15:03 -04:00
Christoph Oelckers
a4a00435e2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-12 08:42:37 +02:00
Magnus Norddahl
3146f75ae0
Merge remote-tracking branch 'origin/gl_swframebuffer' into qzdoom
2016-10-12 08:05:39 +02:00
Magnus Norddahl
c5ebfd9e65
Add vid_max_width and vid_max_height
2016-10-12 08:05:31 +02:00
Magnus Norddahl
052f7900c2
Fix swapped x and y in DrawLetterbox
2016-10-12 08:04:42 +02:00
Magnus Norddahl
403b3e2319
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-12 07:39:20 +02:00
Magnus Norddahl
77a566a57e
Merge remote-tracking branch 'origin/gl_swframebuffer' into qzdoom
2016-10-12 07:38:56 +02:00
Magnus Norddahl
698b05ee69
Fix pixel center and letter box issues
2016-10-12 07:34:07 +02:00
Major Cooke
41bf9def80
GZDoom compatibility for PSPF_FLIP.
2016-10-11 20:18:06 -05:00
Major Cooke
3de83b8943
Added PSPF_FLIP.
...
Flips the overlay on the X axis.
2016-10-11 17:20:58 -05:00
Christoph Oelckers
f46b6b5be5
- fixed some issues with the grammar for parsing states:
...
* Goto did not support the class scope operator '::'. Like in DECORATE, this cannot be done with a simple '.' because it creates semantic problems with first part of a state label. This requires different syntax so that it can unambiguously distinguish between a scope identifier and the actual label
* Goto used the incorrect token PLUS for '+' instead of ADD.
* The state's duration was not stored in the AST.
* Truncating the sprite name inside the parser is probably not the best idea because it used a simple Printf to report this. Let's do this during processing of the AST where this can be properly handled as an error.
2016-10-12 00:04:30 +02:00
raa-eruanna
49745e133d
Merge http://github.com/rheit/zdoom
2016-10-11 17:43:27 -04:00
raa-eruanna
5e458866bc
- Added CVAR handling for vid_used3d - allows to switch software mode canvas between OpenGL and Direct3D upon restart.
2016-10-11 17:10:54 -04:00
Major Cooke
5dc94a10c3
Added A_SetInventory.
...
- Sets the absolute amount of an inventory actor.
- Limits itself to the range [0, MaxAmount]. Setting beyondMax to true disregards the MaxAmount. Default is false.
2016-10-11 14:44:31 -05:00
Christoph Oelckers
d8c689d874
- initialize function symbols. At the moment all it does is process the existing native functions. Any further processing will be done once the base classes of the engine can be parsed from the scripting files.
...
- switched the types of the internal 'self' and 'stateowner' parameters so that they get assigned correctly. I can't tell if this will error out if fields get accessed from the caller with the wrong class, but for actual scripting to work these must be correct.
The committed 'actor.txt' can be parsed successfully, with the exception of a few subclass references that cannot be resolved yet.
2016-10-11 18:53:10 +02:00
raa-eruanna
289e76cce7
Merge http://github.com/rheit/zdoom
2016-10-11 10:38:05 -04:00
raa-eruanna
b724de6ee3
Merge http://github.com/coelckers/gzdoom
2016-10-11 10:38:02 -04:00
Magnus Norddahl
f37ee3a024
Add bgra support to OpenGLSWFrameBuffer
2016-10-11 15:43:12 +02:00
Magnus Norddahl
f5c069c759
Merge remote-tracking branch 'origin/gl_swframebuffer' into qzdoom
2016-10-11 14:54:18 +02:00
Christoph Oelckers
bdbc7c3fb7
- removed CreateDamageFunction, because it's no longer needed for defining a 'damage' constant.
2016-10-11 14:43:17 +02:00
Magnus Norddahl
3c7d6234cb
Add wipes
2016-10-11 14:37:57 +02:00
alexey.lysiuk
7510ad1635
Fixed missing fake floors in deferred buffer mode
...
wow.wad is now genuine and authentic...
2016-10-11 14:56:22 +03:00
Christoph Oelckers
6989b81688
- extended the grammar so that the DECORATE function declaration list can almost be used as-is, with the sole exception of requiring any action function to declare a return type, even if it is void.
...
This adds:
* builtin types color, state and sound.
* ending a parameter list with an ellipsis to declare a varargs list. (A_Jump uses this.)
* allowing to declare optional arguments by giving them a default value.
* adding an 'action' qualifier for function declarations.
2016-10-11 13:11:40 +02:00
Magnus Norddahl
7911302ad8
Hook in gamma shader
2016-10-11 13:09:32 +02:00
Magnus Norddahl
01dc9de8d1
Misc bug fixes and performance improvements
2016-10-11 10:27:18 +02:00
Christoph Oelckers
dde25820e2
- fixed winding of voxel polygons.
2016-10-11 09:08:31 +02:00
raa-eruanna
1ea533add5
Merge http://github.com/rheit/zdoom
2016-10-11 02:27:55 -04:00
Christoph Oelckers
acec2e5b07
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-10-11 00:57:31 +02:00
Christoph Oelckers
3b19887637
- implemented the Defaults property initializer.
...
This uses the same property and flag tables as DECORATE with a few changes:
* it sets the parse mode to strict, so that several DECORATE warnings are now errors.
* trying to change a deprecated flag will print a warning.
* setting of editor numbers, spawn and conversation ID id not possible. Use MAPINFO to do this.
* all subclass flags must use the qualified name now (e.g. +ALWAYSPICKUP will print an error.)
* the scriptable Damage property is not yet implemented. This will require a special case with a differently named property in the processing function because in the AST it is no longer possible to distinguish between a damage value and a constant damage function.
2016-10-11 00:56:47 +02:00
Christoph Oelckers
084bf8c576
- fixed: VisibleAngle and VisiblePitch actor properties require both parameters to be present, but the second one was set to optional.
2016-10-11 00:23:50 +02:00
Magnus Norddahl
682b040b97
OpenGL based software renderer hardware accel now works for most things
2016-10-11 00:03:46 +02:00
Magnus Norddahl
f4308b3184
Add glsl shader version of the d3d9 shaders and get enough of it working for it to boot without errors
2016-10-10 21:03:55 +02:00
Major Cooke
b6b122b1e6
Added ability to change overlay alphas independently and renderstyles.
...
- A_OverlayRenderStyle(int layer, int style) - Sets the renderstyle of a layer to one of the STYLE_ types.
- A_OverlayAlpha(int layer, float alphaset) - Sets the alpha of a layer.
- OverlayAlpha(int layer) - Non-action function retrieves the alpha of a layer.
New overlay flags:
- PSPF_ALPHA/STYLE - enables individual alpha and render styles on the layers set with them.
- PSPF_FORCE(ALPHA/STYLE) - Forces the overlay's alpha to be rendered with its own amount instead of multiplying. This does not count towards fuzzy, transsouls, or stencil (use stenciladd, etc. for stencil).
- PSPF_FLIP - Flips the X of the layer over, drawing it in reverse.
2016-10-10 10:11:32 -05:00
Christoph Oelckers
2b9af0176c
- changed grammar for a class's default block to look and act like DECORATE, so that it can hook into the same property dispatcher.
...
This had been defined as a regular compound statement but in the context this will be used in, that makes very little sense, because all it can do is set some constant values.
The most important thing here is that it doesn't provide an unnecessary learning curve to its users and doing it this way will not only ensure that but also avoid redundant documentation.
To allow initialization of other user-defined properties it will require some extensions but that's a job for later and can just as easily be done in the current framework, rather than throwing everything out and start from zero.
2016-10-10 16:53:24 +02:00
raa-eruanna
2a7b902a0a
Merge http://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/renderer/gl_renderer.cpp
2016-10-10 10:39:07 -04:00
Christoph Oelckers
14a6e7989b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/menudef.txt
2016-10-10 11:38:08 +02:00
Major Cooke
31ca5a1900
Added OverlayX/Y(int layer)
...
- Retrieves the X/Y positions of an overlay.
- A_OverlayFlags and A_OverlayOffset now interpret a layer of 0 to mean 'use this calling layer'.
2016-10-10 10:48:50 +02:00
alexey.lysiuk
a771a3edd4
Fixed potential crash caused by A_Warp()
...
ACSF_Warp case was refactored to express its intention clearly
http://forum.zdoom.org/viewtopic.php?f=2&t=53734
2016-10-10 10:47:43 +02:00
Magnus Norddahl
40df46f94e
Implement OpenGL versions of GPU objects
2016-10-10 07:39:02 +02:00
raa-eruanna
1fab0cc514
- Added: PlayerPawn property "Player.ViewBob" which acts as a MoveBob/StillBob multiplier.
2016-10-10 01:35:47 -04:00
Christoph Oelckers
e84d6a06d8
- changed PClass:AddField so that it doesn't create defaults if none are present. The ZScript compiler will not create any defaults until after all fields have been added and this function created bad data if it was run on a class without defaults.
...
- added checks for duplicate field names.
- moved the tree node symbol tables out of PSymbolTreeNode to the worker data. That symbol is a bad location because it restricts the usefulness of the symbol class which is also needed for variables which use different AST structs.
- fixed some memory management issues with the work classes for the compiler that became apparent after moving the symbol tables in there. In several places these were copied around, possibly losing data.
2016-10-10 01:18:47 +02:00
Christoph Oelckers
4ecd7dd13a
- a bit of cleanup.
2016-10-09 22:01:23 +02:00
Christoph Oelckers
ad43f2bc7e
- parse the list of class/struct fields and add the PField entries to their type.
...
- fixed a few issues with trying to access a class's Type before it got initialized.
2016-10-09 21:54:23 +02:00
Christopher Bruns
779e6acb7b
Create "final" two non-VR 3D modes: Column-interleaved and checkerboard.
2016-10-09 13:05:50 -04:00
Magnus Norddahl
5f0088ab8b
Created new OpenGL framebuffer using the software renderer's hardware acceleration
2016-10-09 12:50:57 +02:00
Christoph Oelckers
49f18c0a19
- renamed the symbol tables holding the tree nodes so that the code becomes clearer to read. Necessary because the unclear naming caused:
...
- fixed: The tree nodes for classes and struct members were stored in the global tree nodes table.
- sort variable declarations into their own list for processing.
2016-10-09 09:09:17 +02:00
Magnus Norddahl
94d8e10f96
Merge branch 'ssao' into qzdoom
2016-10-09 06:27:42 +02:00
Magnus Norddahl
1b7c42f45f
Multisampling ssao bug fixes and split linear depth to its own buffer
2016-10-09 06:17:48 +02:00
Christoph Oelckers
efcd5a8683
- forgot to delete these lines.
2016-10-08 22:18:51 +02:00
Christoph Oelckers
08f313d011
- implemented complete resolving of constants - both global and class-local.
...
This uses a different algorithm as the old implementation - instead of recursively resolving unknown symbols it will first collect all constants from all scopes and then process them in one operation, doing multiple passes over the list until no more constants can be resolved anymore.
2016-10-08 22:16:10 +02:00
Christoph Oelckers
5bb6bb31ca
- added ProcessStruct, analogous to ProcessClass.
...
Now everything should be in place to resolve all constants - inside and outside classes or structs.
2016-10-08 15:39:54 +02:00
Christoph Oelckers
d139ee9f68
- give the 'default' block its own node type in the AST.
...
- group a class's body the same way as the global AST. Only partially implemented so far so that constants can be processed.
2016-10-08 15:27:20 +02:00
alexey.lysiuk
9a72ef1bf1
Added detection of current macOS version
2016-10-08 15:47:16 +03:00
Christoph Oelckers
82ac2081b6
- create struct types.
...
- fixed class creation. There was an infinite loop and some missing checks for native classes.
- do not write the compiler's symbols to the same symbol table as the output. The output must go to GlobalSymbols but the internal symbols must go to a namespace specific table that can be discarded after compilation.
2016-10-08 13:34:37 +02:00
Christoph Oelckers
b71e8d09ed
- create class types from the AST.
...
This is the first thing the compiler has to do to get access to the class's symbol table. Of course at this point the final size of a class is not known yet so these are currently all treated as tentative.
2016-10-08 11:54:33 +02:00
Magnus Norddahl
fc07a25306
Add aliasing meta data to loads and stores
2016-10-08 09:29:26 +02:00
Christoph Oelckers
fff428c71d
- added copyright headers to scripting files.
2016-10-08 08:35:16 +02:00
Magnus Norddahl
0b0ee2e3c2
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-08 06:50:42 +02:00
Magnus Norddahl
b3be0d22cc
Unroll loops by 8 and enable some additional passes
2016-10-08 06:50:33 +02:00
raa-eruanna
f5681cf42f
Merge http://github.com/rheit/zdoom
2016-10-08 00:31:54 -04:00
Magnus Norddahl
606b7f5a00
Run module level LLVM optimization passes before calling finalizeObject
2016-10-08 04:59:24 +02:00
Christoph Oelckers
994bb4fc7a
- started to make ZScript parser work on real-life data. It will now read a lump named ZSCRIPT which is a list of filenames to be compiled.
...
- place generated symbols into GlobalSymbols instead of a scratch table that will be discarded right away.
- allow the state object to change source file scanners (I hope this works, but the old implementation was unable to do more than one with with a parse state so I had to change it.)
- It can now parse constants.txt and insert everything in it into the global symbol table and make subsequent DECORATE compile properly.
2016-10-08 01:05:27 +02:00
Christoph Oelckers
d819aafcf3
- changed handling of duplicate classes in DECORATE.
...
Instead of replacing the original, the second class will get renamed now, using the originating file as an identifier. In the vast majority of cases this should do exactly what is needed: Create an unconflicting second class that can coexist with the original. Unless the class is used by name this should eliminate all problems with this, but so far I haven't seen anything that used them by name.
This is choosing the lesser of two evils. While some mod out there may get broken, the old setup meant that the first class of a given name could not be written out to a savegame because it was not retrievable when loading it back.
2016-10-07 15:28:25 +02:00
raa-eruanna
a2551ce95e
Merge http://github.com/rheit/zdoom
2016-10-07 08:30:25 -04:00
Christoph Oelckers
06ca41f8b5
- do not declare PNamedType::Outer as DObject.
...
Ultimately we may have to get a fully qualified name out of this, so Outer should be a type that can handle this feature. The new class for this is currently used as base for PType and PSymbol so that PNamedType inherits from it and maybe later a namespace symbol can, too.
2016-10-07 13:59:29 +02:00
Magnus Norddahl
aae4571c95
Changed column drawers to use true color textures
2016-10-07 12:45:21 +02:00
Christoph Oelckers
ee66d22034
Revert "- added an option to disable the pickup screen flash."
...
This reverts commit 2d320a2e86
.
The feature has been superseded by pickup_fade_scalar and is no longer needed.
2016-10-07 08:46:06 +02:00
Magnus Norddahl
6512068005
Remove unused queue_wallcommand
2016-10-07 07:03:13 +02:00
Magnus Norddahl
78415461b9
Removed old SSE macros and drawers
2016-10-07 06:56:20 +02:00
Magnus Norddahl
5a0f67308f
Merge branch 'master' of https://github.com/raa-eruanna/qzdoom into qzdoom
2016-10-07 06:40:39 +02:00
Magnus Norddahl
8c259f50b1
Add codegen for rt column drawers
2016-10-07 06:40:29 +02:00
raa-eruanna
a80c67c2ca
- Backported blood_fade_scalar from Skulltag
...
- Added new pickup_fade_scalar which works the same way for pickups
- Default for blood_fade_scalar is 1.0 instead of 0.5 from Skulltag.
2016-10-07 00:35:06 -04:00
Christoph Oelckers
2e78d34046
- fixed: DCeiling's main constructor could leave some fields uninitialized.
2016-10-07 00:33:53 -04:00
Christoph Oelckers
f89d47d03e
- fixed: ZCC_OpInfoType::FindBestProto was missing checks for exact match of the required conversion before testing if it is a F32->F64 conversion.
...
Of course, since 0 means that there is no conversion it also means that there is no data that could be checked.
2016-10-07 00:33:53 -04:00
Christoph Oelckers
9dc51b2743
- rewrote AActor::DestroyAllInventory so that it clears the item's link to its owner and the owner's inventory list before destroying them.
...
There have been reports about crashes in here with Linux that point to some of the code that gets called here doing unwanted things on the owner, so with these links cleared that should no longer be possible.
2016-10-07 00:33:53 -04:00
Magnus Norddahl
584220edf0
Move DrawerCommandQueue to its own file
2016-10-07 04:01:38 +02:00
Magnus Norddahl
c1e859dbca
Added codegen for column drawers
2016-10-07 03:38:43 +02:00
raa-eruanna
02f66fa34e
- Backported blood_fade_scalar from Skulltag
...
- Added new pickup_fade_scalar which works the same way for pickups
- Default for blood_fade_scalar is 1.0 instead of 0.5 from Skulltag.
2016-10-06 20:01:20 -04:00
Christoph Oelckers
fc246be03e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-06 21:21:46 +02:00
Christoph Oelckers
99c4d03ad4
- fixed: DCeiling's main constructor could leave some fields uninitialized.
2016-10-06 21:20:49 +02:00
Christoph Oelckers
d7bb5bb41e
- fixed: ZCC_OpInfoType::FindBestProto was missing checks for exact match of the required conversion before testing if it is a F32->F64 conversion.
...
Of course, since 0 means that there is no conversion it also means that there is no data that could be checked.
2016-10-06 12:08:38 +02:00
Christoph Oelckers
c56d2eecb0
- rewrote AActor::DestroyAllInventory so that it clears the item's link to its owner and the owner's inventory list before destroying them.
...
There have been reports about crashes in here with Linux that point to some of the code that gets called here doing unwanted things on the owner, so with these links cleared that should no longer be possible.
2016-10-06 08:50:46 +02:00
Magnus Norddahl
bb79dcb634
SSAO math bug fixes
2016-10-06 07:36:49 +02:00
raa-eruanna
e592473f57
Merge http://github.com/rheit/zdoom
2016-10-05 21:36:23 -04:00
Christoph Oelckers
59d5b42abf
- fixed: G_UnsnapshotLevel should abort with an error if it cannot read the savegame.
...
- fixed: The exception handler in G_DoLoadGame needs to rethrow the exception it receives.
2016-10-05 19:02:53 +02:00
Christoph Oelckers
aeb5377821
- do not generate SYSEX events when playing MIDIs through FMod, because there has been a report that it doesn't work correctly.
2016-10-05 16:45:12 +02:00
Christoph Oelckers
2d320a2e86
- added an option to disable the pickup screen flash.
2016-10-05 09:59:19 +02:00
Magnus Norddahl
00e72028ef
Add another gbuffer with normal data and make ssao pass use it
2016-10-05 07:57:27 +02:00
raa-eruanna
3f020e686f
Merge http://github.com/coelckers/gzdoom
2016-10-04 23:26:50 -04:00
Magnus Norddahl
490dd612b3
Keep using render buffers when ssao is off, for better performance
2016-10-05 03:56:58 +02:00
Christoph Oelckers
64863d30f3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-04 18:17:32 +02:00
Major Cooke
0e9f808c8a
Fixed: FLATSPRITES were drawn backwards.
2016-10-04 10:05:57 -05:00
Christoph Oelckers
15cbf4bae6
- fixed: DecoHandleRuntimeState must check all parent classes when trying to determine if the target is a valid state. It should also ensure that both the calling and target state belong to the same actor. Although unlikely it cannot be entirely ruled out that a bogus index randomly points to a seemingly valid state elsewhere.
2016-10-04 09:28:19 +02:00
raa-eruanna
cc5f3a0ec0
Merge http://github.com/rheit/zdoom
2016-10-03 23:49:31 -04:00
Marisa Heit
594b344be9
Don't use MIN<short> when clamping topclip.
...
- This was fine with fixed point numbers, since they could never be
outside of short range when converted to regular ints. With floating
point numbers now, that condition no longer holds.
2016-10-03 22:05:02 -05:00
raa-eruanna
f9795a2533
Revert "Remove linear sky again"
...
This reverts commit 21390e91b8
.
- also set r_linearsky to "false" by default.
2016-10-03 21:39:15 -04:00
Magnus Norddahl
e05ed47fee
Remove C++ and SSE drawers
2016-10-04 01:36:26 +02:00
Magnus Norddahl
e9d13e5d74
Remove gl_light_math (reverts last remains of old lightmath branch)
2016-10-04 00:25:35 +02:00
Magnus Norddahl
51f867bc6c
Merge branch 'ssao' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_renderer.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
# wadsrc/static/shaders/glsl/main.fp
2016-10-04 00:16:05 +02:00
Magnus Norddahl
ecb57d6cd9
Merge remote-tracking branch 'gzdoom/master' into ssao
...
# Conflicts:
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# src/gl/shaders/gl_shader.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-04 00:01:03 +02:00
Magnus Norddahl
bcb64a3445
Merge branch 'ssao' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# src/gl/shaders/gl_ambientshader.cpp
# src/gl/shaders/gl_ambientshader.h
# src/gl/system/gl_cvars.h
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-03 23:47:09 +02:00
Magnus Norddahl
dcb6c1ac3a
Move ApplyFXAA to PostProcessScene
2016-10-03 23:30:00 +02:00
Magnus Norddahl
9c8f841858
Merge branch 'llvmcompiler' into qzdoom
2016-10-03 23:22:28 +02:00
alexey.lysiuk
5d99e7dafe
Fixed compilation on platforms other than Windows
2016-10-03 22:13:33 +03:00
alexey.lysiuk
d6346fb0c6
Fixed compilation with GCC or Clang
2016-10-03 21:44:00 +03:00
Major Cooke
d597af1494
- Fixed a few corner cases where forcing alpha wouldn't work.
...
- On the other hand, soultrans, fuzzy and stencil (as is, not including the mixing styles like stenciladd) are no longer accounted for by FORCEALPHA.
2016-10-03 13:14:48 -05:00
Christoph Oelckers
15af9242d6
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-03 16:22:16 +02:00
Christoph Oelckers
7ab7fc9a57
- seems I missed this part...
2016-10-03 16:21:50 +02:00
Christoph Oelckers
4eb5f10b02
- use normals to have proper light attenuation. So far only implemented for walls and flats. Models are planned but need some thinking about how to efficiently collect all required lights for an object.
2016-10-03 16:09:32 +02:00
Christoph Oelckers
41ab08ee47
- fixed: TVector::Resized needs to consider that the input vector has a length of 0. In this case just performing the normal calculations results in an invalid vector.
2016-10-03 11:00:26 +02:00
Magnus Norddahl
7c47806382
Fix aspect ratio bug in LensDistortScene
2016-10-03 09:18:47 +02:00
raa-eruanna
267b131c03
Merge http://github.com/rheit/zdoom
2016-10-02 23:10:28 -04:00
raa-eruanna
c6408e92e2
Merge http://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-02 23:10:07 -04:00
Major Cooke
8cfeca655d
Added priority renderstyles, and added PSPF_FORCE(ALPHA / STYLE).
...
- Renderstyles now override alpha based on which is used.
- The new flags will override whatever renderstyle and alpha is currently being utilized.
2016-10-02 21:19:56 -05:00
Major Cooke
4865e7109c
Fixed merge conflicts.
2016-10-02 21:18:01 -05:00
Christoph Oelckers
2da18bfa56
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-03 00:56:55 +02:00
Major Cooke
201ae3c60f
Added OverlayID() for retrieving psprite layer numbers.
2016-10-03 00:44:06 +02:00
alexey.lysiuk
c68aa2b241
Added FXAA post-processing
...
Implementation of Fast Approximate Anti-Aliasing is based on nVidia sample:
https://github.com/NVIDIAGameWorks/GraphicsSamples/tree/master/samples/es3-kepler/FXAA
2016-10-03 00:15:45 +02:00
Christopher Bruns
5391216756
Delete unused new BlitFromEyeTexture() method I ended up not using.
2016-10-02 16:27:43 -04:00
Christopher Bruns
63b28a1d80
Retain stereoscopic parity after dragging window in row interleaved 3D mode.
2016-10-02 16:11:06 -04:00
Christopher Bruns
0240cdef18
Modulate row interleaved stereo 3d offset with window height parity, because gl_FragCoord.y approaches zero at the bottom, not the top of the window.
2016-10-02 16:10:58 -04:00
Christopher Bruns
576619504e
Remove unused WindowHeight uniform.
2016-10-02 16:10:50 -04:00
Christopher Bruns
fcbf9342d6
Compute row location using gl_FragCoord.
2016-10-02 16:10:39 -04:00
Christopher Bruns
460b653709
Row interlaced 3d might be working, at least in fullscreen 1920x1080 mode.
2016-10-02 16:10:21 -04:00
Christopher Bruns
79046580d5
Partial implementation of row interlaced mode.
2016-10-02 16:09:22 -04:00
Christopher Bruns
960d4d6755
Create TopBottom3D mode and begin sketching RowInterleaved3D mode.
2016-10-02 16:09:02 -04:00
N.E.C
671646be26
Fix errors encountered when compiling for v140_xp target
2016-10-02 13:05:26 -07:00
Major Cooke
1620ff58c8
Added INTCVAR to DrawNumber.
...
- Allows retrieval and displaying of an int/bool user/server cvar.
2016-10-02 20:11:13 +02:00
Christoph Oelckers
e84a7de390
- variable was in the wrong scope.
2016-10-02 18:56:04 +02:00
Christoph Oelckers
37d61167ea
- hotfix for a RapidJSON bug: If the Writer tries to process an INF or NaN value, it aborts and leaves the writer in a broken state, unable to recover. Changed so that it writes a 0 value so that the resulting JSON at least parses correctly.
2016-10-02 18:50:37 +02:00
Christoph Oelckers
3418710a38
- be a bit more thorough and also call Effect() on vertically moving missiles with zero damage.
2016-10-02 14:38:48 +02:00
Christoph Oelckers
865863ab6f
- fixed: AFastProjectile did not work properly for perfectly vertically moving missiles. Like AActor::Tick it needs to ensure that a tiny bit of lateral movement is present so that collision detection and the Effect() function work as intended.
2016-10-02 14:37:26 +02:00
Christoph Oelckers
0bce6e3925
- added ACS and DECORATE setter functions for named translations.
2016-10-02 14:09:45 +02:00
Christoph Oelckers
a505e91032
- added TRNSLATE lump for defining global translations which are accessible by name.
...
This is only the definition part, manipulation functions for ACS and DECORATE still to do.
2016-10-02 13:35:25 +02:00
alexey.lysiuk
d7683a8c55
Fixed crash on early fatal error exit
...
Process terminates correctly if zdoom.pk3 is missing
2016-10-02 10:13:45 +03:00
Marisa Heit
efc9ed2fe9
Fix state lookup from non-action functions (i.e. Damage functions)
2016-10-01 22:31:07 -05:00
Marisa Heit
eb2ee33950
FxVMFunctionCall must pass null pointers when calling an action function from a non-action function
2016-10-01 22:29:57 -05:00
Marisa Heit
944ae2bc09
Only generate the self==stateowner check inside action functions
2016-10-01 21:47:43 -05:00
raa-eruanna
ff0d409e2b
Merge http://github.com/rheit/zdoom
2016-10-01 19:06:43 -04:00
raa-eruanna
a89ec61dc1
Merge http://github.com/coelckers/gzdoom
2016-10-01 19:06:40 -04:00
Christoph Oelckers
51ffd6d9c6
- fixed some warnings.
...
- A_SetRenderStyle should not default to STYLE_None.
2016-10-02 01:00:07 +02:00
Christoph Oelckers
80f2f5829f
- added A_SetRenderStyle function which replaces A_SetTranslucent. A_SetTranslucent had to be deprecated due to obsolete semantics of the renderstyle argument.
2016-10-02 00:43:05 +02:00
Christoph Oelckers
ff0b879323
- added UDMF portal flags. Names are identical with Eternity for compatibility reasons.
2016-10-02 00:31:25 +02:00
Christoph Oelckers
cfa6b817b5
- made bloom and tonemap settings game specific and save all related CVARs.
...
As was pointed out: "That said, there is one minor problem - different game artstyles can constitute whether Bloom is turned on, which tonemap is used, etc. For example, when playing Doom, I like having my bloom on, but if I am going to start playing the Adventures of Square, the art style and bloom don't mix, in my opinion. For this, I have to remember to switch my bloom settings every time I switch IWad"
2016-10-01 21:34:13 +02:00
Christoph Oelckers
3a3d538a45
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-01 18:22:00 +02:00
Christoph Oelckers
7720359f4c
- fixed: AActor::Masacre must restore the flag if it cannot kill the monster.
2016-10-01 12:08:07 +02:00
alexey.lysiuk
099bfed806
Fixed endianness issue with precaching of MUS files
2016-10-01 11:50:29 +02:00
Magnus Norddahl
c960742dbd
Fix 64 bit compile errors
2016-10-01 11:47:21 +02:00
alexey.lysiuk
e9ce699042
Fixed compilation with GCC or Clang
2016-10-01 12:17:15 +03:00
Magnus Norddahl
8765cf2016
Change Windows build to use a precompiled version of LLVM
2016-10-01 06:51:55 +02:00
raa-eruanna
558a7fcfb0
Merge http://github.com/rheit/zdoom
2016-09-30 19:34:27 -04:00
Christoph Oelckers
b400cf1454
- added an integrity check to the SNDINFO parser to detect and eliminate recursive links. Normally these would crash the sound code later.
...
- allow recursive linking of $random definitions (as long as they do not link back, see above.)
- fixed the sound precaching which did not handle $alias inside $random. Normally this went undetected but in cases where the random sound index was the same as a sound index in the current link chain this could hang the function.
2016-09-30 10:50:41 +02:00
Magnus Norddahl
28bb5da181
Hooked up LLVM wall drawers
2016-09-30 07:27:25 +02:00
raa-eruanna
6e3a49b065
Multilayer skies (Hexen) now properly show in truecolor mode. This is only supported for paletted skies, but it still offers a true-color output.
2016-09-29 21:29:40 -04:00
raa-eruanna
bbec9b86a3
- fixed: un-commented the line with said hack. oops.
2016-09-29 20:00:56 -04:00
raa-eruanna
1560ed07af
Added a hack that allows maps using fogmap to display properly in the true-color renderer. Unfortunately, this could be implemented better but at least for now it's here.
2016-09-29 20:00:00 -04:00
raa-eruanna
7cbaf80a2a
- Okay - so - last commit didn't actually fix anything. I think for now, it's better to turn off multi-threading by default until this can be fixed. r_multithreading has been changed to false by default, and is now saved in the user's .ini.
2016-09-29 12:49:10 -04:00
raa-eruanna
d58da58aee
- fixed: Prevents too many drawer thread commands from queueing up. Previously, drawing too many columns (which was accumulated by amassing a huge number of sprites) would crash the game.
2016-09-29 12:20:32 -04:00
raa-eruanna
2987668af8
Non-tiling skies (Heretic/Hexen) now render properly.
2016-09-29 06:20:30 -04:00
Magnus Norddahl
afab45674b
Added half of wall codegen
2016-09-29 07:38:33 +02:00
Magnus Norddahl
7be2511269
Add codegen files for walls and columns
2016-09-29 05:21:43 +02:00
Magnus Norddahl
e5f3c119cd
Codegen all DrawSpan variants
2016-09-29 04:01:42 +02:00
Magnus Norddahl
efd22346d8
Fix linear sampling bug
2016-09-29 02:26:36 +02:00
Magnus Norddahl
bfa291b02f
Create LLVMDrawers class as the external interface to the drawers
2016-09-29 02:10:14 +02:00
Magnus Norddahl
3aea3a0bee
Fully implemented codegen for DrawSpan
2016-09-28 18:49:39 +02:00
raa-eruanna
2f557419ed
Merge http://github.com/rheit/zdoom
2016-09-28 06:40:58 -04:00
raa-eruanna
dd9881b5fa
Merge http://github.com/coelckers/gzdoom
2016-09-28 06:40:56 -04:00
Marisa Heit
3988a63789
Fixed: The menu no longer refreshed the screen border
2016-09-28 06:40:55 -04:00
Marisa Heit
77ea195162
Fixed: Y and Z were flipped for sound velocity
2016-09-28 06:40:54 -04:00
Christoph Oelckers
2d5061e81f
- fixed: DScroller did not initialize m_LastHeight in all situations. This caused a problem with the serializer because RapidJSON aborts the write of a floating point value if it is invalid.
...
- ensure that floats are always written out. If the actual value causes an error (i.e. INF or NaN), write a 0 to guarantee proper formatting.
2016-09-28 11:58:12 +02:00
Christoph Oelckers
f1bb7679a3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-28 09:50:03 +02:00
Christoph Oelckers
676d2365e1
- fixed: The ACS strings deserializer set incorrect indices in the bucket array. This only caused a problem if there were gaps in the string pool.
2016-09-28 09:49:41 +02:00
Christoph Oelckers
b75395aa74
- fixed: Screen size update coordinates were copied into the wrong buffer location.
2016-09-28 09:25:48 +02:00
Christoph Oelckers
d5e31aff1b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-28 08:27:55 +02:00
Christoph Oelckers
12ea8ffbe4
- removed some leftover garbage from the floating point rewrite in the floorRaiseToLowestCeiling case of DFloor.
2016-09-28 08:06:15 +02:00
Magnus Norddahl
576fed5afc
Add light, blend and sampler functions
2016-09-28 05:18:16 +02:00
Marisa Heit
e3be6e4819
Fixed: The menu no longer refreshed the screen border
2016-09-27 18:58:09 -05:00
raa-eruanna
d05ed3740b
Corrected forum links in version.h
2016-09-27 19:27:57 -04:00
Marisa Heit
40f0dbf51c
Fixed: Y and Z were flipped for sound velocity
2016-09-27 16:27:31 -05:00
Magnus Norddahl
f9a7186550
Improve DrawSpan codegen enough to do the simple shade for 64x64 flats
2016-09-27 22:54:37 +02:00
Magnus Norddahl
20f67ad40a
Add SSAShort, shift, and, or, and fix unaligned store
2016-09-27 22:53:20 +02:00
raa-eruanna
1b7827342c
- Fixed: Changed r_clearbuffer to do a little more than clear the top quarter of the screen. Still need to do an actual color fill - will do it later.
2016-09-27 04:14:00 -04:00
Magnus Norddahl
d5c7a7ab76
Make LLVM compile and optimize for the current CPU
2016-09-27 03:07:03 +02:00
Magnus Norddahl
4f2ae42ed5
Revert duplicate entry in CMakeLists.txt
2016-09-26 09:04:29 +02:00
Magnus Norddahl
3dd8b593b6
Use LLVM to JIT the code for one of the drawer functions
2016-09-26 09:00:19 +02:00
raa-eruanna
c8d0a478d8
Merge http://github.com/coelckers/gzdoom
2016-09-25 19:43:52 -04:00
Christoph Oelckers
750c194959
- changed order of SwapBuffers and glFinish call. The new order with glFinish coming last is recommended by OpenGL and it fixes a stalling problem with portals and camera textures visible at the same time.
...
- check and use WGL_EXT_swap_control_tear extension. The above change makes the system always wait for a full vsync with a wglSwapInterval of 1, so it now uses the official extension that enables adaptive vsync. Hopefully this also works on the cards where the old setup did not.
2016-09-26 01:38:25 +02:00
raa-eruanna
0bc54cbda4
Fixed SDL backend. This project is now Linux capable!
2016-09-25 17:40:37 -04:00
raa-eruanna
d91fe1572c
Merge http://github.com/coelckers/gzdoom
2016-09-25 14:08:20 -04:00
raa-eruanna
6cc1cea54d
Merge branch 'master' of https://github.com/raa-eruanna/QZDoom
2016-09-25 13:50:11 -04:00
raa-eruanna
08166473ca
Merge branch 'truecolor' of http://github.com/dpjudas/dpdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-25 13:48:52 -04:00
alexey.lysiuk
e9b1da57a3
Fixed compilation on macOS
2016-09-25 17:43:52 +03:00
Christoph Oelckers
d65589281f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-25 10:28:51 +02:00
Christoph Oelckers
f4462a7b93
- fixed: Any DSectorEffect thinker must be placed into STAT_SECTOREFFECT.
...
The slot had been there forever to address this same problem but only one of the two constructors actually set it, too bad that it was the wrong one...
This is something that normally won't be noticed. But if some actor is spawned on a moving platform, with both thinkers on the same statnum it means that the order of execution is not correct with the platform being done first, resulting in the actor to 'jump' while the platform is moving. To prevent this it is necessary that all sector movers only tick after all actors have completed their thinking turn.
2016-09-25 09:43:17 +02:00
Christoph Oelckers
92d0043a81
- undid part of the last commit and hopefully corrected it for good now.
...
We have to be extremely careful with the player data, because there's just too much code littered around that has certain expectations about what needs to be present and what not.
Obviously, when travelling in a hub, the player_t should be retained from the previous level. But we still have to set player_t::mo to the PlayerPawn from the savegame so that G_UnsnapshotLevel doesn't prematurely delete it and all associated voodoo dolls, because it checks player_t::mo to decide whether a player is valid or not.
The actual deletion of this redundant PlayerPawn should only be done in G_FinishTravel, after the actual player has been fully set up
2016-09-25 09:23:44 +02:00
raa-eruanna
ed07ff1bdd
Merge http://github.com/dpjudas/dpdoom
2016-09-25 02:19:39 -04:00
raa-eruanna
1c25ad7ce4
Merge http://github.com/rheit/zdoom
2016-09-24 23:36:51 -04:00
raa-eruanna
9ecb7d44f7
Merge http://github.com/coelckers/gzdoom
2016-09-24 23:36:47 -04:00
Christoph Oelckers
6a6a0e8017
- removed some more hubtravel related player start fudging.
...
* do not skip the player_t init when travelling in a hub. The old player may still be needed in some edge cases. This applies only to singleplayer for now. The multiplayer version still needs reviewing. I left it alone because it may shuffle players around which is not wanted when doing hub travelling.
* do not spawn two temp players in G_FinishTravel. Instead handle the case where no player_t::mo can be found gracefully by adding a few nullptr checks. This temp player served no real purpose except for having a valid pointer. The actual start position was retrieved from somewhere else.
2016-09-25 01:28:27 +02:00
Magnus Norddahl
287acea6b4
Update copyright
2016-09-25 00:31:57 +02:00
Magnus Norddahl
6cb9f875dd
Fix missing call from merge
2016-09-25 00:31:43 +02:00
Magnus Norddahl
979e70ca8f
Add gl_ssao_portals for controlling how many portals gets SSAO
2016-09-25 00:22:38 +02:00
Magnus Norddahl
3f11c0562c
Add ssao quality setting
2016-09-25 00:22:38 +02:00
Magnus Norddahl
0397fe185f
Don't do ambient occlusion when rendering to texture
2016-09-25 00:22:32 +02:00
Magnus Norddahl
d774136282
Added SceneData texture as the second colorbuffer when rendering a scene and placed fog data into it
2016-09-25 00:22:32 +02:00
Magnus Norddahl
9af34bac69
Add gbuffer pass support to FShaderManager and FRenderState
2016-09-25 00:22:32 +02:00
Magnus Norddahl
37e3172c94
Fix random texture sampling bug
2016-09-25 00:22:31 +02:00
Magnus Norddahl
0a8cc1b74c
Fix depth blur
2016-09-25 00:22:31 +02:00
Magnus Norddahl
24ab13f1ce
Fix stripes in the reconstructed normals due to down scaling
2016-09-25 00:22:31 +02:00
Magnus Norddahl
11725c435e
Grab tanHalfFovy from the projection matrix
2016-09-25 00:22:31 +02:00
Magnus Norddahl
e025f6e54b
Mark portals in scene alpha channel for the SSAO pass
2016-09-25 00:22:31 +02:00
Magnus Norddahl
c7c0ffadb5
Move SSAO pass to be before translucent rendering
...
Fix depth sampling location when not using fullscreen scene
2016-09-25 00:19:16 +02:00
Magnus Norddahl
09bec67821
Resolve multisampling depth in shader
2016-09-25 00:19:16 +02:00
Magnus Norddahl
a246b58673
Change SSAO blur to be depth aware
2016-09-25 00:19:16 +02:00
Magnus Norddahl
a6fdaca633
Fix precision issue in SSAO shader
2016-09-25 00:19:16 +02:00
Magnus Norddahl
723eb746f6
Add ssao random texture
2016-09-25 00:19:15 +02:00
Magnus Norddahl
9076d46261
Added SSAO pass
2016-09-25 00:19:15 +02:00
Christoph Oelckers
7d978a115e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-24 17:54:53 +02:00
Major Cooke
74b8e9f286
- Don't use Normalized180() on angles. This could result in ranges being wrongly inverted.
...
- Fixed properties not having the proper indices.
- Use ViewPos-to-actor instead of measuring actor-to-actor.
- Use the actual camera instead of the actor so camera textures can work.
2016-09-24 17:54:09 +02:00
alexey.lysiuk
a419b581a8
Fixed compilation on macOS
2016-09-24 13:15:45 +03:00
Christoph Oelckers
8907a8bfe8
- fixed incorrect function name in sprites drawer.
...
- fixed duplicate property key in ADynamicLight serializer. Radius was already claimed by AActor so this needs a different name.
2016-09-24 12:09:53 +02:00
Christoph Oelckers
3f17d64f90
- fixed pitch comparison in visibility checking.
2016-09-24 09:42:35 +02:00
Magnus Norddahl
5ef46d1730
Merge remote-tracking branch 'gzdoom/master' into qzdoom
2016-09-24 09:37:18 +02:00
Magnus Norddahl
7ef5a9f117
Add the experimental swrenderer2
2016-09-24 09:36:37 +02:00
Major Cooke
561edd31ec
Added check for angle visibility for GZDoom.
2016-09-24 09:29:00 +02:00
Christoph Oelckers
6b02ea9871
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# CMakeLists.txt
2016-09-24 09:28:09 +02:00
Christoph Oelckers
3862c77b4b
- undid savegame version bump because it's not needed.
2016-09-24 09:18:25 +02:00
Major Cooke
dfa4f38c8f
Updated to new save game code.
2016-09-24 09:17:18 +02:00
Edoardo Prezioso
7e4d0ecdbf
- Fixed GCC/Clang regression post serialization.
2016-09-24 09:00:31 +02:00
Magnus Norddahl
8172949800
Merge branch 'lightmath' into dpdoom
2016-09-24 08:40:47 +02:00
Magnus Norddahl
4350587714
Remove accidental UpdateCameraExposure duplicate from merge
2016-09-24 08:40:28 +02:00
Magnus Norddahl
c21090333f
Merge remote-tracking branch 'qzdoom/master' into dpdoom
2016-09-24 08:17:49 +02:00
Magnus Norddahl
d126e91ded
Merge remote-tracking branch 'gzdoom/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
2016-09-24 08:12:12 +02:00
Christoph Oelckers
ee2766d00b
- made adjustments for new savegame code.
2016-09-24 01:47:44 +02:00
Christoph Oelckers
6bfbe30b99
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
# src/g_level.cpp
# src/p_saveg.cpp
# src/r_defs.h
# src/version.h
(note that this commit will not compile!)
2016-09-24 00:40:15 +02:00
Christoph Oelckers
b7c822d208
- fixed secplane_t serializer. It passed incorrect defaults to the sub-serializers and calculated negiC wrong.
2016-09-23 23:47:25 +02:00
Christoph Oelckers
69291b9cf9
- completely eliminated the horrible fudging that went on with players during hub travel. This means that DestroyMostThinkers and the player substitution mechanism in the object deserializer are gone now.
...
I wish I had realized this the last time it came up - it would have saved me a lot of trouble.
But as it turns out, the more recent travelling code makes all of this completely unnecessary, working perfectly fine with deleting the player pawns along with the rest of the thinkers before loading the stored ones from the savegame (and getting rid of those in G_FinishTravel.)
And with a sane savegame format that does not depend on side effects from how the thinker serializing handled linking into the lists the old code was even harmful, leaving voodoo dolls behind.
I had the exact same effect when I tried to reshuffle some things for reliably restoring portals, but did not make the connection to interference between two mutually incompatible player travelling mechanisms that just worked by sheer happenstance with the original order of things.
2016-09-23 23:03:11 +02:00
Christoph Oelckers
2318db0b1a
- let DWaggleBase use the interpolation pointer of its parent instead of defining its own one.
...
- do not call checking code for loading savegames when writing them in ACS module serializer.
2016-09-23 22:03:44 +02:00
Christoph Oelckers
36bf099d54
- fixed: object pointers as array members may not be skipped if they are null.
...
- changed S_GetMusic to return a const pointer to the actual music name instead of a copy. The only thing this is used for is the savegame code and it has no use for a copy, it can work far more efficiently with a const pointer.
2016-09-23 21:24:56 +02:00
Christoph Oelckers
02b3884dff
- added copyright header to serializer.cpp.
2016-09-23 20:13:22 +02:00
Christoph Oelckers
e4924c3d47
- added some missing End... calls in player deserialization code.
...
- fixed reading of music name.
In its current state the code is now capable of reading an E1M1 savegame and continuing play.
2016-09-23 20:05:12 +02:00
Christoph Oelckers
b844ab137e
- added some comments about the special player treatment in hub travels because this is not really intuitive...
2016-09-23 18:12:38 +02:00
Christoph Oelckers
01d28e3eb2
- added the last missing bits of the savegame code - thinker list deserialization and handling of players during hub travel. Now testing is what remains...
2016-09-23 17:49:33 +02:00
Christoph Oelckers
edb7f7959e
- re-enable some commented-out stuff.
2016-09-23 14:06:51 +02:00
Christoph Oelckers
86e9282193
- removed the sequential processing of JSON objects because the benefit is too small.
...
After testing with a savegame on ZDCMP2 which is probably the largest map in existence, timing both methods resulted in a speed difference of less than 40 ms (70 vs 110 ms for reading all sectory, linedefs, sidedefs and objects).
This compares to an overall restoration time, including reloading the level, precaching all textures and setting everything up, of approx. 1.2 s, meaning an increase of 3% of the entire reloading time.
That's simply not worth all the negative side effects that may happen with a method that highly depends on proper code construction.
On the other hand, using random access means that a savegame version change is only needed now when the semantics of a field change, but not if some get added or deleted.
- do not I_Error out in the serializer unless caused by a programming error.
It is better to let the serializer finish, collect all the errors and I_Error out when the game is known to be in a stable enough state to allow unwinding.
2016-09-23 14:04:05 +02:00
Christoph Oelckers
5a3f1dcdb6
- made reading of objects from the savegame work.
...
It turned out this may not be done automatically when opening the savegame - it has to be done later, after the pre-spawned map thinkers and all connected objects have been destroyed.
The object deserializer also has to be rather careful about dealing with parse errors, because if something goes wrong a whole batch of uninitialized or partially initialized objects will be left behind to destroy.
This means that no object class may assume that anything but the default constructor has been run on it and needs to check any variable it may reference.
2016-09-23 09:38:55 +02:00
Christoph Oelckers
a83ea4ddd2
- fixed two typos in property names.
2016-09-23 09:20:58 +02:00
Christoph Oelckers
cad2be46ac
- fixed several Destroy methods which blanketly assumed that the object's pointers were valid to use without checks.
...
This is not the case if deserialization prematurely aborts. The entire object may be invalid if something in the deserializer I_Error's out.
2016-09-23 08:49:30 +02:00
Christoph Oelckers
657140f985
- fixed: The canvastexture serializer did not call EndArray to close the containing object.
2016-09-23 08:27:31 +02:00
Christoph Oelckers
4964f94de1
- added a destructor zo DFsScript, because if this gets deleted outside the GC process it'll leave an allocated buffer behind, so make sure it always gets destroyed.
2016-09-23 08:26:36 +02:00
Christoph Oelckers
f397a4943c
- added OutputDebugString calls to I_Error functions in Win32, so that these messages can be seen in the debug output.
2016-09-23 08:14:40 +02:00
Christoph Oelckers
c17da32dbd
- added object deserialization. It seems to work, at least the stuff I sampled looked like it was properly reatored and it triggers no error condition.
...
- always make the top level object randomaccess when opening a JSON file for reading. Some things won't work right if this is opened for sequential access.
2016-09-23 00:45:41 +02:00
Christoph Oelckers
604b2b316b
- we need to save the OF_JustSpawned flag to insert thinkers into the proper list.
2016-09-22 21:17:34 +02:00
Christoph Oelckers
c22e8c50af
- fixed some errors with parsing globals.json. It looks like this file is being processed correctly now.
2016-09-22 19:36:23 +02:00
Christoph Oelckers
d9dbf26f63
- do not list savegames for different IWADs.
2016-09-22 17:39:09 +02:00
Christoph Oelckers
f52e2a8cc4
- removed bogus BeginObject call in deferred script serializer.
2016-09-22 12:36:29 +02:00
Christoph Oelckers
d5b771afdd
- fixed: Both array serializers need the bounds check.
2016-09-22 11:53:09 +02:00
Christoph Oelckers
68dc75bf9e
- fixed: array clamping may only be done when reading a savegame.
...
- fixed generation of savegame names for level snapshots.
2016-09-22 11:51:29 +02:00
raa-eruanna
2a9e97688d
Merge http://github.com/coelckers/gzdoom
2016-09-22 05:23:02 -04:00
Christoph Oelckers
e01965b747
- fixed deserialization of level.Scrolls.
2016-09-22 11:22:15 +02:00
Christoph Oelckers
18ee6353fa
- let's be safe and set the proper texture mode for the fullscreen blend rect. I've got spurious reports that on some occasions it was rendered opaque.
2016-09-22 10:54:16 +02:00
Christoph Oelckers
1bddc277e6
- fixed winding of voxel polygons.
2016-09-22 10:28:14 +02:00
Christoph Oelckers
960ed5130c
- fixed: DTA_ColorOverlay was not properly handled by F2DDrawer.
2016-09-22 10:20:36 +02:00
Christoph Oelckers
52d4c3970e
- use glPOlygonOffset on non-translucent flat and wall sprites to avoid z-fighting.
2016-09-22 10:00:40 +02:00
Christopher Bruns
2e8d2ed626
Implement vr_swap_eyes CVAR, now that side-by-side mode is mostly working.
2016-09-22 09:25:49 +02:00
Christopher Bruns
a1cbd39f3f
Move call to Stereo3DMode.AdjustPlayerSprites into FGLRenderer.DrawPlayerSprites()
...
(cherry picked from commit 5b5598d7d85c6bb8930e874d5d94cca835061bf0)
2016-09-22 09:25:48 +02:00
Christopher Bruns
a5c27af59b
Show weapon at full width in SideBySideFull 3D mode.
...
(cherry picked from commit c42e98c0042937adc05c1f1569d909d58a5b8ffb)
2016-09-22 09:25:48 +02:00
Christopher Bruns
7b8847c6be
Update comment for other file.
2016-09-22 09:25:47 +02:00
Christopher Bruns
d10a0309ab
Update header comment in gl_sidebyside3d source files
2016-09-22 09:25:47 +02:00
Christopher Bruns
1f79e23d5b
Implement wide side-by-side mode, using adjusted aspect ratio in projection matrix.
...
Use optimal framebuffer size for side-by-side modes.
2016-09-22 09:25:46 +02:00
Christopher Bruns
9a257ac158
Implement side-by-side narrow 3D mode.
2016-09-22 09:25:46 +02:00
raa-eruanna
72491049e0
Changes to the contrast/brightness/gamma formula for both hardware and shader gamma correction. Mainly makes a correction with the shader version where contrast/brightness being negative values would clip them inappropriately.
2016-09-22 09:23:25 +02:00
Magnus Norddahl
af699dcebc
Make bloom/exposure less aggressive
2016-09-22 09:13:33 +02:00
Magnus Norddahl
f7b6b1433c
Added exposure pass calculating the bloom/tonemap exposure based on what the eye is seeing
2016-09-22 09:13:32 +02:00
Christoph Oelckers
f0e8e860f1
Merge branch 'master' into json
2016-09-22 09:09:48 +02:00
Christoph Oelckers
1e6b99cebd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-22 09:06:34 +02:00
Christoph Oelckers
146b5d2d06
- use 'override' qualifier on renderer interface.
...
Bad things can happen if these get changed in ZDoom without adapting to the change so better let the compiler handle this automatically.
2016-09-22 09:06:21 +02:00
nashmuhandes
a49e15c541
Added REOPEN script type. These scripts behave just like OPEN scripts, except they will re-execute themselves every time the level is re-entered (ie as part of a hub).
2016-09-22 08:57:22 +02:00
LordMisfit
715aa80cf2
- Fix for DamageFactor bug w/ PowerDamage & PowerProtection
2016-09-22 08:52:43 +02:00
alexey.lysiuk
2d55f713c2
Fixed support for automatic graphics switching on macOS
...
The corresponding setting in .plist is wrong but Xcode fixes it automatically
This doesn't happen however when building via makefiles
2016-09-22 08:52:43 +02:00
Major Cooke
1383355be7
Removed the positive-only ripper level requirement.
...
- Several mods were able to just take advantage of A_SetRipperLevel and the likes, essentially bypassing this gate so there really is no point in doing this anymore.
2016-09-22 08:50:38 +02:00
raa-eruanna
76c5ff29fe
If Inventory.MaxAmount > 1 on weapons, allow and track multiple pickups.
2016-09-22 08:47:23 +02:00
alexey.lysiuk
0a24c15445
Added ability to customize path to FluidSynth dynamic library
...
Use fluid_lib CVAR to set path or default name of dynamic library will be used instead
2016-09-22 08:43:00 +02:00
alexey.lysiuk
4f7e1f0171
FluisSynth dynamic library is now referenced by system specific name on macOS
2016-09-22 08:43:00 +02:00
raa-eruanna
bc0624e3b2
Fixed my error where I was using a local session variable rather than the proper user info for the weapon bob speed.
2016-09-22 08:42:59 +02:00
raa-eruanna
780d672b25
Adds user-definable weapon bob speed
2016-09-22 08:42:59 +02:00
Leonard2
b5b9baaa87
The VM now aborts when a wrong self pointer is used with user variables to avoid random crashes
2016-09-22 08:42:59 +02:00
Magnus Norddahl
7c862b85b3
Don't do ambient occlusion when rendering to texture
2016-09-22 03:49:19 +02:00
Christoph Oelckers
5dfc396bb9
- read snapshots from zip.
2016-09-22 01:28:05 +02:00
Christoph Oelckers
f93e4813d1
- removed farchive.cpp and .h
2016-09-22 00:48:22 +02:00
Christoph Oelckers
1c9dbc3c36
- converted the basic savegame loader so that all remnant of FArchive have been removed now.
2016-09-22 00:18:31 +02:00
Christoph Oelckers
88c27e2cc0
- allow the compact and pretty writers for JSON to coexist by wrapping the whole stuff into another class that calls the proper one as needed. Due to the implementation it is not possible to decide at run time how this should behave so there have to be two different objects for either mode.
...
- savegame code handles new format.
2016-09-21 21:57:24 +02:00
Christoph Oelckers
ac3c00883d
- implemented saving of new format savegames as zips. The code for that was adapted from zipdir.c.
2016-09-21 17:37:56 +02:00
Christoph Oelckers
810ef8f775
- save global savegame data to JSON as well.
...
This is incomplete and untested, just a safety commit before going on.
2016-09-21 12:19:13 +02:00
Christoph Oelckers
dbea80e943
- put savegame extension in version.h
2016-09-21 09:06:04 +02:00
Christoph Oelckers
67239cd623
- added a FileWriter class (taken from another project of mine) and changed m_png.cpp to use it.
...
This is so that PNGs can be written to memory, not just to an external file. stdio's FILE cannot be easily redirected but a C++ class can.
The writer is very simple and primitive right now, allowing no seeking, but for the job at hand it is sufficient.
Note that large parts of savegame creation have been disabled, because they are about to be rewritten and it makes no sense to adjust them all before.
2016-09-21 09:01:12 +02:00
Rachael Alexanderson
eeb4cbdfbc
Merge http://github.com/rheit/zdoom
2016-09-21 01:47:36 -04:00
raa-eruanna
d9e60644b1
Some Linux SDL fixes. Will have to do this for Mac, later, too.
2016-09-21 01:08:00 -04:00
Braden Obrzut
8aa09768f0
- Fixed: Memory(Array)Reader's seek range didn't include the end of file. Since GetLength exists this is inconsequential for ZDoom, but still incorrect.
2016-09-20 21:23:37 -04:00
Magnus Norddahl
b6c64416be
Added SceneData texture as the second colorbuffer when rendering a scene and placed fog data into it
2016-09-21 02:04:56 +02:00
Christoph Oelckers
075e98c967
- use FCompressedBuffer to store level snapshots. FCompressedMemFile has been removed.
2016-09-21 01:48:23 +02:00
Christoph Oelckers
da83d9e2bd
- converted player serializer and everything it needs.
...
This means that everything belonging to the level snapshot will be generated in the JSON output.
2016-09-21 01:18:29 +02:00
Christoph Oelckers
3a1191281f
- some preparations for converting the player serialization code.
...
- converted sound and canvas texture serialization.
- refactored file_zip, so that it can be used to load loose zip files and extract their compressed data directly.
- added handling to FSerializer to generate and consume compressed Zip file entries.
If all goes well this will allow saving savegames as Zips when the rework is done, which will make analyzing them a lot easier.
2016-09-20 23:13:12 +02:00
Christoph Oelckers
970c168b13
- re-added serialization of treanslations.
...
- removed more dead code.
2016-09-20 19:45:32 +02:00
Christoph Oelckers
e101014432
- converted the user variable serializer.
2016-09-20 18:27:47 +02:00
Christoph Oelckers
e41296a64d
- added some separators to dobject.cpp
...
- added restore code for subsector automap info.
2016-09-20 13:30:31 +02:00
Christoph Oelckers
f3e8c7c241
- fixed incomplete hudmessage serialization.
...
- fixed a few errors in the ACS module serializer.
- reordered a few things to how they were in the old code.
- optimized serialization of the level.Scrolls array to happen within the sector. This is to allow skipping 0-entries which normally constitute the vast majority of them.
2016-09-20 13:21:41 +02:00
Christoph Oelckers
cf1e6d5275
- converted FBehavior::StaticSerializeModuleStates.
...
- removed some code which is no longer needed.
2016-09-20 11:35:25 +02:00
Christoph Oelckers
42e38f6cc1
- more cleanup to reduce references to FArchive.
2016-09-20 10:59:48 +02:00
Christoph Oelckers
af6404f763
- all DObjects converted.
...
- cleaned out some old cruft that's no longer needed.
2016-09-20 10:27:53 +02:00
Christoph Oelckers
daf43f9d35
- added polyobject serializer.
...
- added sanity checks to prevent a savegame from being loaded with an incompatible map
- refactored a few things to simplify serialization.
- started work on main level serializer function.
2016-09-20 09:11:13 +02:00
Magnus Norddahl
24f748da03
Add gbuffer pass support to FShaderManager and FRenderState
2016-09-20 02:57:57 +02:00
Christoph Oelckers
ab43e0c8cb
- all thinker serializers done.
2016-09-20 00:41:22 +02:00
Magnus Norddahl
77233f2f65
Merge remote-tracking branch 'upstream/master' into truecolor
...
# Conflicts:
# src/v_video.cpp
2016-09-19 23:55:15 +02:00
Christoph Oelckers
a5000ead4c
- another batch.
2016-09-19 19:58:04 +02:00
Christoph Oelckers
e89d072abc
- most thinkers are done. Some stuff about polyobject pointers is temporarily disabled right now because some of the required functions have already been pulled out.
2016-09-19 19:14:30 +02:00
Christoph Oelckers
340c7795f3
- clean out the dump. It's not like this branch is ever going zo be used for saving with the old code anyway. Only the stuff needed to not make it crash or fail on compilation is kept.
2016-09-19 16:10:25 +02:00
Christoph Oelckers
88eab9d1f9
- And another batch of serializers.
2016-09-19 15:07:53 +02:00
Christoph Oelckers
a542e99143
- a few more
2016-09-19 13:36:58 +02:00
Christoph Oelckers
7edf4c1afc
- added new serializers to several classes and moved the old ones to the dump file.
2016-09-19 12:53:42 +02:00
Christoph Oelckers
d24aa5dec9
- reformatting for easier search.
2016-09-19 10:47:59 +02:00
Christoph Oelckers
e754fae0a8
- removed FS HUD pics. No mod in existence ever used them and a quickly thrown together test showed that the code did not even work. And since there's no reason to fix it they are gone now.
2016-09-19 10:41:21 +02:00
Christoph Oelckers
c665cc53f9
- moved new code to its proper location and started moving the replaced old archive code to a placeholder file for easy removal later.
2016-09-19 10:34:54 +02:00
raa-eruanna
20e620bbe7
Merge http://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2016-09-19 03:05:38 -04:00
Christoph Oelckers
475077f1de
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-19 09:01:34 +02:00
Christoph Oelckers
daf33b5b4f
- master is now at 2.3pre.
2016-09-19 09:01:21 +02:00
Christoph Oelckers
65c6388d44
Merge branch 'master' into json
2016-09-19 03:54:36 +02:00
Christoph Oelckers
3eb1af6957
- added a GetMissileDamage function to DECORATE which can be used to properly retrieve an actor's damage value.
...
The damage property should be considered deprecated inside expressions from now on.
2016-09-19 03:45:22 +02:00
Christoph Oelckers
f1ba19073f
- split Damage into two variables: DamageVal for the old constant and DamageFunc for the DECORATE function.
...
The way this was done was a major headache inducer, requiring reconstruction of the function each time the value was changed and in general made actor damage a major hassle.
There was a DECORATE wrapper to mimic the original behavior but this looked quite broken because it completely ignored the different semantics of both damage calculation types.
It also made it impossible to determine if damage was a function or a value.
This accessor has been reverted to what it should be, only returning the constant, which now is -1 for a damage function. I am sorry if this may break the odd mod out but a quick look over some DECORATE-heavy stuff showed that this was never combined in any of them so that accessing 'damage' in DECORATE code depended on an actual damage function.
To get proper damage, a future commit will add a DECORATE function which calls AActor::GetMissileDamage.
2016-09-19 03:36:51 +02:00
Christoph Oelckers
967ed48fd3
- fixing.
2016-09-19 01:48:48 +02:00
Christoph Oelckers
718614a820
- cleanup
2016-09-19 01:07:51 +02:00
Magnus Norddahl
b1871b272b
Merge branch 'exposure_pass' into lightmath
2016-09-18 19:31:36 +02:00
Magnus Norddahl
210dd6d26a
Make bloom/exposure less aggressive
2016-09-18 19:31:09 +02:00
Christoph Oelckers
ceaa040750
- added a workaround to avoid sprite splitting when it may cause glitches for sprites that get rotated in the draw pass.
2016-09-18 17:45:02 +02:00
Christoph Oelckers
a5628518c1
- cut down on data size by not saving trivial defaults.
2016-09-18 16:41:34 +02:00
Magnus Norddahl
38be2333d0
Merge branch 'exposure_pass' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
2016-09-18 16:22:44 +02:00
Magnus Norddahl
8dd12c8216
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-18 16:01:21 +02:00
Magnus Norddahl
1e2935f4e0
Added exposure pass calculating the bloom/tonemap exposure based on what the eye is seeing
2016-09-18 15:57:22 +02:00
Christoph Oelckers
9313a99e12
- started implementing a JSON based serializer. Unfortunately it is far too slow to be of any real use.
2016-09-18 13:26:34 +02:00
Christoph Oelckers
3db7d9ad84
- fixed: AActor::alternative was not declared as a pointer.
2016-09-18 12:22:56 +02:00
raa-eruanna
e47e6d1d6e
Merge http://github.com/coelckers/gzdoom
2016-09-17 20:06:22 -04:00
Christoph Oelckers
6b4aee28bc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-17 20:22:43 +02:00
Major Cooke
80c1baa596
Fixed: Pitch was rotating around the wrong axis.
2016-09-17 12:10:22 -05:00
raa-eruanna
962291d18e
Merge http://github.com/coelckers/gzdoom
2016-09-17 11:32:57 -04:00
Christoph Oelckers
bec17bd222
- FLATSPRITE fixes.
2016-09-17 08:26:30 +02:00
Major Cooke
d01b0e061e
Moved flatsprite code into CalculateVertices.
2016-09-16 12:07:28 -05:00
Major Cooke
66d20726c2
Reintroduced flat sprites once more.
...
- Take note, current flat sprites will change. With no pitch involved, sprites are now flat across the ground.
2016-09-16 11:47:20 -05:00
raa-eruanna
922360ae35
Merge http://github.com/rheit/zdoom
2016-09-16 11:49:45 -04:00
raa-eruanna
7da94e5aca
Merge http://github.com/coelckers/gzdoom
2016-09-16 11:49:42 -04:00
Christoph Oelckers
7c2886e8ea
- fixed the last commit:
...
The altered vertices must always be copied to the actual buffer and it's not necessary to copy everything, copying the 4 changed ones is sufficient.
2016-09-16 08:10:19 +02:00
raa-eruanna
476b727d5d
"actorlist" and "actornum" no longer return already-owned inventory objects
2016-09-16 00:47:56 -04:00
Magnus Norddahl
3c1868f7e6
Fix wrong flash rectangle size after window resize
2016-09-16 02:53:19 +02:00
raa-eruanna
a83477e549
Merge http://github.com/rheit/zdoom
2016-09-15 19:18:56 -04:00
raa-eruanna
ac70f77e44
Added the following ccmds:
...
actorlist, actornum, monsternum, itemsnum, countitemsnum
Modified the following ccmds:
monster, items, countitems
All commands with "num" at the end simply print a count of their respective filters, all other listed commands now print a list and a count.
2016-09-15 15:09:36 -04:00
Magnus Norddahl
0d27996a64
Replace CheckRatio with AspectTallerThanWide in DrawHUD
2016-09-15 07:52:53 +02:00
Magnus Norddahl
48f491cfd1
Fix video mode selection bug
2016-09-15 07:52:53 +02:00
Magnus Norddahl
95fef44200
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-15 00:31:34 +02:00
Christoph Oelckers
d128e28044
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-14 21:05:45 +02:00
Leonard2
cb17e109f1
Added "division by zero" to the VM-aborting errors
2016-09-14 20:47:00 +02:00
Leonard2
65af26f962
The VM now properly aborts on critical errors
2016-09-14 20:46:18 +02:00
raa-eruanna
4ccba9c49e
Merge http://github.com/rheit/zdoom
2016-09-14 14:08:41 -04:00
raa-eruanna
343cde4595
Merge http://github.com/coelckers/gzdoom
2016-09-14 14:08:19 -04:00
Christoph Oelckers
8b6e09ca09
- changed the license of the OpenGL renderer to LGPL v3.
...
This was done to clean up the license and to ensure that any commercial fork of the engine has to obey the far stricter requirements concerning source distribution. The old license was compatible with GPLv2 whereas combining GPLv2 and LGPLv3 force a license upgrade to GPLv3. The license of code that originates from ZDoomGL has not been changed.
2016-09-14 20:01:13 +02:00
raa-eruanna
842558384a
Forgot to set vid_renderer defaults for Linux and Mac.
2016-09-14 07:33:31 -04:00
raa-eruanna
b0029fcd1e
Set version to 0.0 (prerelease), set render defaults for true-color software renderer since that is the focus of this project
2016-09-14 06:38:08 -04:00
raa-eruanna
3ebf8c7e74
More code fixes - now it compiles.
2016-09-14 06:28:39 -04:00
raa-eruanna
004c7de89b
Part 1 of code merge
2016-09-14 04:03:39 -04:00
raa-eruanna
b17b7446cb
Merge http://github.com/coelckers/gzdoom
2016-09-14 03:15:56 -04:00
raa-eruanna
81545d9b4e
Merge http://github.com/rheit/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-14 02:24:59 -04:00
raa-eruanna
b85e3b56e3
Establish QZDoom
2016-09-14 02:21:35 -04:00
Major Cooke
3b2359959e
Quakes must use their own independent falloffs.This caused discrepencies and sudden drop-outs in stacked quakes otherwise.
2016-09-13 23:06:57 -05:00
Braden Obrzut
f1bca9d20e
The old DirectX setup is required to utilize v140_xp.
...
Revert "- removed DirectX setup from CMakeLists for Visual Studio"
This reverts commit 954ac8ce5e
.
2016-09-13 20:12:59 -04:00
Magnus Norddahl
c54b4e74f5
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-13 23:44:12 +02:00
Magnus Norddahl
017d1cee29
Change canvas rendering to use the aspect ratio of the canvas and generalize 5:4 rendering as AspectTallerThanWide
2016-09-13 23:42:05 +02:00
Magnus Norddahl
172f58c165
Fix 5:4 aspect ratio gun and status bar
2016-09-13 23:42:05 +02:00
Christoph Oelckers
0c0e716ccd
Merge remote-tracking branch 'remotes/zdoom/master'
2016-09-13 23:37:30 +02:00
Christoph Oelckers
a98f364cc3
- added another missing nullptr check.
2016-09-13 23:37:19 +02:00
alexey.lysiuk
dcabcaa5b6
Fixed compilation on non-Windows platforms
2016-09-13 22:10:07 +03:00
Christoph Oelckers
ba68cfd611
- do not even allow creation of names in C_RemoveTabCommands if there are no tab commands, so that FindName cannot be called after the NameManager has been destroyed.
2016-09-13 21:01:50 +02:00
Christoph Oelckers
e10abcad06
- fixed: The TabCommands array needs to be cleared before the NameManager is destroyed.
...
TabCommands use an FName to store the command's name so once the NameManager is destroyed its data will become invalid.
This is a problem because C_RemoveTabCommand is being called from FBaseCVar's destructor and most CVARs are global variables.
2016-09-13 10:43:53 +02:00
Christoph Oelckers
c593dda8f3
- added missing nullptr check.
2016-09-12 23:03:27 +02:00
Magnus Norddahl
0fc5ee1ffd
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-12 22:30:46 +02:00
Christoph Oelckers
3778799f92
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-12 21:33:49 +02:00
Christoph Oelckers
823f75e592
- fixed: UDMF user value lists need to be sorted for binary search to work but weren't.
2016-09-12 21:32:17 +02:00
Magnus Norddahl
b378b3d05a
Remove black bars from windowed mode
2016-09-12 20:43:45 +02:00
alexey.lysiuk
b308a7df52
Proper name of FMOD .dylib in loading path adjustment for macOS
2016-09-12 20:37:13 +02:00
alexey.lysiuk
9c91686e0f
Set delay loading for proper .dll depending on FMOD version (Studio vs. Ex)
2016-09-12 20:37:13 +02:00
alexey.lysiuk
7e61a1ce2b
Added simple detection for FMOD Studio API in CMake
2016-09-12 20:37:12 +02:00
alexey.lysiuk
c88eec3d73
Fixed 'unreferenced local variable' warnings when building with FMOD Studio API
2016-09-12 20:37:12 +02:00
alexey.lysiuk
764705a8e0
Fixed 'Could not set resampler method. Defaults will be used. (Error 31)' message with FMOD Studio API
2016-09-12 20:37:11 +02:00
alexey.lysiuk
a2a1d2a36d
Fixed significant distortion of sound effects with FMOD Studio API
2016-09-12 20:37:11 +02:00
Magnus Norddahl
7bdbaaff22
GL aspect ratio adjustments
2016-09-12 20:29:26 +02:00
Magnus Norddahl
7070bded77
Merge remote-tracking branch 'origin/aspectratio' into aspectratio_gzdoom
2016-09-12 20:03:21 +02:00
Magnus Norddahl
01b1efe9ee
Switch from abs to fabs
2016-09-12 18:44:04 +02:00
Magnus Norddahl
4e58e6626c
Fix buffer overrun in CommandAspectRatio for 21:9 aspect ratio
2016-09-12 16:05:42 +02:00
Magnus Norddahl
5b438d220f
Switch from ratio enum to float
2016-09-12 15:51:50 +02:00
Magnus Norddahl
6d4e4dad25
BaseRatioSizes replacement functions
2016-09-12 14:37:10 +02:00
Magnus Norddahl
5720634045
Add ActiveRatio to be used where CheckRatio is used today
2016-09-12 13:59:01 +02:00
Magnus Norddahl
b003c47e3e
Improve CheckRatio to always return the closest ratio
2016-09-12 13:37:05 +02:00
Magnus Norddahl
d3d8180f57
Resize framebuffer in windowed mode to match the client area
2016-09-12 13:04:36 +02:00
Magnus Norddahl
a0b6a0275c
Fix random texture sampling bug
2016-09-11 11:09:40 +02:00
Christoph Oelckers
be647dc7b2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-11 00:45:40 +02:00
Christopher Bruns
924aaa3a92
fixed: Delay setup of quad-buffered stereo 3d mode, in case a useful OpenGL context is not immediately provided.
2016-09-11 00:45:17 +02:00
Magnus Norddahl
03d0b09f29
Fix depth blur
2016-09-10 22:39:09 +02:00
alexey.lysiuk
66c5121e38
Do not use OpenGL Core Profile for software renderer on macOS
2016-09-10 17:54:19 +03:00
Christoph Oelckers
71f4bacbd7
- missed something for last commit.
2016-09-10 12:36:44 +02:00
Christoph Oelckers
d3246be488
- draw wall sprites without translucent pixels as opaque. This looses the border smoothing with texture filtering but avoids sorting problems.
2016-09-10 12:24:13 +02:00
Christoph Oelckers
30cb651d92
- completely removed the flat sprite code.
...
This was conceptionally so wrong that there is no chance to salvage any of it.
2016-09-10 10:58:53 +02:00
raa-eruanna
02e4ba464a
Fixed mirror angle issue, fixes rendering of mirrors
2016-09-10 08:56:40 +02:00
Magnus Norddahl
303da0e071
Fix center text alignment issue
2016-09-09 20:09:54 +02:00
Magnus Norddahl
63fb604e98
Fix stripes in the reconstructed normals due to down scaling
2016-09-09 18:19:00 +02:00
raa-eruanna
b0e104d566
Merge http://github.com/coelckers/gzdoom
2016-09-09 11:31:31 -04:00
Magnus Norddahl
8861b1aaff
Grab tanHalfFovy from the projection matrix
2016-09-09 09:47:46 +02:00
Magnus Norddahl
f6bede8374
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.z
2016-09-09 09:31:30 +02:00
Magnus Norddahl
d83a72f361
Add missing IsEnabled check
2016-09-09 00:36:12 +02:00
Magnus Norddahl
63dc394913
Present function for left, right and quad-buffered stereo3d
2016-09-09 00:36:11 +02:00
Magnus Norddahl
8b7267cf87
MaskAnaglyph present mode
2016-09-09 00:36:11 +02:00
Magnus Norddahl
ccbe5160b0
Split F2DDrawer::Flush into Draw and Clear
2016-09-09 00:36:10 +02:00
Magnus Norddahl
aaa3581ee6
Hook up eye textures in renderer
2016-09-09 00:36:10 +02:00
Magnus Norddahl
4bdd872f09
Add eye textures and FBOs to FGLRenderBuffers
2016-09-09 00:36:09 +02:00
Christoph Oelckers
b9ca3c85f8
- fixed: translucency detection in multipatch textures did not work.
...
- fixed: The flat drawer never checked if a texture had translucent parts.
2016-09-08 12:18:09 +02:00
raa-eruanna
dede94b7e2
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/posix/cocoa/i_video.mm
# src/win32/hardware.cpp
# wadsrc/static/menudef.txt
2016-09-08 03:26:11 -04:00
raa-eruanna
32f758de41
Merge branch 'truecolor' of https://github.com/dpjudas/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-08 03:19:08 -04:00
raa-eruanna
5a64307ad1
Changes the tonemap generation algorithm.
2016-09-08 00:51:48 +02:00
Christoph Oelckers
7e2e3e8768
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-08 00:48:27 +02:00
Magnus Norddahl
e794e59cd2
Add con_scale for scaling just the console
2016-09-08 00:39:52 +02:00
Magnus Norddahl
d2f8fc63fc
Scale the console itself as specified by con_scaletext
2016-09-08 00:39:51 +02:00
Magnus Norddahl
6414e01354
Add uiscale slider controlling what scale the On setting uses for hud_scale, hud_althudscale and con_scaletext
2016-09-08 00:39:51 +02:00
Major Cooke
01e9d351b4
- Don't pass flags directly from A_Explode to P_RadiusAttack. XF_EXPLICITDAMAGETYPE would cause explosions to deal no damage otherwise.
2016-09-08 00:38:12 +02:00
Major Cooke
043ada24da
Wave quakes now stack.
2016-09-08 00:38:12 +02:00
Major Cooke
ce13b5c6e1
Enhanced FastProjectile trails.
...
- Trails now copy pitch, and set the projectile as the target.
- Added GETOWNER flag. Using it sets the owner of the fast projectile as the target instead, if it has an owner.
2016-09-08 00:38:11 +02:00
yqco
2e8aa53e6a
Add SetActorFlag ACS function
...
int SetActorFlag(int tid, str flagname, bool value);
- Mimics DECORATE's A_ChangeFlag
- Returns number of actors affected (number of things with the flag)
- Affects activator if TID is 0
# Conflicts:
# src/p_acs.cpp
2016-09-07 20:44:56 +02:00
Christoph Oelckers
33ac551a9a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-06 22:37:15 +02:00
Christoph Oelckers
f536523fbd
- It's Height, not height...
2016-09-06 22:36:53 +02:00
Christoph Oelckers
77a79048f8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-06 22:35:27 +02:00
Christoph Oelckers
5a3147407e
- fixed floatification error in A_MaulerTorpedoWave.
2016-09-06 22:34:59 +02:00
Christoph Oelckers
181e5dc4db
- fixed floor clipping of sprites.
2016-09-06 22:18:47 +02:00
Christoph Oelckers
bfe34f4dc7
- cleanup.
2016-09-06 21:39:13 +02:00
Christoph Oelckers
a36d89405a
- separated the coordinate calculation from GLSprite::Draw.
2016-09-06 12:22:00 +02:00
Christoph Oelckers
a5c0f9a548
- use the predefined fullscreen vertices for clearing a portal instead of using the quad drawer.
2016-09-06 11:58:22 +02:00
Christoph Oelckers
3ce25bc348
- fixed: FxPreIncrDecr depended on undefined compiler behavior.
...
It could only work with right to left function argument processing, but with left to right it failed because the ParseExpressionA call altered sc.TokenType.
Note that with register-based arguments on 64 bit platforms this is a very critical issue!
2016-09-06 08:41:13 +02:00
Christoph Oelckers
74ede7bb4e
- fixed: The DrawBlend call in the postprocessing case was using the global 'viewsector' variable directly.
...
As with the Stereo3D stuff, this cannot be done because recursive processing of portals will change it. Instead the local copy has to be used here, just like the EndDrawScene call already did.
2016-09-05 09:10:29 +02:00
alexey.lysiuk
108dcf122a
Updated support for legacy renderer in Cocoa backend
...
Added fallback to legacy profile when creation of pixel format for core context failed
Added handling of -glversion command line switch
2016-09-04 15:25:37 +03:00
Christoph Oelckers
d2ead39bcc
- force framebuffers for camera textures on GL 3+ hardware. With all the postprocessing stuff added I don't think it's ok to use the screenbuffer for this anymore.
...
- disable framebuffers for camera textures in legacy mode entirely. This depends on a GL_DEPTH24_STENCIL8 surface which most of these old chipsets do not support, and I really see no point to invest any work here. The worst that can happen is that oversized camera textures won't be processed, which, due to general performance issues, might even be a good thing.
2016-09-04 14:16:05 +02:00
Christoph Oelckers
95bedac6ca
- inlined FHardwareTexture::GetTexDimension.
2016-09-04 13:14:14 +02:00
Christoph Oelckers
8b01a88b76
- removed gl_lights_size and gl_lights_intensity.
...
Both of these were inherited from ZDoomGL and in terms of light design in maps it makes absolutely no sense to have them user configurable. They should have been removed 11 years ago.
2016-09-04 12:45:09 +02:00
Christoph Oelckers
e7856ce1e3
- removed unused forceadditive parameter from gl_GetLight.
...
- restricted gl_lights_additive to legacy code and removed menu entry for this.
For modern hardware this setting is completely pointless, it offers no advantage and degrades visual quality. Its only reason for existence was that drawing additive lights with textures is a lot faster, and that's all it's being used for now.
2016-09-04 12:35:26 +02:00
Christoph Oelckers
37d0f97808
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 10:29:15 +02:00
Christoph Oelckers
954ac8ce5e
- removed DirectX setup from CMakeLists for Visual Studio
...
For VS 2015 this is no longer needed, the DX headers and libraries are part of the Windows SDK and do not need to be looked for explicitly.
2016-09-04 10:28:29 +02:00
Christoph Oelckers
eff03d13f0
- fixed last commit.
2016-09-04 10:28:29 +02:00
alexey.lysiuk
677efb73bc
Fixed compilation with GCC/Clang
...
No longer aborts with error: cannot pass object of non-trivial type 'FString' through variadic method; call will abort at runtime
2016-09-04 10:05:07 +03:00
Christoph Oelckers
f021d13ead
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 08:33:40 +02:00
Christoph Oelckers
77ac3bb265
- fixed angle range checks in A_CheckIfTargetInLOS.
...
The fixed point version had a mostly useless check that excluded ANGLE_MAX, this got incorrectly converted to floating point.
Note that this version will clamp the angle to 360°, not merely overflow like it did with the fixed point code
2016-09-04 08:33:19 +02:00
Magnus Norddahl
3727c5ed0f
Mark portals in scene alpha channel for the SSAO pass
2016-09-04 08:15:29 +02:00
Magnus Norddahl
527703ae8c
Fix missing flash if multisampling was on and no post processing effects active
2016-09-04 03:21:47 +02:00
Magnus Norddahl
5f02e08c8e
Fix minimize crash
2016-09-04 03:15:50 +02:00
Magnus Norddahl
dc39a006dc
Fix palette tonemap precision and compile error on Intel
2016-09-04 02:37:59 +02:00
Christoph Oelckers
4eda5f841e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 01:46:49 +02:00
Christoph Oelckers
217601f338
- fixed: FPortal::ClearScreen may not use the 2D drawing code anymore.
...
2D calls are accumulated and then executed all at once at the end of the frame, but this one needs to be interleaved with the 3D rendering. It now uses the quad drawer to fill the portal with blackness.
2016-09-04 01:46:29 +02:00
Blue-Shadow
2ed4208a1b
Added IfCVarInt SBARINFO command
2016-09-03 18:55:19 +03:00
Christoph Oelckers
c3ad0a2f16
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-03 17:29:47 +02:00
Christoph Oelckers
f31346968f
- added missing #include.
2016-09-03 17:29:28 +02:00
Christoph Oelckers
3ae2e77512
- added xBRZ files.
2016-09-03 16:55:16 +02:00
Christoph Oelckers
4a80f8e4ed
- fixed: Camera textures and savegame pictures should not be drawn with a Stereo3D mode.
2016-09-03 16:54:17 +02:00
Christoph Oelckers
e08015a181
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-03 14:02:28 +02:00
Christoph Oelckers
aece9aaa58
- added xBRZ texture scaler after clearing the licensing conditions. A screenshot of the confirmation that this is ok has been added to the 'licenses' folder.
2016-09-03 14:01:51 +02:00
Christoph Oelckers
5770e5dfaf
- split up m_specialpaths.cpp to be a separate file for each operating system.
...
The reason for this is that the macOS version uses a deprecated API and in order to correct this, the file needs to be compiled as Objective-C++ which requires a different extension.
2016-09-03 12:00:08 +02:00
arookas
d7b5bdc0f7
Renamed Thing_Damage3 to DamageActor
2016-09-03 08:27:38 +02:00
arookas
d14782fb37
Added Thing_Damage3 function
...
It acts as a simple wrapper around P_DamageMobj which can damage a
single actor, but can also set the actor inflicting the damage. It
returns the amount of damage actually done, or -1 if the damaging was
cancelled.
2016-09-03 08:27:38 +02:00
Magnus Norddahl
e7765bb240
Move SSAO pass to be before translucent rendering
...
Fix depth sampling location when not using fullscreen scene
2016-09-03 04:29:50 +02:00
Magnus Norddahl
902097d6da
Resolve multisampling depth in shader
2016-09-03 04:12:00 +02:00
Magnus Norddahl
b1c1e6aae7
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
2016-09-03 01:17:16 +02:00
Christoph Oelckers
8b7a87f256
- fix conditions for DrawBlend calls.
2016-09-03 00:43:18 +02:00
Christoph Oelckers
90ab0223a6
- handle colormap parameter reset when renderbuffers are toggled.
2016-09-03 00:36:23 +02:00
Magnus Norddahl
77dde2e3ad
Fix not switching back to the default frame buffer when gl_renderbuffers is toggled off
2016-09-03 00:13:05 +02:00
Christoph Oelckers
ee503ea275
- removed now redundant mystdint.h file.
...
Visual Studio now ships stdint.h so this workaround is no longer needed.
2016-09-02 10:55:56 +02:00
Magnus Norddahl
98032bc73f
Change SSAO blur to be depth aware
2016-09-02 05:45:00 +02:00
Magnus Norddahl
5a0c61a2d5
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/scene/gl_scene.cpp
2016-09-02 02:40:44 +02:00
Christoph Oelckers
7135a6909c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-02 00:44:10 +02:00
Major Cooke
c4357bd352
Tracer pointer is no longer a safe candidate for storing player morph pointers. Instead, actors must have a new, non-manipulatable pointer. This fixes the following circumstances:
...
- Crashes occurred if a particular actor was a tracer to the player and the actor was not gone by the time the player unmorphs.
- Failed unmorphs occur if tracer was manipulated through means like A_RearrangePointers, etc.
2016-09-01 13:49:58 -05:00
Christoph Oelckers
4e8027612f
- restored 2 lines of code that somehow got lost before the last commit.
2016-09-01 17:38:17 +02:00
Christoph Oelckers
589936f570
- draw the colormap blend after postprocessing, not before it.
...
- added colormap shader to postprocessing.
This replaces the in-place application of fullscreen colormaps if renderbuffers are active. This way the fully composed scene gets inverted, not each element on its own which is highly problematic for additively blended things.
2016-09-01 17:14:51 +02:00
Christoph Oelckers
7efae2c8f8
- fixed: When requesting GL version 2.x, do not try to create a core profile context, because that can not support legacy features.
2016-09-01 12:14:20 +02:00
Christoph Oelckers
3389a5a74e
- removed most of the specific options for legacy hardware and consolidated them in one variable (does not work yet.)
2016-09-01 11:52:52 +02:00
Magnus Norddahl
8a2737a0ce
Fix precision issue in SSAO shader
2016-09-01 07:15:40 +02:00
Christoph Oelckers
4a0e082836
- fixed: The wall splitter in the translucent sorting code needs to set fracleft and fracright so that vertex generation is done correctly for the split segments.
2016-08-31 23:26:49 +02:00
Christoph Oelckers
4993018520
- fixed: Actor velocity requires an upper limit to prevent uncontrolled accumulation, as can happen when multiple exploding and pushable objects overlap. The value 5000 was chosen because it is high enough to not occur under regular circumstances and small enough to prevent severe slowdowns. In the old fixed point code the lack of such a check just caused random overflows.
2016-08-31 09:18:59 +02:00
Magnus Norddahl
55ea4a7729
Add ssao random texture
2016-08-30 01:09:21 +02:00
Christoph Oelckers
45ff15559d
- removed gl_draw_synv because with the postprocessing this is no longer useful.
2016-08-30 00:33:02 +02:00
Magnus Norddahl
240ebf94a1
Remove radius increase in point light modes
2016-08-29 22:42:46 +02:00
alexey.lysiuk
3ba3149df3
Deleted remains of obsolete multisampling in Cocoa backend
2016-08-29 22:08:57 +03:00
alexey.lysiuk
b7ec26335f
Enabled OpenGL Core Profile on macOS
2016-08-29 22:03:25 +03:00
Magnus Norddahl
737e700774
Added SSAO pass
2016-08-29 13:10:22 +02:00
Magnus Norddahl
a1d90e1229
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-08-29 12:58:20 +02:00
Christoph Oelckers
8f535997f8
- enable core profile by default on GL 3.x.
...
After doing some profiling it was very obvious that this has better performance than client arrays. Persistent buffers are still better, though, especially for handling dynamic lights.
2016-08-29 11:33:20 +02:00
Christoph Oelckers
0f0dc2c852
- implemented buffers for GL 3.x. These only get mapped during the data collection pass so the order of some things is different here.
2016-08-29 10:43:03 +02:00
Magnus Norddahl
e0e43ee7b3
Fix mColor reset value
2016-08-29 05:31:12 +02:00
Magnus Norddahl
71387b1b42
Fix wrong initial mClipSplit values.
2016-08-29 05:19:47 +02:00
Magnus Norddahl
945d5b154a
Remove gl_vid_multisample
2016-08-28 18:10:39 +02:00
Magnus Norddahl
bb066f6f07
Fall back to gl_renderbuffers 0 if buffer creation fails
2016-08-28 18:07:44 +02:00
Christoph Oelckers
3299a29c44
- added CheckClass ACS function.
2016-08-28 16:14:24 +02:00
alexey.lysiuk
47714509d6
Changed render buffers format back to RGBA16F
...
Reverted a03b2ff48b
to fix issues with nVidia graphics on macOS
2016-08-28 11:15:16 +03:00
Christoph Oelckers
03d055a5ec
- adjustments for message modes.
2016-08-28 10:11:09 +02:00
Christoph Oelckers
abafcd5486
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.enu
2016-08-28 10:00:19 +02:00
Christoph Oelckers
e04055dbb2
- added multiple message levels for 'developer' CVAR so that the important stuff won't get drowned in pointless notification spam that's of no use to anyone.
...
- made 'developer' CVAR persist across launches and added some menu entries for it.
- added checks for 'developer' to ACS's CheckInventory function.
2016-08-28 09:55:04 +02:00
alexey.lysiuk
9b91a13487
Restored legacy way to collect OpenGL extensions
2016-08-28 10:21:20 +03:00
Braden Obrzut
716fbec8ee
- Added support for building with FMOD Studio Low Level API (partially based off of Emile Belanger's/Beloko Games Android work)
...
- Use with FMOD Studio 1.06.x. 1.07 and 1.08 compile but for some reason produce a lot of noise on vanilla Doom sounds.
- Crashes when used with fluidsynth provided by Ubuntu 16.04, but a self compiled version of the library works just fine.
- Reverbs are mostly untested, but implemented.
- Debug waveform drawing is not implemented as it requires a non-trivial amount of work.
- It will still show as FMOD Ex in the menus since I'm too lazy at the moment to make it a "separate" backend.
2016-08-27 22:14:57 -04:00
Magnus Norddahl
6c5109ec99
Fix uninitialized mPipelineTexture and fix BindCurrentTexture using the wrong handle
2016-08-27 06:24:36 +02:00
Magnus Norddahl
b1a0108a96
Fix tonemap palette not being rebuilt on palette change
2016-08-26 19:52:15 +02:00
Christoph Oelckers
c9578ae72d
- create vertex buffer data for horizon portals in the constructor instead of in the draw function.
...
This was the last remaining place where the vertex buffer was accessed in the render pass.
2016-08-26 18:18:50 +02:00
Christoph Oelckers
5303526c70
- actually use the parameter...
2016-08-26 08:34:27 +02:00
Christoph Oelckers
597e10116f
- added missing framebuffer function to fudging block.
2016-08-26 08:30:47 +02:00
Christoph Oelckers
58bc64ee8f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-26 02:20:53 +02:00
Christoph Oelckers
10550c4ef0
Merge branch 'init_global_state' of https://github.com/dpjudas/zdoom
2016-08-26 02:20:00 +02:00
Christoph Oelckers
465792df0a
- make sure that after travelling has finished, no travelling thinkers are left in the list.
...
Since this list is excluded from regular thinker cleaning, anything that may survive through the end of G_FinishTravel will endlessly multiply and severely break the following savegames or just simply crash on broken pointers.
2016-08-26 02:16:06 +02:00
Christoph Oelckers
abba548e40
- render sector hacks through the quad renderer if the vertex buffer is not accessible.
2016-08-26 02:03:24 +02:00
Magnus Norddahl
5f09d3b7ef
Add FBufferedUniformSampler because sampler uniforms may default bind to other locations than zero
2016-08-26 01:46:39 +02:00
Magnus Norddahl
b68bbaf617
Fix uninitialized memory access if a FShaderProgram is destroyed without being fully compiled and linked
2016-08-26 01:40:28 +02:00
Magnus Norddahl
960038bb81
Clear global state tracking variables when the OpenGL context is (re)created
2016-08-26 01:36:21 +02:00
Christoph Oelckers
f6544f3c44
- removed unused GLFLat::sub and all codes depending on it a valid pointer.
2016-08-26 00:04:29 +02:00
Christoph Oelckers
6755cb2a25
- use the quad drawer for skybox-flagged sectors.
2016-08-26 00:02:32 +02:00
Christoph Oelckers
b83c2056a8
- store the stencil caps in the reserved part of the main vertex buffer instead of constantly recreating them.
2016-08-26 00:01:51 +02:00
Christoph Oelckers
76d7b52fcd
- handle the case where a wall gets drawn with an unmapped buffer and no vertex data.
...
This uses the quad drawer because it can only happen with translucent walls that got split during sorting.
2016-08-25 23:20:23 +02:00
Christoph Oelckers
4598c4138c
- added vertex initialization for walls in the processing pass for core profile without persistent buffers.
...
This is slower than doing it in the render pass so it's only active when actually needed - it's also slower than using a client array so this code only gets used when there is no choice but to work with a 3.x core profile context.
2016-08-25 23:13:49 +02:00
Christoph Oelckers
8f331f56e2
- use MakeVertices directly in the portal code and remove all related code from RenderWall.
2016-08-25 23:02:43 +02:00
Christoph Oelckers
8cf53f04e8
- split off the vertex creation from RenderWall.
2016-08-25 22:54:08 +02:00
Christoph Oelckers
4ab8ca63ce
- use more desctiptive names for the predefined vertex buffer indices.
2016-08-25 22:23:31 +02:00
Christoph Oelckers
4a822a8f50
Merge branch 'master' of c:\programming\doom-dev\zdoom into Branch_97ff4cc02574e3773ff231b1d74c0fdb25e9440d
2016-08-25 22:02:23 +02:00
Christoph Oelckers
9ca6764556
Revert "- removed STAT_INVENTORY."
...
This reverts commit 5ff0abe568
.
- use STAT_INVENTORY only for held items.
Seems this was causing some strange issues with hubs, but for items placed in the world it still cannot be allowed to have them in a different statnum.
2016-08-25 21:41:17 +02:00
Christoph Oelckers
48430d9b1a
- don't assume that deserializing an actor will result in a valid pointer.
...
This addresses a very strange crash I encounteded while travelling in a hub, and ended up with a NULL pointer after the 'Serialize' call which means that some code cleared the variable that is currently being deserialized. I was completely unable to find out what caused this because there is so much recursion going on in the deserializer. All actions on the deserialized actor are now being done with a local copy of that variable so that altering the actual one won't have any adverse effects.
2016-08-25 21:15:53 +02:00
Magnus Norddahl
9525d3690f
Added gl_light_math and changed pixelpos + lights to be in eye space
2016-08-25 06:25:05 +02:00
alexey.lysiuk
f79c442df5
Fixed compilation of SDL backend
2016-08-24 16:44:40 +03:00
alexey.lysiuk
52b51e79b9
Fixed missing decals in compatibility renderer
...
The problem was appeared in conjunction with dynamic lights only
See http://forum.zdoom.org/viewtopic.php?f=4&t=19321&start=405#p932733
2016-08-24 10:27:14 +03:00
alexey.lysiuk
a185886924
Added compatibility handling for fog and dynamic lights used together
...
See http://forum.drdteam.org/viewtopic.php?t=7063
2016-08-24 10:26:11 +03:00
Magnus Norddahl
25645d901e
Add Palette LUT tonemap mode
2016-08-23 09:18:18 +02:00
Christoph Oelckers
13a583faee
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-22 22:02:44 +02:00
Christoph Oelckers
9555617816
- fixed: The default for position.w is 1, so gl_quaddrawer.cpp needs to set this, too, for the uniform vertex positions.
2016-08-22 22:02:02 +02:00
Christoph Oelckers
b946114145
- removed unused variable.
2016-08-22 22:00:45 +02:00
Magnus Norddahl
276fb7dbb2
Add vid_maxfps support for Windows and Linux
2016-08-22 22:00:44 +02:00
Magnus Norddahl
1594cc9570
Only use KHR_debug if available
2016-08-22 19:25:13 +02:00
Christoph Oelckers
250be72939
- added handling for drawing with uniform vertices. It draws something but in the wrong place. Right now I have no idea what's happening...
2016-08-22 15:31:23 +02:00
Christoph Oelckers
7ba5acfb35
- added quad drawer interface so that this part can be done without altering a vertex buffer.
...
So far it's only the framework, the new code is not active yet.
2016-08-22 14:00:25 +02:00
Major Cooke
e22043a25b
Fixed: A_FaceMovementDirection would not adjust the angle if it was actually under the limit.
2016-08-22 09:46:00 +02:00
yqco
df4a8e38c5
Add CheckActorState ACS function
...
bool CheckActorState(int tid, str statename, bool exact = false);
- Same parameter order as SetActorState
- Returns true if actor has the state; else returns false
2016-08-22 01:21:38 -06:00
Magnus Norddahl
302f59ea33
Fix r_clearbuffer color not being used
2016-08-22 01:52:51 +02:00
alexey.lysiuk
3e01039bbb
Fixed missing #include for GCC/Clang
2016-08-21 15:47:56 +03:00
Christoph Oelckers
dde81b33ea
- glEnable(GL_TEXTURE_2D) only makes sense if no shaders are being used.
2016-08-21 08:45:21 +02:00
Christoph Oelckers
5c267a2169
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.eng
2016-08-21 08:42:06 +02:00
Christoph Oelckers
5ff0abe568
- removed STAT_INVENTORY.
...
This was causing issues with sprite sorting. For this to work as intended, all actors in the world that display sprites need to remain in spawn order, including inventory items.
The only thing this statnum was used for were some bot related search actions which are simply not worth breaking actual maps for some very minor performance gain.
2016-08-20 19:10:14 +02:00
Christoph Oelckers
97ff4cc025
Merge branch 'debug' of https://github.com/dpjudas/zdoom
2016-08-20 12:34:56 +02:00
Magnus Norddahl
f63635e07a
Fix RFL_INVALIDATE_BUFFER check being inverted
2016-08-19 01:11:11 +02:00
Christoph Oelckers
eadc2f35dd
- fixed: The crossfade wipe must use its own alpha for the second layer, not the one from the vertex buffer.
2016-08-19 00:21:17 +02:00
Magnus Norddahl
e8fc935f04
Another IsFilteredByDebugLevel typo..
2016-08-18 02:24:57 +02:00
Magnus Norddahl
4241026f1c
Swapped order in IsFilteredByDebugLevel
2016-08-18 02:21:53 +02:00
Magnus Norddahl
f75b6d8c5d
Improve debug level filtering
2016-08-18 02:10:54 +02:00
Magnus Norddahl
b21b65eb43
Rearrange binding of texture and sampler to get rid of texture state usage warning
2016-08-18 01:32:41 +02:00
Magnus Norddahl
01f9a2d27a
Fix clear warning
2016-08-18 00:21:33 +02:00
Magnus Norddahl
18ff65fb0e
Filter logging to only display each message once
2016-08-17 23:52:20 +02:00
Magnus Norddahl
d380d765c9
OpenGL object labels and debug groups
2016-08-17 23:18:47 +02:00
Magnus Norddahl
2825bd4967
Fix invalid value error
2016-08-17 21:25:31 +02:00
Magnus Norddahl
a37225b81e
Don't debug break on notifications
2016-08-17 21:25:03 +02:00
Magnus Norddahl
0c2db5447c
Save gl_debug in ini file and add support in Linux
2016-08-17 20:57:00 +02:00
Magnus Norddahl
2cb5f1740e
Add OpenGL debug messages to the console
2016-08-17 20:33:10 +02:00
Magnus Norddahl
fc01a6b832
Only query for GL_MAX_SAMPLES once
2016-08-17 17:59:47 +02:00
Magnus Norddahl
3c08f5ae48
Fix multisample count bug
2016-08-17 17:37:49 +02:00
Magnus Norddahl
5eeac830eb
Clear and InvalidateFramebuffer optimization
2016-08-17 17:37:13 +02:00
Magnus Norddahl
fa2bcebd51
Add KHR_debug and ARB_invalidate_subdata
2016-08-17 16:48:11 +02:00
Christoph Oelckers
314e89b84f
- fixed what looks like a copy/paste error in A_Explode.
2016-08-16 10:53:30 +02:00
Leonard2
e93b64f249
Fixed: a register from a return statement's value would not be freed
2016-08-16 08:59:27 +02:00
Major Cooke
aa2ca77412
Added damagetype parameter and XF_NOACTORTYPE to A_Explode.
...
- By default, A_Explode will refer to the actor's damagetype if using none. The flag forces the function's type if used regardless of type.
2016-08-16 08:59:27 +02:00
Christoph Oelckers
c02960e2cf
- added error message highlighting for one overlooked DECORATE error.
2016-08-16 08:58:29 +02:00
Magnus Norddahl
a8d1197ea7
Make sure we never pass a negative value to pow, and optimize gamma uniform
2016-08-16 00:01:18 +02:00
Magnus Norddahl
a03b2ff48b
Change render buffers from RGBA16F to RGBA16
2016-08-15 23:51:49 +02:00
Christoph Oelckers
ac80ffcc00
- fixed scissor calculations in 2D drawer.
2016-08-15 08:53:49 +02:00
Christoph Oelckers
df0f06a5ce
- fixed: FraggleScript's SetCamera function must call SetOrigin to set the camera's z. This needs updating of floorz and ceilingz, in case the camera is moved past a 3D floor.
2016-08-14 23:33:31 +02:00
Christoph Oelckers
0a555038e3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-14 22:11:17 +02:00
Christoph Oelckers
6deb185b46
- fixed another typo in scroller code.
...
Now Scroll_Texture_Model is working properly again. (Note: Whoever designed this function must have been on drugs - its use of the source data in Boom is completely insane.)
2016-08-14 22:10:44 +02:00
Christoph Oelckers
c59fd26d8a
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-08-14 21:57:04 +02:00
Christoph Oelckers
47d2fd403c
- fixed typos in scroll code.
2016-08-14 21:55:20 +02:00
Christoph Oelckers
4275aed3d9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-14 20:52:35 +02:00
Christoph Oelckers
a0d66be6e9
- fixed: Terrain splashes could be generated for 3D floors that were below the sector's actual floor.
2016-08-14 20:52:13 +02:00
Christoph Oelckers
e03696a6c9
- fixed: The model matrix must be disabled right after rendering the sky dome, so that it won't get used for the skyfog layer.
2016-08-14 20:11:46 +02:00
Christoph Oelckers
4e8a96aa0e
- removed FRenderState::set2DMode because it had no effect. This looks like development garbage from old times.
2016-08-14 09:14:26 +02:00
Magnus Norddahl
f8cc56ea3a
Move SetOutputViewport to OpenGLFrameBuffer::Update as it cannot be safely called from Begin2D
2016-08-14 09:05:54 +02:00
Magnus Norddahl
fd4422eb62
Restore bound texture when FGLRenderBuffers::Setup finishes
2016-08-14 09:05:53 +02:00
Magnus Norddahl
94b72d25e9
First render may not have known scene dimensions
2016-08-14 09:05:52 +02:00
Magnus Norddahl
af62352860
Fix uninitialized data in render buffers at creation
2016-08-14 09:05:52 +02:00
Magnus Norddahl
847d2e8862
Fix viewport not being updated when resizing window when no scene is active
2016-08-14 09:05:51 +02:00
Magnus Norddahl
4e38f31a86
Change GetClientWidth/GetClientHeight on macOS to grab size from view.
...
Fix that GetClientWidth/Height returns 0 when queried before initial show.
Allow window to be resizable on macOS.
2016-08-14 09:05:51 +02:00
Magnus Norddahl
647ef5d029
Fix blur shader to use RenderScreenQuad
2016-08-14 09:05:50 +02:00
Magnus Norddahl
210fce1193
Fix bloom shader missing its target
2016-08-14 09:05:50 +02:00
Magnus Norddahl
4ecb77385d
GetScreenshotBuffer bug fix
2016-08-14 09:05:49 +02:00
Magnus Norddahl
d5b122b092
Fix GetScreenshotBuffer grabbing from wrong location
2016-08-14 09:05:48 +02:00
Magnus Norddahl
c817979eae
Remove GetTrueHeight from GL renderer and concentrate all viewport calculations in SetOutputViewport
2016-08-14 09:05:48 +02:00
Magnus Norddahl
f56250b910
Remove premultiplied alpha
2016-08-14 05:10:34 +02:00
Christoph Oelckers
353a464f5b
- fixed: The 2D texture drawer did not reset the render state's color so any previously set desaturation would persist.
2016-08-13 22:15:00 +02:00
Christoph Oelckers
34c62c4d33
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-12 09:23:24 +02:00
Major Cooke
9dd458030e
This isn't needed. It's already checked at this point.
2016-08-12 09:17:21 +02:00
Major Cooke
7ffccd0009
Fixed: RGF_KILLED was not part of the mask.
...
- Greatly optimized DoRadiusGive by putting actor flag checking first ahead of pointer, classname and species checking.
2016-08-12 09:17:20 +02:00
Major Cooke
ec14dd94a7
A_Explode now returns the number of actors damaged and can be used in expressions.
...
- Enemies that do not take damage in any way are not counted.
2016-08-12 09:17:20 +02:00
yqco
ee7d933ed6
Add assert for previous I_Error condition
2016-08-11 04:47:17 -06:00
yqco
054f5c963e
Use verbose error message with DECORATE array indices
2016-08-11 04:22:37 -06:00
Christoph Oelckers
0fdd80eae7
- removed debug Printf.
2016-08-10 16:32:31 +02:00
Christoph Oelckers
0e5a3ebe50
- fixed bad function call in vertex buffer init code.
2016-08-10 00:35:42 +02:00
Christoph Oelckers
36a4352867
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 20:15:35 +02:00
Christoph Oelckers
b4e712ab01
- made disabling the push window check a real compatibility option.
...
No idea why this was a hidden one, this one definitely needs to be in the menu.
- set some required compatibility options for Super Sonic Doom.
2016-08-09 20:15:13 +02:00
Christoph Oelckers
7104b01193
- added Hexen compatible handling to specials that stop perpetual sector movement.
...
This uses the same logic as Eternity.
2016-08-09 17:09:12 +02:00
Christoph Oelckers
054dd8e5d9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 15:11:41 +02:00
Christoph Oelckers
6b27d0c3ba
- fixed: FPolyObj::RecalcActorFloorCeil altered the floorz of all actors in the same blockmap block as the polyobject, even when they were nowhere near its bounding box.
...
This fix is still incomplete, it should really discard everything outside the polyobject, not outside its bounding box, but at least it eliminates the most severe occurences of dislocated items.
2016-08-09 15:11:11 +02:00
yqco
b2a6512981
Fix partial initialization in ACS PickActor function
2016-08-09 02:11:13 -06:00
Christoph Oelckers
30b49572e1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-09 10:07:41 +02:00
Christoph Oelckers
19b65195ea
- added an internal compatibility option to disable setting the line ID for the Plane_Align special.
...
There have been reports for some Skulltag maps a few years back and I just ran across an old beta version of a map that got completely broken by this.
2016-08-09 10:07:06 +02:00
Magnus Norddahl
abef073ea4
Implemented sloped planes for true color mode
2016-08-09 01:17:45 +02:00
Magnus Norddahl
3c8719f945
Fix buffer overflow in FTexture::GenerateBgraMipmaps
2016-08-08 22:35:26 +02:00
Christoph Oelckers
56a60ebe85
- restored a line that got accidentally deleted.
2016-08-08 20:47:54 +02:00
Christoph Oelckers
e5f88a9883
- fixed: The textured automap was not using correct light levels.
...
In order for the externally passed vertex attribute to work the buffer's color attrib array needs to be disabled for these.
2016-08-08 16:18:07 +02:00
Christoph Oelckers
675822004d
- use static buffer data and a uniform to handle the texture positioning of the present shader.
...
That's again one less write access to the buffer. The uniform method was chosen because this way a buffer update can be completely avoided, and setting a single uniform is a lot cheaper and simpler to handle.
2016-08-08 16:06:02 +02:00
Christoph Oelckers
8daaf61160
- predefine the vertex data for the blend overlay which will never change throughout the lifetime of the GLRenderer object.
2016-08-08 14:24:48 +02:00
Christoph Oelckers
d7c0dda722
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-08 13:08:41 +02:00
Christoph Oelckers
d62d345a7b
- fixed: The cosine of 0° is 1, not 0, as the portal code assumed for linked portals.
2016-08-08 13:06:29 +02:00
Christoph Oelckers
9c9edbffdb
- on older ATI drivers where the clip planes are broken, only disable the clip planes themselves, but not OpenGL 3.x so that dynamic lights still work as intended.
...
- only disable clip planes on Windows, but not on Linux or macOS.
- If a driver reports full OpenGL 4.5 support, assume that all features are working properly.
2016-08-08 12:55:09 +02:00
Magnus Norddahl
2ac91f0c5a
Fix Nvidia driver ignoring wglSwapIntervalEXT
2016-08-08 12:22:40 +02:00
alexey.lysiuk
9ab9548723
Additional fix for splitting of complex wall in compatibility renderer
...
warp 2720 -200 -32 on Extreme Terror
https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/exterror
2016-08-08 12:19:37 +02:00
Christoph Oelckers
def3ad7533
- refactored all 2D drawing to use its own vertex buffer which does not need to be mapped permanently.
2016-08-08 12:13:09 +02:00
Christoph Oelckers
9a5cbbe6d8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-07 22:13:55 +02:00
Leonard2
b97024b710
The return statement now accepts any expression as its return value
...
So something like 'return ++user_x;' is now possible
Admittedly this needed quite a bit of refactoring mainly due to the fact that return types now have to be checked after resolving the function rather than before
2016-08-07 22:10:02 +02:00
Leonard2
e79c0225ed
Added all compound assignment operators to DECORATE
2016-08-07 22:10:02 +02:00
Leonard2
90cc79a902
Added the direct assignment operator to DECORATE
2016-08-07 22:10:01 +02:00
Leonard2
8437313e7c
Added post/pre increment/decrement operators to DECORATE
2016-08-07 22:10:01 +02:00
Leonard2
2ef51d0d50
Re-allow casts in sequences
2016-08-07 22:10:00 +02:00
Leonard2
db9f4c1385
Re-allow indexes as state parameter in sequences
2016-08-07 22:10:00 +02:00
Leonard2
a4142ad9fb
Re-allow action function calls with no argument list in sequences
2016-08-07 22:09:59 +02:00
Leonard2
078881a941
Parse statements as expressions in sequences
...
This will be needed for assignment operators to work
2016-08-07 22:09:59 +02:00
Christoph Oelckers
ab837b608d
- compatibility optioned triggering sector actions by indirectly initiated teleports
...
There's several old maps depending on this not happening.
- Set the option for Hell's Twisted Influence Part 1.
2016-08-07 22:04:16 +02:00
Edoardo Prezioso
5a66fdf9be
- Hide Clang -Winconsistent-missing-override warnings in non-Apple targets, too.
2016-08-07 20:55:16 +02:00
alexey.lysiuk
5b079dd40b
Fixed wrong height of player coordinates text
2016-08-07 11:32:55 +02:00
Magnus Norddahl
d4615861ae
Fix missing FGLRenderBuffers::IsEnabled checks
2016-08-07 00:41:17 +02:00
Christoph Oelckers
04c59b434b
- renamed WipeVertexBuffer to FSimpleVertexBuffer because this will be useful elsewhere, too.
2016-08-07 00:40:31 +02:00
Magnus Norddahl
2f512e54cd
Remove unused code
2016-08-06 23:12:34 +02:00
Magnus Norddahl
7000d0ccf9
Change GetPixelsBgra to use CopyTrueColorPixels
2016-08-06 22:59:16 +02:00
Magnus Norddahl
21390e91b8
Remove linear sky again
2016-08-06 21:04:45 +02:00
Christoph Oelckers
52537b0af2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-06 20:57:46 +02:00
Magnus Norddahl
9953d70eaa
Merge remote-tracking branch 'upstream/master' into truecolor
2016-08-06 20:45:35 +02:00
Christoph Oelckers
fd7b833ad5
- added some helper code mainly designed to help GZDoom maintain the vertex buffer for the textured automap.
2016-08-06 19:20:41 +02:00
Christoph Oelckers
8f0629932d
- ImmRenderBuffer is not needed anymore.
2016-08-06 14:29:21 +02:00
Christoph Oelckers
6a66d0255d
- use a dedicated vertex buffer for rendering the wipes.
...
- fixed: The postprocessing shaders clobbered the render state's vertex buffer info by bypassing and not notifying it of the change.
2016-08-06 14:12:40 +02:00
Christoph Oelckers
7576e85cef
- force use of shaders on all hardware, unless -noshader is specified.
...
Right it's only for easy testing, so only the code that does the feature checking has been disabled.
2016-08-06 13:06:55 +02:00
Christoph Oelckers
2e555e6dab
- use client arrays on compatibility profiles instead of calling glBegin/glEnd.
...
This eliminates most behavioral differences for FFlatVertexBuffer between both operating modes, now the only difference is where the buffer is located.
2016-08-06 12:03:16 +02:00
Magnus Norddahl
346badf25f
Moved state to FGLPostProcessState and merged vertex shaders
2016-08-06 11:51:08 +02:00
Christoph Oelckers
13a2bf57e5
- fixed vertex coordinate ordering for the sky cubemap.
...
This was done differently for FFlatVertex and FSkyVertex which caused a switch of the y and z coordinates for the skybox image.
2016-08-06 11:47:03 +02:00
Christoph Oelckers
5b201287fa
- fixed bad #pragma pack combination in hqnx_asm_Image.h
2016-08-05 15:27:35 +02:00
Christoph Oelckers
09e40840b5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-05 15:15:11 +02:00
Magnus Norddahl
a893013dbb
Adds HUD quadruple scale and a scale slider for the crosshair
2016-08-05 12:20:34 +02:00
Leonard2
01fb2eaecc
Fixed a typo in FxBoolCast::Emit
2016-08-05 12:16:13 +02:00
Leonard2
73d0ed78fe
Fixed: the game could crash while resolving expressions in some places
2016-08-05 12:16:13 +02:00
Leonard2
4a859393fe
Fixed: the game could crash while parsing expressions in some places
2016-08-05 12:16:12 +02:00
Christoph Oelckers
9229146eeb
- fixed: DFloor set the 'gap' for one wrong movement type.
2016-08-05 12:13:47 +02:00
Christoph Oelckers
13527fdd0a
Merge branch 'lensshader' of https://github.com/dpjudas/zdoom
2016-08-05 00:58:14 +02:00
Magnus Norddahl
976a78429e
Simplify post process buffer handling
2016-08-04 17:16:49 +02:00
Christoph Oelckers
1d434add50
- fixed: monsters which were made friendly by the MBF map flag lost their friendliness when being revived with Thing_Raise.
2016-08-04 17:14:31 +02:00
Magnus Norddahl
6fc7596d52
Fix aspect ratio and texture clipping in lens shader
2016-08-04 15:47:15 +02:00
Christoph Oelckers
21536781a9
- forgot to save this.
2016-08-04 13:01:42 +02:00
Christoph Oelckers
63ad7d99d1
- fixed: The dynamic light buffer's behavior needs to obey the gl.lightmethod variable, and not depend on presence of persistently mapped buffers.
...
Since there is a command line switch to revert to the lower behavior it can well be that they do not match.
2016-08-04 12:55:21 +02:00
Christoph Oelckers
7ba6269450
- changed rendering of sky cubemaps to use precalculated vertex data from the SkyVertexBuffer.
2016-08-04 12:16:53 +02:00
Christoph Oelckers
c1a4dd74c4
- added handling for Eternity's 'gap' parameter to:
...
Ceiling_LowerToFloor
Ceiling_LowerToHighestFloor
Ceiling_ToFloorInstant
Floor_RaiseToCeiling
Floor_RaiseToLowestCeiling
Floor_ToCeilingInstant
2016-08-03 12:59:40 +02:00
Christoph Oelckers
d8ab0b40dc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-03 12:17:55 +02:00
Christoph Oelckers
95c3464973
- properly handle 3D floors with inverted planes in the list sorter.
2016-08-03 12:17:22 +02:00
Magnus Norddahl
6b9529d70f
Added lens distortion shader
2016-08-02 17:32:21 +02:00
Magnus Norddahl
43e577ce79
Merge remote-tracking branch 'gzdoom_upstream/master' into postprocess_vbo_bind_fix
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
2016-08-02 10:00:53 +02:00
Magnus Norddahl
5a67ae6021
Fix missing VBO bind calls
2016-08-02 00:27:01 +02:00
Magnus Norddahl
f980a1f42b
Fix wrong UV calculations when resizing or maximizing window
2016-08-01 15:12:13 +02:00
Christoph Oelckers
8aebfdb3ab
- fixed: gl_bloom_amount may never be 0.
2016-08-01 11:29:28 +02:00
Magnus Norddahl
e8c98a5901
No gamma and player sprites on screenshots
2016-07-31 16:56:41 +02:00
Magnus Norddahl
7709db4bb0
Fix broken viewport/backbuffer location for WriteSavePic
2016-07-31 16:23:21 +02:00
Magnus Norddahl
a6354c74cf
Fix incorrect viewport location when not using fullscreen HUD
2016-07-31 13:23:49 +02:00
alexey.lysiuk
d3457f4508
Implemented hardware gamma support for macOS
...
Hardware gamma is limited to main display only, use shader-based correction for other displays
2016-07-31 12:19:08 +03:00
Christoph Oelckers
a69182f9ef
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-31 09:19:36 +02:00
Christoph Oelckers
20f4975e2b
Merge branch 'blurshader_120_fix' of https://github.com/dpjudas/zdoom
2016-07-31 09:17:28 +02:00
Magnus Norddahl
849e80074e
Added GLSL 120 fallback support
2016-07-31 03:54:16 +02:00
Magnus Norddahl
b789aaa0eb
Fix binding error that Nvidia didn't complain about but Intel on Mac does
2016-07-31 03:16:48 +02:00
Leonard2
c0d3eb997a
Fixed: the instant weapon switch flag didn't work anymore
2016-07-30 23:50:14 +02:00
Christoph Oelckers
c93204cace
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 22:09:56 +02:00
Christoph Oelckers
bc51e98612
Merge branch 'blackscreenfix' of https://github.com/dpjudas/zdoom
2016-07-30 20:28:41 +02:00
Magnus Norddahl
1682b02c67
Fix glBindSampler state messing up post processing shaders
2016-07-30 19:54:20 +02:00
Christoph Oelckers
124c109e18
Merge branch 'multisamplingbuffers' of https://github.com/dpjudas/zdoom
2016-07-30 16:35:19 +02:00
Magnus Norddahl
cfc20d1198
Added multisample support to FGLRenderBuffers and added gl_multisample to the menus
2016-07-30 15:33:30 +02:00
alexey.lysiuk
bd3fd22ac9
Do not use unicode characters in macOS console window
...
The same characters as in stdout are now used to draw bars in console window on macOS
All messages are treated as in ISO Latin 1 encoding and bars looked like garbage output
2016-07-30 16:21:48 +03:00
alexey.lysiuk
7de242930a
Removed obsolete gamma correct shader used on macOS only
2016-07-30 15:30:35 +03:00
alexey.lysiuk
cbe0a34f0b
Fixed usages of abs() function with double arguments
...
Clang no longer issues "warning: using integer absolute value function 'abs' when argument is of floating point type"
2016-07-30 14:03:57 +02:00
Christoph Oelckers
39059b3b5c
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 13:26:37 +02:00
Christoph Oelckers
0c8a4689b8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-30 13:26:25 +02:00
Christoph Oelckers
5ddee98e70
- fixed: Voxels with scaled to 0 caused a division by zero crash.
2016-07-30 13:19:02 +02:00
alexey.lysiuk
0648ef693f
Fixed compilation with Clang and GCC
...
No more "error: cannot pass object of non-trivial type 'FString' through variadic method; call will abort at runtime"
2016-07-30 13:04:16 +02:00
alexey.lysiuk
c0b86278e3
Removed old cruft from macOS OpenGL backend
...
The only thing left unimplemented is gl_smooth_rendered CVAR
2016-07-30 12:57:30 +03:00
Christoph Oelckers
b52d457146
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-07-30 11:45:19 +02:00
alexey.lysiuk
e2a2d38a25
Removed redundant comparison in compatibility renderer
...
Clang no longer reports "warning: comparison of array 'this->tcs' not equal to a null pointer is always true"
2016-07-30 10:25:42 +03:00
Xaser Acheron
a1a0da1f13
added SWF_SELECTPRIORITY flag to A_SelectWeapon
2016-07-29 18:48:54 -05:00
Major Cooke
36705b0f04
Added GZDoom version of SpriteAngle and SpriteRotation.
2016-07-30 00:33:33 +02:00
Christoph Oelckers
50765f8b79
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-30 00:32:29 +02:00
Christoph Oelckers
f4cbde856b
Merge branch 'bloom' of https://github.com/dpjudas/zdoom
2016-07-30 00:30:27 +02:00
Major Cooke
13fa06fe7a
Renamed GetProximity to CountProximity.
...
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-30 00:27:12 +02:00
Major Cooke
167cb28563
Added GetProximity(classname, distance, flags, ptr).
...
- Behaves similarly to A_CheckProximity but returns the count of classname instead of true/false.
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-30 00:26:55 +02:00
Leonard2
d0b953cbb7
Added for loops to DECORATE
2016-07-30 00:26:42 +02:00
Leonard2
e2fa8c2257
Added do-while loops to DECORATE
2016-07-30 00:26:41 +02:00
Leonard2
d1749233ec
Added while loops to DECORATE
2016-07-30 00:26:41 +02:00
Leonard2
c4eafc1c38
DECORATE can now handle jump statements
...
break and continue were added but are not yet useable anywhere
This was made general enough so that loops and switch statements that accept breaks/continues can be done without much difficulty as well as goto statements with explicit labels if those are ever wanted
2016-07-30 00:26:41 +02:00
Major Cooke
dfed6ac1fb
Added SpriteAngle and SpriteRotation properties.
...
- Includes four functions, A_SetSprite(Angle/Rotation) and GetSprite(Angle/Rotation).
- SpriteRotation offsets the angle of the sprite, allowing for actors to move backwards or sideways for example.
- SpriteAngle requires +SPRITEANGLE and sets the actor's sprite to the absolute rotation found at that angle. Overrides SpriteRotation once the flag is on.
2016-07-30 00:26:40 +02:00
Magnus Norddahl
9bfce5b6ea
Moved post processing effects to its own file
2016-07-30 00:02:26 +02:00
Magnus Norddahl
5849c83028
Added bloom and tonemap to menus
...
Added gl_renderbuffers CVAR that disables render buffers
Added patch shader support to FShaderProgram
Added OpenGL 2 fallback support to render buffers
2016-07-29 21:31:20 +02:00
Magnus Norddahl
0efee85bd8
Added tonemapping and sector based exposure control
2016-07-29 00:36:43 +02:00
Major Cooke
6ada8aa644
Fixed A_CopySpriteFrame not working under certain circumstances.
2016-07-28 15:55:49 -05:00
Leonard2
5907ff662d
Added a new state that the weapon jumps to when it is lowered all the way and the player is currently dead
...
The state is undefined by default to preserve the original behavior of having the weapon layer deleted which modders can now avoid by defining it properly
2016-07-28 17:42:22 +02:00
Magnus Norddahl
50f59bd3c7
Merge remote-tracking branch 'upstream/master' into truecolor
2016-07-28 10:54:44 +02:00
Christoph Oelckers
b8abec4e1f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-28 09:20:48 +02:00
Christoph Oelckers
759753eadc
- replaced more copystrings with FString.
2016-07-28 09:06:49 +02:00
Christoph Oelckers
66006a5c14
- use an FString to handle the new message.
2016-07-28 08:54:51 +02:00
yqco
58a6d7df1f
Added optional prompt argument to MENUDEF's SafeCommand
2016-07-28 08:41:55 +02:00
MajorCooke
3d9591229e
Added A_CopySpriteFrame(from, to, flags)..
...
- Copies a sprite/frame from one actor pointer to another. Sprite and/or frame copying can be disabled with flags CPSF_NO<SPRITE/FRAME>.
2016-07-28 08:39:32 +02:00
Jordon Moss
c0eb8f3b96
Added KILL Script type and associated flags and GameInfo keyword.
...
This is different from the original "Death Scripts" idea. This tackles
some issues I've found with the original idea (now you can have as many
scripts as you want, not just global and actor-defined). Also takes care
of other complaints about the original idea and push request. Flags and
their use are in code comments.
2016-07-28 08:34:23 +02:00
MajorCooke
1322ef2449
Renamed NODEATHJUMP to NODEATHDESELECT.
2016-07-28 08:29:47 +02:00
Leonard2
797f3aec0a
Added a weapon flag to ignore a player's input when dead
...
The reason this is not set by default is because before that anyone could call A_WeaponReady within their Deselect state which would have allowed players to fire even when dead
2016-07-28 08:29:46 +02:00
Leonard2
bcb18cf7d8
Added a flag to prevent the weapon from jumping to its Deselect state when the player dies
2016-07-28 08:29:46 +02:00
alexey.lysiuk
f38f7adf17
Automatic layout for ammo images in alternative HUD
...
When ammo icon is displayed before text its position depends on number of digits in current and maximum amounts
2016-07-28 08:19:31 +02:00
Magnus Norddahl
69f52cc898
Added bloom shaders
2016-07-27 21:50:30 +02:00
Christoph Oelckers
da1762ac2c
- fixed: DoSetMapSection could cause a stack overflow on large maps. Made it iterative instead of recursive to avoid that.
2016-07-27 16:27:40 +02:00
Christoph Oelckers
c9f93d9c88
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-27 11:28:55 +02:00
Magnus Norddahl
e82c38e4f9
Update copyright and typo fix
2016-07-27 11:15:20 +02:00
Magnus Norddahl
aeb7df09de
Added hardware gamma option and improved window handling on Windows
2016-07-27 11:15:19 +02:00
Christoph Oelckers
f67243a40f
- fixed: The NO_CHANGE constant shouldn't have been floatified because this is an input value for action specials which will remain integers.
2016-07-27 08:23:00 +02:00
Christoph Oelckers
071485b22e
- fixed: If the resulting render style, after all adjustments, is None for the weapon sprite, do not attempt to draw it at all.
2016-07-25 11:55:47 +02:00
alexey.lysiuk
4345623e28
Fixed incorrect scaling of particles
...
http://forum.zdoom.org/viewtopic.php?t=52906
2016-07-24 14:25:31 +03:00
MajorCooke
41414830a5
- Fixed: A_Warp never properly positioned actors on floors, if they wound up in or on one
2016-07-24 01:02:21 +02:00
Blue-Shadow
121db8fd37
Fixed: The player failed to unmorph upon resurrection
...
This happened if the morphing was triggered by a PowerMorph power-up.
2016-07-24 00:59:35 +02:00
Blue-Shadow
69a00ddabb
Added TRANSFERTRANSLATION morph flag
2016-07-24 00:56:57 +02:00
Magnus Norddahl
41e959e102
Adds the last texture filter mode (trilinear min filter with nearest magnification)
2016-07-23 18:57:37 +02:00
Christoph Oelckers
2cdc77de34
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-23 10:56:12 +02:00
Christoph Oelckers
54a120d612
- do not process subsectors if rendering a stacked sector portal and the clipper is set to 'blocked', i.e. no visible parts are present.
...
This solves the most severe occurences of sprites being drawn in front of a portal's contents. It is not a full fix, though, there's still some extreme cases where portals may glitch if some stuff gets between the camera and the actual portal area.
Normally this has to perform a full check of the subsector against the portal's camera-facing linedefs but that's too costly for those rare cases where it may be an issue.
2016-07-23 10:23:34 +02:00
alexey.lysiuk
a1a0bdefff
Added support for older versions of DeHackEd patches
...
Patches from DeHackEd 2.3 and 2.4 are now loaded without warnings/errors
2016-07-23 11:09:52 +03:00
Christoph Oelckers
d405cf5b7c
- fixed: Before rendering a sector stack portal the clipper needs to be completely filled, if the view point's subsector is not inside the portal. If this is not done, some setups where a recursive look into the originating area is possible may exhibit some issues.
2016-07-23 09:47:14 +02:00
yqco
4d6532d303
Added RGF_NORANDOMPUFFZ flag for A_CustomRailgun and A_RailAttack
2016-07-22 02:46:41 -06:00
MajorCooke
35666f1e09
Fixed a nullptr crash with flatsprite actors.
2016-07-21 13:12:59 -05:00
Christoph Oelckers
dd962798a5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-21 12:01:53 +02:00
Christoph Oelckers
fa22acca5d
- fixed: Dehacked's 'Speed' value should be treated as signed when being assigned to a double variable.
2016-07-21 12:01:06 +02:00
Christoph Oelckers
881731d76b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-21 08:28:56 +02:00
Blue-Shadow
c428e376cd
Added INFLICTORDMGTYPE flag to A_Damage* action functions
...
It forces the use of the inflictor's damagetype instead of whatever is
passed to the functions.
2016-07-19 08:34:55 +02:00
Blue-Shadow
d09ec5a930
Added DamageType ACS actor property
2016-07-19 03:16:12 +03:00
Magnus Norddahl
421cd2f403
Merge remote-tracking branch 'upstream/master' into truecolor
2016-07-17 23:36:35 +02:00
Christoph Oelckers
d4352dd1a7
- fixed slope calculation error.
2016-07-17 23:13:10 +02:00
alexey.lysiuk
8369833dc5
Fixed setting of custom color for static text in menu
2016-07-17 17:28:46 +02:00
Leonard2
446bc1018c
Fixed: weapons didn't clear their flash layer when the player died
2016-07-17 17:28:45 +02:00
Leonard2
e482a54389
Fixed a crash with A_ClearOverlays
2016-07-17 14:27:56 +02:00
alexey.lysiuk
39042dc4bf
macOS application controller is now using proper delegate protocol
...
Fixes compilation error with Xcode 8:
cannot initialize a parameter of type 'id<NSApplicationDelegate> _Nullable' with an lvalue of type 'ApplicationController *'
2016-07-17 08:02:55 +02:00
Christoph Oelckers
bce9929c22
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-16 19:57:09 +02:00
Christoph Oelckers
c150116f79
- fixed: When changing weapons due to starting or ending a Tome of Power effect, the PSprite's caller needs to be changed.
...
In this case the PSprite animation won't be changed, only the ReadyWeapon. But in order to work, the PSprite's caller needs to change as well so that the next weapon check does not fail.
2016-07-16 19:55:00 +02:00
MajorCooke
7544adfc91
Combined the target/master/tracer checking into AimBulletMissile.
2016-07-16 17:43:00 +02:00
MajorCooke
376c9b0306
- Optimized handling of puffs in the event they're null.
...
- Only spawn the puff as needed again if the projectile actually spawns.
2016-07-16 17:41:28 +02:00
MajorCooke
02064437c5
Fixed wrong angle/slopes being used and one too many &s for NOINTERACT.
2016-07-16 17:34:17 +02:00
MajorCooke
10fabc3ab7
Cleaned up code. Puffs no longer need ALWAYSPUFF.
...
- A_CustomBulletAttack and A_FireBullets will perform a second P_LineAttack to get a puff which only returns to the previous function after a tracer.
2016-07-16 17:34:17 +02:00
MajorCooke
4750dfd8b6
Added ability to set the puffs directly as the spawned projectile's target, master, and/or tracer.
2016-07-16 17:34:16 +02:00
MajorCooke
cc8e7f8de6
Cleaning finished.
2016-07-16 17:34:16 +02:00
MajorCooke
791852a6bd
Cleaned up.
2016-07-16 17:34:15 +02:00
MajorCooke
3c7e1e0528
- Added the tracer actor spawning for A_FireBullets and A_CustomBulletAttack.
...
The projectiles spawning conditions rely upon the puff successfully spawning.
# Conflicts:
# wadsrc/static/actors/actor.txt
2016-07-16 17:34:15 +02:00
alexey.lysiuk
ee72760f3a
libc++ is now used by the linker too (when applicable)
2016-07-16 17:04:38 +02:00
alexey.lysiuk
58fb993402
Added ability to select ammo image and text display order in alternative HUD
...
Controlled via hud_ammo_order CVAR:
* 0 (default): image and text
* any other value: text and image
2016-07-16 16:15:59 +02:00
alexey.lysiuk
74fc45d7b7
Fixed instant boss brain spawning
...
There was a possibility of division by zero which led to nonsensical spawn time
http://forum.zdoom.org/viewtopic.php?t=52760
2016-07-16 15:39:57 +03:00
Christoph Oelckers
c5db5dff99
- fixed a crash when initializing the GL portal data for an incomplete or inactive portal. Also did a bit of cleanup on this code, the 'delta' member was never used.
2016-07-16 12:45:49 +02:00
Christoph Oelckers
a2f56b6ef5
- This should have been part of an earlier commit, no idea why it wasn't saved...
2016-07-16 09:35:20 +02:00
Jordon Moss
1ef8057fa7
Updated SurfaceSkin to take the path property.
2016-07-16 09:30:26 +02:00
Jordon Moss
6014bde3d0
Renamed PushSpriteFrame to PushSpriteMDLFrame for consistency.
2016-07-16 09:30:26 +02:00
Jordon Moss
8bbc04a46f
Fixed a minor typo in SurfaceSkin validity check.
2016-07-16 09:30:25 +02:00
Jordon Moss
b3b2eb42c6
Added SurfaceSkin MODELDEF property, allows overriding MD3 per-surface skins.
2016-07-16 09:30:25 +02:00
Christoph Oelckers
bc7b439dd0
- addressed: MDL_INHERITACTORPITCH got the direction of the rotation wrong. Fixed by deprecating this flag (and also MDL_INHERITACTORROLL) and introducing proper flags, named MDL_USE*. This not only resolves the issue but also elimintates the nonsensical INHERIT part of the names.
2016-07-16 09:10:18 +02:00
Christoph Oelckers
f4b80a451e
- fixed: The render style specific blend settings were overridden when adding code to ensure proper setup of all properties.
...
It turned out that the only thing that wasn't set is the alpha function, not the blend settings themselves.
2016-07-16 08:57:48 +02:00
Christoph Oelckers
943a799aee
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-16 08:30:33 +02:00
MajorCooke
b121284fc0
Added GAF_SWITCH to GetAngle, inverting the function to get the caller's angle on the pointer instead.
2016-07-14 17:14:17 +02:00
MajorCooke
09175a6a7a
This wasn't supposed to be committed...
2016-07-14 09:55:13 -05:00
MajorCooke
59593e57c6
- Fixed: RGF_ITEMS wasn't considered a part of the RGF_MASK flag.
2016-07-14 09:27:29 -05:00
Leonard2
5c182c7fd7
Fixed a crash with heretic's ChickenPlayer class
2016-07-13 13:01:32 +02:00
Leonard2
05d1df3571
Fixed crashes with the A_CrispyPlayer and A_HandLower action functions
...
Simply using FindPSprite in those functions wouldn't be enough because if a mod is using the firehands layer when they are called this would go very wrong
2016-07-13 13:01:32 +02:00
Leonard2
3ea70980f9
Fixed: the strife firehands were interpolated if a mod used the layer before them
...
The flags were also already reset, no need to do it twice
2016-07-13 13:01:32 +02:00
Leonard2
b8e1bead0a
Removed unneeded checks
...
GetPSprite cannot return a null pointer and calling setstate with a null pointer destroys it
2016-07-13 13:01:32 +02:00
Leonard2
da6e12d5bc
Fixed: the weapon layer offsets were interpolated even after the player switched his weapon
2016-07-13 13:01:32 +02:00
Leonard2
75cb8c00a6
Fixed: the flags weren't properly reset if a mod used the old layers before the code used them
2016-07-13 13:01:32 +02:00
MajorCooke
e56196eb1a
Disable facing camera rotations if the actor is a flat/wall sprite.
...
- It not only looks bad, it also throws off users when trying to make perfectly aligned images since the plane is distorted wildly.
2016-07-13 09:31:22 +02:00
MajorCooke
cc8d84cd5d
Fixed sprites defaulting to rotate around the center instead of the offsets. Seeing how it's still useful however, ROLLCENTER can still be used to center upon actors that are offsetted like monsters.
2016-07-13 09:31:22 +02:00
Christoph Oelckers
2a42c20c8c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-13 09:30:16 +02:00
MajorCooke
7ded355d5d
Added rollcenter compatibility.
2016-07-13 09:29:36 +02:00
Christoph Oelckers
79264cb8cd
- fixed missing QuakeEx parameter conversion.
2016-07-12 19:57:32 +02:00
Leonard2
bdeb233849
Fixed: conditionals didn't properly compile to vm code
2016-07-12 19:50:37 +02:00
Leonard2
bbdc64a955
Fixed bad serialization of float types
...
The value was written twice if it couldn't be reduced to a single precision value
2016-07-12 19:37:00 +02:00
Leonard2
af53f5a825
Properly use the boolean type in function declarations
...
This will get rid of useless casts like 'if (isPointerEqual(x))'
It will also allow for proper casting in parameters like using a state as a boolean which is allowed in if statements for example
2016-07-12 19:36:59 +02:00
Leonard2
371896b2cc
Properly use the boolean type in expressions
...
This fixes things like 'if (GetCVar(x))' not working
2016-07-12 19:36:59 +02:00
subenji
7d1dc46665
Implemented fix discussed in http://forum.zdoom.org/viewtopic.php?f=2&t=52428 rearding UserVar corruption in savegames
2016-07-12 19:36:59 +02:00
Blue-Shadow
1f2c8181bb
Added IfWaterLevel SBARINFO command
2016-07-12 19:36:58 +02:00
Braden Obrzut
e401588f40
- Set -stdlib=libc++ and disable inconsistent-missing-override warning with OS X Clang (the latter may be useful for recent versions of Clang in general, but I can't tell at the moment.)
2016-07-11 01:22:37 -04:00
Magnus Norddahl
19030b555f
Fix sky stretching on widescreen displays
2016-07-06 20:19:01 +02:00
Christoph Oelckers
b2a88c1abd
- fixed: mapthinghexen_t::flags needs to be unsigned.
...
This is necessary so that an incorrectly set 0x8000 bit won't enable all high flags.
2016-07-05 01:17:12 +02:00
Christoph Oelckers
6f57c9c8b1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-04 22:37:12 +02:00
Christoph Oelckers
b81876698f
- changed P_ChangeSector so that for bridges it only keeps the floorz and ceilingz of the spawn position.
...
This is necessary to prevent moving sectors from altering the bridge's z-position. The bridge should remain at its current z, even if the sector change would cause floorz or ceilingz to be changed in a way that would make P_ZMovement adjust the bridge.
2016-07-04 22:36:27 +02:00
Magnus Norddahl
b0e9adfc10
Fix single layer skies by using a cube box rather than a cylinder
2016-07-04 16:33:19 +02:00
Christoph Oelckers
6b0b7ea049
- fixed sprite z coordinate calculation for flatsprites.
2016-07-04 01:00:01 +02:00
Christoph Oelckers
cc784fff14
Merge branch 'rollGZ2' of https://github.com/MajorCooke/zdoom
2016-07-04 00:45:37 +02:00
Christoph Oelckers
279b939521
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-07-04 00:44:52 +02:00
Christoph Oelckers
0b93e9b897
Merge branch 'roll' of https://github.com/MajorCooke/zdoom
2016-07-04 00:43:16 +02:00
Christoph Oelckers
d87665bfe0
- fixed: A_CheckTerrain must add to the actor's current velocity, not set it.
2016-07-04 00:39:35 +02:00
Christoph Oelckers
560c1d5c1c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-03 13:43:44 +02:00
Christoph Oelckers
d6d9057f1f
- removed the old way to stop the AnimatedDoor interpolation, now that the parent class can be told that we do not want one. This old code was no longer functionsl.
2016-07-03 13:42:54 +02:00
Christoph Oelckers
e42442732a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-03 13:39:58 +02:00
Christoph Oelckers
1b6a850bf6
- fixed: DAnimatedDoor's main constructor did not disable ceiling interpolation.
2016-07-03 13:39:33 +02:00
Magnus Norddahl
13ef9a834c
Compile fix for gcc/clang
2016-06-30 13:56:53 +02:00
Magnus Norddahl
d1617fcdf0
GCC compile fixes
2016-06-30 13:45:06 +02:00
Christoph Oelckers
3e3a0cdc3d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-30 12:02:51 +02:00
Christoph Oelckers
7bdb98cc0b
- removed debug stuff.
2016-06-30 11:31:00 +02:00
Christoph Oelckers
fc3682006a
- fixed PointOnSide functions to consider 'on the line' as 'in front of'.
...
The bad code was taken from the 2005 floating point rewrite that, by comparing the value with '> -EQUAL_EPSILON', returned 1 for any value close to 0 (as 'on the line') so it was mistakenly reported as 'behind the line'.
2016-06-30 11:30:32 +02:00
Christoph Oelckers
c6fb35ed52
- added per-item colors for static text items in the menu.
...
For option menus this replaces the 'highlighted' parameter with an actual color, for list menus it adds a new parameter.
2016-06-30 10:27:14 +02:00
Christoph Oelckers
57667c2e0b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.eng
2016-06-29 14:58:32 +02:00
Edoardo Prezioso
4defb6e967
- Fix myoffsetof using misaligned pointer access.
...
That could be a problem for particularly pedantic platforms.
2016-06-29 13:04:31 +02:00
MajorCooke
41d20fa6cf
Fixed freeze with A_ClearOverlays.
2016-06-29 12:46:50 +02:00
Christoph Oelckers
6cf96372ba
- fixed: incorrect flag masking for polyobjects disabled all line portals.
2016-06-29 12:46:20 +02:00
Christoph Oelckers
f8ae166281
- fixed return value inversion of FS's ceilingheight and floorheight functions.
2016-06-29 12:46:20 +02:00
Christoph Oelckers
a3450ab824
- removed unused cruft in FS code.
2016-06-29 12:46:19 +02:00
Christoph Oelckers
c6d8125b45
- fixed FraggleScript's resurrect function to call AActor::Revive to ensure that everything gets reset.
2016-06-29 12:46:19 +02:00
alexey.lysiuk
924b8105c5
Fixed splitting of complex walls in compatibility renderer
...
Example: +warp 2720 -200 -32 on Extreme Terror
https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/exterror
2016-06-29 12:34:35 +02:00
alexey.lysiuk
e6a7db99e4
Fixed missing polyobjects in compatibility renderer
2016-06-29 12:23:16 +02:00
alexey.lysiuk
fc8eaab57b
Fixed crash in dynamic lights compatibility renderer
...
Reproduces using -iwad plutonia -file brutalv20b.pk3 +map map07
2016-06-29 12:21:39 +02:00
Christoph Oelckers
17c212d5bc
- disable transparent door render hacks if any of the involved sectors contains floor slopes.
...
These lead to false positives but rarely represent actual hacks.
2016-06-29 12:19:00 +02:00
Magnus Norddahl
335ca12909
Merge remote-tracking branch 'upstream/master' into truecolor
2016-06-27 12:29:23 +02:00
Christoph Oelckers
a99ff71d18
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-06-27 12:01:48 +02:00
Christoph Oelckers
8e3263a433
- fixed return value inversion of FS's ceilingheight and floorheight functions.
2016-06-27 12:01:11 +02:00
Magnus Norddahl
7a65a0f595
Made mipmapping a little less aggressive
2016-06-27 11:57:27 +02:00
Magnus Norddahl
200d357b0d
Linear filtering bug fix
2016-06-27 11:43:24 +02:00
Magnus Norddahl
8f38d3af99
Replaced the bicubic interpolation filter with a simple sharpening filter
2016-06-27 10:49:15 +02:00
Magnus Norddahl
6c037fa249
Throwing templates at the code redundancy problem in drawers
2016-06-26 21:23:32 +02:00
Magnus Norddahl
928e8e0d43
Improved linear filtering performance by adding a lookup table
2016-06-26 12:53:10 +02:00
Magnus Norddahl
4fd127651d
Fixed fuzz drawer crash
2016-06-26 06:54:32 +02:00
Magnus Norddahl
3b6d177787
Added bicubic interpolation when generating mipmaps
2016-06-25 12:14:15 +02:00
Magnus Norddahl
7705463966
Improved linear filtering of walls
...
Fixed some crash bugs
Added mipmap and filtering options to the display menu
2016-06-25 10:33:35 +02:00
Magnus Norddahl
8ec420a597
Added support for more texture filtering control
2016-06-24 19:05:04 +02:00
Magnus Norddahl
b7f32d1bfc
Added LoopIterator to the drawt family of drawers
2016-06-24 18:05:32 +02:00
Magnus Norddahl
698b5f3db1
Simplify drawer code by creating loop iterators
...
Fixed blending bug
2016-06-24 11:37:51 +02:00
Christoph Oelckers
96272fc8b8
- removed unused cruft in FS code.
2016-06-22 13:37:35 +02:00
Christoph Oelckers
4e1c53af91
- fixed FraggleScript's resurrect function to call AActor::Revive to ensure that everything gets reset.
2016-06-22 13:35:03 +02:00
Magnus Norddahl
7a0c801a18
Added mipmapping to wallscan
2016-06-22 08:23:16 +02:00
Magnus Norddahl
ca9d8e580e
Increase command queue memory pool to 16 MB and make it flush if its exhausted
2016-06-22 00:51:16 +02:00
Magnus Norddahl
db4cba239a
Renamed member variable to make it compile with gcc
2016-06-22 00:27:12 +02:00
Magnus Norddahl
e294906d69
Voxel support in true color mode
2016-06-22 00:22:06 +02:00
Magnus Norddahl
f81042b3e2
Fix warning generated by gcc
2016-06-21 22:10:04 +02:00
Magnus Norddahl
4142b6ed1b
GCC compile fix
2016-06-21 22:03:34 +02:00
Magnus Norddahl
c235de5c22
Native mipmap support to FTexture
2016-06-21 21:55:08 +02:00
Christoph Oelckers
af20f31b94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-21 10:46:12 +02:00
Christoph Oelckers
4899c405c3
- fixed: all non-ZDoom compatibility profiles need compat_maskedmidtex set.
...
This was neither fixed in Boom nor MBF.
2016-06-21 10:45:17 +02:00
MajorCooke
613fa4c9e4
Fixed: GetDistance was missing the original Z check disabling introduced in commit bd16ccb
.
2016-06-21 10:14:25 +02:00
Magnus Norddahl
d15af1524c
Added mipmap support for floor and ceiling
2016-06-21 09:38:47 +02:00
Magnus Norddahl
c1b5ba5b90
Added SSE versions of bilinear filtering
2016-06-21 06:22:43 +02:00
MajorCooke
9df65f73fc
Localized the input checker into P_Thing_CheckInputNum now called by both ACS and DECORATE..
2016-06-20 09:41:46 -05:00
MajorCooke
26408a5043
Switched the pointer to AAPTR_DEFAULT.
2016-06-20 09:11:38 -05:00
MajorCooke
85a34bbb88
Added GetPlayerInput(int numinput, int ptr = AAPTR_PLAYER1).
...
- Works exactly like the ACS version, but with pointers instead. The pointer can be anything, so long as it can be identified as a player.
2016-06-20 08:49:57 -05:00
Edoardo Prezioso
6384e81d0f
- Add support for Skulltag ACS IsNetworkGame.
...
Once known as PlayerOnTeam, then it became IsMultiplayer, but Skulltag code ignored emulated multiplayer, hence the new and clearer name.
2016-06-20 09:34:41 +02:00
Magnus Norddahl
c70aa1fe99
Added bilinear filtering
2016-06-20 08:24:02 +02:00
Magnus Norddahl
6daeb5a158
Blend mode fixes
2016-06-20 02:36:54 +02:00
MajorCooke
e02ed3a6f7
Take in the targeter layers if someone disables the safety and uses 0 for start and stop.
2016-06-20 01:15:51 +02:00
MajorCooke
ecfa7415b3
This small change was left out by mistake.
2016-06-20 01:15:51 +02:00
MajorCooke
30880aab79
And a bit more optimization...
2016-06-20 01:15:50 +02:00
MajorCooke
2b91db7b3a
Refactored A_ClearOverlays.
2016-06-20 01:15:50 +02:00
MajorCooke
dd410876cf
Added A_ClearOverlays(int start, int stop, bool safety).
...
- Clears a set of overlays in ranges [start,stop]. If unspecified, wipes all non-hardcoded layers. Safety determines whether to affect core layers or not (i.e. weapon). Returns the number of layers cleared.
Added no override boolean to A_Overlay and a boolean return type.
- If true, and a layer already has an active layer, the function returns false. Otherwise, sets the layer and returns true.
2016-06-20 01:15:49 +02:00
Magnus Norddahl
d3bc68a160
Disabled the AVX intrinsics
2016-06-19 23:37:22 +02:00
Magnus Norddahl
b322043724
Merge remote-tracking branch 'upstream/master' into truecolor
2016-06-19 23:13:16 +02:00
Magnus Norddahl
e72a032a11
Fixed alpha channel issue with textures
2016-06-19 23:12:10 +02:00
Magnus Norddahl
38aba81dcc
Added more SSE drawers
2016-06-19 23:11:41 +02:00
Edoardo Prezioso
2f6c98ead3
- Added support for old Skulltag ACS PlayerTeam.
2016-06-19 22:57:42 +02:00
Edoardo Prezioso
de55d693f9
- Fixed ACS Singleplayer for non-net multiplayer.
2016-06-19 12:59:46 +02:00
Christoph Oelckers
8cf150e68a
- set up portal rotations in the finalizing step, not during initialization.
...
Anything earlier may miss some information required to do this correctly.
2016-06-19 12:40:38 +02:00
Christoph Oelckers
da05dfa72e
fixed: Polyobject-based line portals may not cache their angle as it may change at any time.
2016-06-19 12:32:45 +02:00
Edoardo Prezioso
4e148f00e6
- Fixed wrong Skulltag ConsoleCommand pcode name.
...
Also report this pcode as not supported by the program.
2016-06-19 12:01:29 +02:00
Christoph Oelckers
b364926e93
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-19 11:53:17 +02:00
Christoph Oelckers
cebd877191
- fixed the center point calculation for triangular sectors.
...
The old method does not work as expected with the higher precision of doubles, so instead just average the 3 vertex positions to get the triangle's center.
2016-06-19 11:48:20 +02:00
alexey.lysiuk
2813a22740
Fixed inconsistent state of lights in compatibility renderer
2016-06-19 11:19:31 +03:00
Magnus Norddahl
3f905197d0
Moved vectorized drawers to their own files
2016-06-19 07:40:01 +02:00
Christoph Oelckers
7b99c883e1
- use the exact same semantics and methods to handle player visibility as in the software renderer.
...
This fixes invisible player sprites in recursive line portals.
2016-06-18 12:14:20 +02:00
Magnus Norddahl
3e7eb79729
Added some experimental AVX2 drawers
2016-06-18 11:17:59 +02:00
Christoph Oelckers
849ee50689
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-18 10:01:44 +02:00
Christoph Oelckers
87d27b8db3
- fixed some crash issues with recent changes.
2016-06-18 10:01:24 +02:00
Magnus Norddahl
e7cdcd9c0a
Change to one pass rendering to remove fuzz artifact
2016-06-18 05:20:34 +02:00
Edoardo Prezioso
56508a2d82
- Avoid issues with misused Strife actions.
2016-06-17 23:09:34 +02:00
Leonard2
24c73071f4
Fixed a crash with A_JumpIfNoAmmo
...
Non-weapon layers can pass the caller check even when there is no ReadyWeapon
2016-06-17 18:36:57 +02:00
Leonard2
68c483c041
Renamed the weapon action function caller check to ACTION_CALL_FROM_PSPRITE to avoid confusion
...
This was always checking for every psprites rather than just weapon layers
2016-06-17 18:36:57 +02:00
Leonard2
abc7113e09
Removed the INSTATECALL flag because it is now unused and was replaced by stateinfo
2016-06-17 18:36:57 +02:00
Christoph Oelckers
92e2ce2aef
- adjustments for weapon rendering in GL.
...
This adds support for the new weapon state code and fixed some lighting calculations.
Note that this currently will not allow combination of HUD models with other sprite frames yet.
2016-06-17 17:21:42 +02:00
Christoph Oelckers
b7d13c0711
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-17 16:18:24 +02:00
Christoph Oelckers
8ca07443f1
- fixed: Sprite splitting at 3D floors must set the fog parameters for the new light level.
2016-06-17 16:16:31 +02:00
Christoph Oelckers
05fabbe294
- fixed: G_InitNew may only clear the hub statistics when it is not called during loading of a savegame.
2016-06-17 16:14:58 +02:00
Christoph Oelckers
2c928a2cda
- fixed: Strife's firehands' coordinates need WEAPONTOP being added because it cannot be taken from the main weapon layer which no longer exists when the hands appear.
2016-06-17 15:26:00 +02:00
Magnus Norddahl
4ef2fb3cdb
Fixed multithreaded rendering issue with the fuzz effect
2016-06-17 14:45:52 +02:00
Christoph Oelckers
018615ca0d
- fixed weapon-based Psprite adjustment to always use the weapon this was called from and make non-weapon specific checks only exclude the targeter.
2016-06-17 14:14:35 +02:00
Magnus Norddahl
822bbd5b9a
Fuzz (invisibility) adjustments
2016-06-17 13:40:23 +02:00
Magnus Norddahl
f53e468f3f
Fixed fill column rgba drawers
2016-06-17 12:38:00 +02:00
Magnus Norddahl
35c078dc1e
Screenshot fix
2016-06-17 11:24:21 +02:00
Magnus Norddahl
12a50c140c
Fix animated textures not updating in swtruecolor mode
2016-06-17 10:47:30 +02:00
Edoardo Prezioso
574f2936d4
- Fixed GCC/Clang compiler errors and warnings.
2016-06-17 10:19:03 +02:00
Magnus Norddahl
5963f29afd
Added missing SetUpdated
2016-06-17 10:16:34 +02:00
Magnus Norddahl
000008e04d
Fixed empty canvas in kdizd intermission screen
2016-06-17 10:14:33 +02:00
Magnus Norddahl
3089043b07
Fixed typo
2016-06-17 08:28:30 +02:00
Magnus Norddahl
3369a2747c
Merge remote-tracking branch 'upstream/master' into truecolor
...
# Conflicts:
# src/r_things.cpp
2016-06-17 08:23:42 +02:00
Magnus Norddahl
fee8650357
Add r_multithreaded and fix color issue
2016-06-17 08:02:41 +02:00
Christoph Oelckers
cfaa3e3fa9
- changed action function interface so that callers can be identified directly, instead of guessing it from looking at the parameters.
...
With arbitrary PSP layers the old method was no longer safe because the layer ID was not available in the action function.
2016-06-16 16:16:27 +02:00
Christoph Oelckers
7ccdbf9b62
Merge branch 'PSprites'
2016-06-16 16:16:16 +02:00
MajorCooke
c9f4620702
Reimplemented P_SetPsprite.
2016-06-16 07:24:00 -05:00
Xaser Acheron
de0301a704
split bfg self-damage code into its own function, A_RadiusDamageSelf
2016-06-16 00:43:07 +02:00
Xaser Acheron
481ef7a5b5
added SMMU-BFG11k-style 'damrad' property to A_BFGSpray
2016-06-16 00:43:07 +02:00
Xaser Acheron
8e8248284a
added BFGF_HURTSOURCE and BFGF_MISSILEORIGIN to A_BFGSpray
2016-06-16 00:43:06 +02:00
MajorCooke
2d4eb8dde4
- Added limit parameter to A_RailAttack and A_CustomRailgun.
2016-06-14 18:20:43 -05:00
Magnus Norddahl
77c4786b9d
Minor code cleanup
2016-06-14 23:05:20 +02:00
Magnus Norddahl
9c8c1e0ea5
Fixed window transparency bug
2016-06-14 00:27:08 +02:00
Magnus Norddahl
586d5cdf1e
Normalize naming convention a little
2016-06-13 23:33:52 +02:00
Magnus Norddahl
69b2fa72e8
Moved RGBA draw stuff to its own header file
2016-06-13 23:10:54 +02:00
Magnus Norddahl
8ba6a4f175
Precache, Unload and FillSimplePoly bug fix
2016-06-13 21:39:55 +02:00
Christoph Oelckers
f1597a5d26
- fixed: Trace should set CrossedWater only if a water surface actually is crossed, i.e. the start of the trace and the end of the trace are on different sides of the surface.
...
This was incorrectly spawning splashes when shooting inside a deep water sector, but in most cases the splash just was not visible. It could become visible if its position got clipped by a nearby one-sided wall.
2016-06-13 21:30:58 +02:00
Magnus Norddahl
3ce2d8365d
Fix HUD colors when hw2d is off
2016-06-13 20:01:31 +02:00
Magnus Norddahl
e31331bed2
Sloped plane adjustments
2016-06-13 19:09:48 +02:00
MajorCooke
82bc5e7bd1
Fixed wrong token for Light keyword.
2016-06-13 09:50:12 -05:00
Christoph Oelckers
d74584e5b2
- fixed: DAnimatedDoor must not start an interpolation on the door sector's ceiling.
2016-06-13 13:58:39 +02:00
Magnus Norddahl
cc10c2a970
Fix cameras and kdizd intro for true color mode
2016-06-13 03:16:48 +02:00
Magnus Norddahl
0f0859b0b2
Special colormap support for when no hw accel is available
2016-06-12 22:54:23 +02:00
Magnus Norddahl
350857a9f6
Fixed fuzz effect when using multiple cores
2016-06-12 19:19:44 +02:00
Braden Obrzut
624c935385
- Fixed: Floating point conversion error in SBarInfo DrawBar which broke interpolation.
2016-06-12 06:28:50 -04:00
Christoph Oelckers
b8e392eaa5
- do not try to load empty BEHAVIOR lumps.
...
These would otherwise print an error message but there's a lot of maps out there which only have an empty entry to mark the map as Hexen format.
2016-06-12 11:45:25 +02:00
Magnus Norddahl
42efc7334e
Fix missing particles in true color mode
2016-06-12 00:50:43 +02:00
Magnus Norddahl
351874be30
Merge remote-tracking branch 'upstream/master'
2016-06-12 00:08:05 +02:00
Christoph Oelckers
373c59f924
- fixed inverse sign for rocket trail particle movement.
2016-06-12 00:05:23 +02:00
Christoph Oelckers
db2cef96d6
- removed unnecessary FLOAT2FIXED call in particle code.
2016-06-11 23:43:07 +02:00
MajorCooke
4c8028d64b
- Fixed a discrepancy with A_FaceMovementDirection involving pitch adjustments going the wrong way both in motion, and standing still.
2016-06-11 14:07:27 -05:00
Magnus Norddahl
40b76dc9b0
Apply gamma when using true color output on Linux and Mac
2016-06-11 18:41:56 +02:00
Christoph Oelckers
9eb18a9e45
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-11 17:15:55 +02:00
Magnus Norddahl
5ae8e9e8c2
Fix missing colormap lookup
2016-06-11 16:17:30 +02:00
MajorCooke
fb286d1737
- Changed endsize to sizestep. Endsize affected more things than I thought it would.
2016-06-11 08:05:29 -05:00
Leonard2
ebe3f23677
Added GetCVar(string name)
...
Works like ACS's GetCVar
2016-06-11 10:15:49 +02:00
MajorCooke
d8bf958a06
Fixed: Frozen particles would still be deleted when frozen instead of doing nothing with.
2016-06-11 10:00:50 +02:00
MajorCooke
f787056198
- Added endsize parameter and SPF_NOTIMEFREEZE for A_SpawnParticle.
...
SPF_NOTIMEFREEZE processes particles with this flag regardless of time freeze. The endsize parameter changes the scale of the particle to that size throughout its lifetime linearly.
2016-06-11 10:00:50 +02:00
Magnus Norddahl
a6d696bbfd
Undo removal of wallscan_np2 and wallscan_np2_ds
2016-06-11 00:50:36 +02:00
Magnus Norddahl
d5331e6095
Wallscan fix
2016-06-10 22:22:40 +02:00
Magnus Norddahl
07571da98c
Improved how threaded rendering is handled
2016-06-10 18:43:49 +02:00
Magnus Norddahl
ffcfe0b54f
Fix warning
2016-06-10 17:08:45 +02:00
Magnus Norddahl
9420826094
Merge remote-tracking branch 'upstream/master'
2016-06-10 16:59:20 +02:00
Magnus Norddahl
27156eb60a
Linux compile fixes and missing variable declarations
2016-06-10 16:32:47 +02:00
Magnus Norddahl
103a6baac5
Support for drawing in multiple passes
2016-06-10 15:57:31 +02:00
Magnus Norddahl
6c70eaea2f
Add jpeg bgra support
2016-06-10 15:56:50 +02:00
Magnus Norddahl
24f846f702
Bug fixes
2016-06-10 14:25:56 +02:00
Magnus Norddahl
05b6fe6174
Added true color texture support for walls and floors
2016-06-10 13:50:34 +02:00
Christoph Oelckers
c4d8950a7f
- fixed: APROP_Friction was missing a 'break'.
2016-06-10 13:23:23 +02:00
Magnus Norddahl
c59db95cc8
Rewrote wallscan to fix buffer overruns and code duplication.
2016-06-09 23:12:38 +02:00
Christoph Oelckers
ef86b3975a
- added 'strictdecorate' CVAR. If this is set to 'true', any DECORATE error that had to be demoted to a warning for backwards compatibility will be treated as an actual error.
2016-06-08 10:56:11 +02:00
Christoph Oelckers
cf21bb1524
- reinstated abort-on-error for any problem that gets reported during DECORATE code generation.
...
- fixed: DECORATE allowed a silent conversion from names to integers.
In old versions the name was converted to 0, since the scripting branch to the name index. Reverted to the old behavior but added a warning message.
2016-06-08 10:46:35 +02:00
Magnus Norddahl
c452d02573
Added multicore rendering to true color drawers
2016-06-07 15:25:11 +02:00
Magnus Norddahl
c5fcfb664f
Changed rgba renderer to use a command queue system for its drawers
2016-06-07 00:55:52 +02:00
Christoph Oelckers
1703842a94
- fixed some issues with teleport fog:
...
* many calls didn't use TELEFOGHEIGHT, mostly those coming from external code submissions that never were tested on anything but Doom. Addressed by adding this value inside P_SpawnTeleportFog and making the distinction between projectiles and non-projectiles from P_Teleport also part of this function.
* there were still a few places which spawned the teleport fog directly, skipping all the added features of P_SpawnTeleportFog.
2016-06-06 10:48:40 +02:00
MajorCooke
b2d2389343
Fixed: Slanted flat + roll sprites didn't take DONTFLIP into account.
2016-06-05 15:51:23 -05:00
MajorCooke
53837de17d
Added DONTFLIP flag.
...
- By default, when viewing a flat sprite from behind, the image is flipped around on the X axis. This may not always be desired, so this flag disables it.
2016-06-05 15:21:19 -05:00
MajorCooke
e58c6de7d6
DONTFLIP flag prevents the backside from flipping over.
2016-06-05 15:14:40 -05:00
alexey.lysiuk
c176d38b7e
Fixed compilation with Clang
2016-06-05 19:41:08 +03:00
Magnus Norddahl
c058ab9cc9
Fixed non-standard __m128i usage in SSE_SHADE
2016-06-05 17:34:51 +02:00
Magnus Norddahl
0c8c9e0aea
Added FDynamicColormap support to true color mode
2016-06-05 14:08:03 +02:00
alexey.lysiuk
56ce6abbc2
Fixed splitting of walls in compatibility renderer
...
Any wall adjacent to 3D floor sector were not rendered at all
2016-06-05 12:38:23 +03:00
Christoph Oelckers
8a08fb2f6a
- fixed nullptr/bool mixup.
2016-06-04 20:52:56 +02:00
Magnus Norddahl
af02bafdeb
Fixed missing some columns in transparency rendering
2016-06-03 22:57:36 +02:00
Leonard2
0b88bae458
The strife firehands now make proper use of the psprite layers
2016-06-03 19:46:31 +02:00
Leonard2
afa708c138
Allow psprite layers to be manipulated directly from the player's own body
2016-06-03 19:18:58 +02:00
Magnus Norddahl
373b59b94f
Fix dovline4 being a define on X64_ASM
2016-06-03 14:06:44 +02:00
Magnus Norddahl
6160675e08
Added a few more SSE drawers
2016-06-03 12:42:08 +02:00
Leonard2
eeff17c550
Account for this on the renderer's side instead
...
This fixes the weapon's layer behaving differently when called from
A_Overlay (the flag would be set in this case breaking the offsets)
2016-06-03 00:50:12 +02:00
Leonard2
543414d31f
Added 2 new layer flags: PSPF_CVARFAST and PSPF_POWDOUBLE
...
These flags allowed to easily restore a lost part of the targeter layers
behavior
2016-06-03 00:50:11 +02:00
Leonard2
bc334ccc9f
Avoid creating the targeter layers if the inventory item isn't attached to
...
its owner yet
2016-06-03 00:50:11 +02:00
Leonard2
e1f139ddcd
The targeter layers now use a proper Caller
...
This will avoid having to check for certain stuff and also allow them to not be destroyed when the ReadyWeapon is null like before
2016-06-03 00:50:10 +02:00
Leonard2
8244d2c844
Make sure never to call GetPSprite when the ReadyWeapon is null
2016-06-03 00:37:55 +02:00
Leonard2
9ee5e57340
Call GetPSprite here to update the ReadyWeapon but avoid doing so if it
...
is null
TickPSprites will take care of destroying the weapon/flash layers if the
ReadyWeapon is null
2016-06-03 00:37:54 +02:00
Leonard2
f14a840777
The ReadyWeapon is now assumed to not be null
2016-06-03 00:37:54 +02:00
Magnus Norddahl
7142faf41d
Minor compile error fixes when X86_ASM is defined
2016-06-02 21:39:44 +02:00
Magnus Norddahl
02a39ef457
Added bgra support to SDL target
2016-06-02 20:05:08 +02:00
Leonard2
8668719bbc
Revert "- re-added P_SetPSrite."
...
This reverts commit e6d89b9f71
.
2016-06-02 20:02:03 +02:00
Leonard2
d933f77bf5
Fixed: the game could crash if some inventory items were destroyed in a
...
certain way
2016-06-02 20:00:22 +02:00
Magnus Norddahl
672b80898b
Moved ColormapNum to visstyle_t and changed colormap to BaseColormap
2016-06-02 19:26:27 +02:00
Magnus Norddahl
41537a50ab
Fix true color light calculation bug for decals
2016-06-02 16:52:41 +02:00
Magnus Norddahl
47f32d03cd
Fixed some light and blending functions for the true color mode
2016-06-02 14:49:03 +02:00
Christoph Oelckers
2afadb0108
- fixed: ADehackedPickup was missing NULL pointer checks in nearly all methods that used RealPickup.
...
Some DECORATE hacks make it possible that this does not contain a valid pointer when these methods are called.
2016-06-01 23:41:34 +02:00
Christoph Oelckers
18ebe92cfc
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/g_level.cpp
2016-06-01 11:45:57 +02:00
Christoph Oelckers
26a15d0ccc
- delete thinkers before starting to restore the savegame data to avoid interference of the old thinkers' Destroy() method with the newly loaded data.
...
Note that even with this change it is still not possible to unarchive any thinker pointers before the thinker list has been loaded as it would create broken lists.
2016-06-01 11:43:56 +02:00
Christoph Oelckers
978e522fb4
- fixed: portal-related sound calculations offset the sound in the wrong direction.
2016-06-01 11:14:25 +02:00
Christoph Oelckers
14e4a64c82
- fixed: Destroying a SkyViewpoint disabled all sector portals.
2016-06-01 10:10:18 +02:00
Magnus Norddahl
4f635983fc
Add bgra support to OS X target
2016-06-01 08:54:39 +02:00
Magnus Norddahl
b9d7a98aec
Change swtruecolor cvar to take effect immediately
2016-06-01 06:02:37 +02:00
Magnus Norddahl
e929eec80f
Make x86 asm aware of swtruecolor
2016-06-01 05:28:14 +02:00
Magnus Norddahl
05220a7133
Added IsBgra() to DCanvas
...
Changed SWRender output format to be decided by IsBgra()
2016-05-31 09:36:18 +02:00
Magnus Norddahl
045bad1b52
Removed the need for the pixel_canvas_t typedef
2016-05-31 05:31:32 +02:00
Magnus Norddahl
20b7743ec3
Added R_SetColorMapLight and R_SetDSColorMapLight
2016-05-31 01:49:39 +02:00
Magnus Norddahl
7080180d47
Added menu option for toggling true color output on and off
2016-05-30 13:32:24 +02:00
Magnus Norddahl
8aabc26cd9
Created standalone rgba drawing functions
2016-05-30 05:52:15 +02:00
alexey.lysiuk
5348a15b75
Added option to control dynamic loading of OpenAL
...
Dynamic loading is enabled by default, set DYN_OPENAL to OFF to link with static or dynamic library
# Conflicts:
# src/sound/oalsound.cpp
# src/sound/oalsound.h
2016-05-29 14:25:04 +02:00
Edoardo Prezioso
243030046a
- Fixed issues with invalid GetMaxInventory calls.
2016-05-29 12:50:37 +02:00
Christoph Oelckers
44f09edf4c
- fixed: monsters cannot crouch, so their crouch factor has to be 1, as 0 would yield incorrect results if the value is used in subsequent calculations (e.g. adjusting a trajectory to a target which can be or may not be a player.)
2016-05-29 12:48:27 +02:00
MajorCooke
bb91723174
- Added GetCrouchFactor(ptr).
...
Gets the crouch factor of a player. Can be set to target/master/tracer, as long as it's a player. Defaults to the first player.
2016-05-29 12:43:46 +02:00
MajorCooke
2719905ade
- Added source and inflictor parameters to all A_Damage/Kill functions.
...
- Source is the actor to blame for the cause of damage (monster infighting for example). For missiles, modders should consider setting to AAPTR_TARGET.
- Inflictor is the actor doing the damage itself. Note that by changing this, it will take into account the flags on the pointed actor.
2016-05-29 12:40:17 +02:00
MajorCooke
33ddbe8ab3
Added SKYEXPLODE support for P_LineAttack on horizons.
2016-05-29 12:38:37 +02:00
Benjamin Moir
6633e41cca
added CheckProximity to ACS
2016-05-29 12:38:37 +02:00
alexey.lysiuk
89016020a8
Used ISO Latin 1 encoding for title text in startup window on OS X
...
Windows version uses ANSI_CHARSET to handle the corresponding text
This solves the problem like in https://github.com/alexey-lysiuk/gzdoom/issues/63 :
*** Assertion failure in -[NSTextFieldCell _objectValue:forString:errorDescription:], /Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1404.47/AppKit.subproj/NSCell.m:1684
Invalid parameter not satisfying: aString != nil
2016-05-29 10:58:12 +03:00
Magnus Norddahl
6e53c1bd12
Change render target output from PAL8 to BGRA8
2016-05-28 20:40:33 +02:00
Christoph Oelckers
4940f0249d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-28 20:33:29 +02:00
Christoph Oelckers
fc25a74a03
- fixed: In case of a crash the buffered console output was not dumped to the rich edit control so it never got into the crash log.
2016-05-28 20:11:19 +02:00
Leonard2
360ad7a844
Replaced every remaining instances of the old layer names
2016-05-28 01:19:42 +02:00
Leonard2
2f5ae3b51e
Changed the default layer indices and renamed them
...
Note that this doesn't compile yet
2016-05-28 01:19:41 +02:00
Leonard2
c82620129c
Added A_OverlayFlags
...
Allows psprites to follow the weapon and/or the player's bobbing
2016-05-28 01:19:40 +02:00
Christoph Oelckers
c0fe86028d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-27 23:47:19 +02:00
Leonard2
8f360f3bea
Small refactor
2016-05-27 23:37:35 +02:00
Leonard2
b220db4ebe
Fixed: a layer's movements weren't interpolated in some cases
...
The old position members would be incorrectly updated if a layer sets another layer's offsets and this layer ticks before the other
2016-05-27 23:37:34 +02:00
Leonard2
bca9829950
Fixed: a few members weren't properly initialized
...
This could go wrong if a layer had only one state of -1 tics
2016-05-27 22:58:27 +02:00
Leonard2
599fa7cfd1
Fixed: it was no longer possible to set the flash state in the very first
...
weapon's state
This was due to an oversight in my first commit
2016-05-27 22:31:18 +02:00
Christoph Oelckers
d43ea33031
- fixed: A_CustomBulletAttack may not rely on the parameter default setter to get a valid puff. This must be checked explicitly in the functions body to ensure it is never NULL.
2016-05-27 11:39:44 +02:00
Christoph Oelckers
b926cf35d5
- fixed: The portal init code should only delete REJECT if there's actually some portals to consider.
2016-05-27 09:45:17 +02:00
Christoph Oelckers
19003a7973
- fixed: The node builder's FindMapBounds function included all vertices generated by the node builder.
...
This could cause problems on maps with bogus nodes so it's better to only check vertices that are referenced by a linedef.
2016-05-27 09:38:33 +02:00
Christoph Oelckers
34c67b9eae
- fixed: The NoiseList array was not cleared before use.
2016-05-27 00:00:27 +02:00
Christoph Oelckers
ded479b1a5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-25 12:02:37 +02:00
Christoph Oelckers
cc685e982b
- fixed: interactive line portals were always deactivated, regardless of alignment type.
2016-05-25 11:36:23 +02:00
Christoph Oelckers
f241d9773a
- made P_NoiseAlert non-recursive to avoid stack overflow problems in large open-area maps with a high sector count.
2016-05-25 11:30:11 +02:00
Christoph Oelckers
72a3257400
- fixed: DIntermissionScreen::Init did not handle non-existent strings in the string table and crashed on a NULL pointer.
2016-05-25 01:45:55 +02:00
Christoph Oelckers
a0dc4ae738
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-24 13:53:52 +02:00
Christoph Oelckers
49234b1fc3
- fixed: UpdateRenderSectorList did some bad calculations for checking portal plane order.
2016-05-24 13:53:29 +02:00
Christoph Oelckers
e6d89b9f71
- re-added P_SetPSprite.
...
For debugging purposes it's better to have this as a function.
2016-05-24 13:05:43 +02:00
Christoph Oelckers
d058820c65
- fixed scroll speed calculation for Heretic.
2016-05-24 10:01:57 +02:00
Christoph Oelckers
d70601471a
- fixed the spawn position of Strife's sentinel's attack's trail.
2016-05-24 09:37:01 +02:00
Christoph Oelckers
3bde8824a3
- fixed A_Burst's velocity calculation.
2016-05-24 09:32:30 +02:00
MajorCooke
1b1195df6a
- Added limit parameter to A_RadiusGive.
...
- The function ends operation if the number of successfully given actors reaches this count.
2016-05-23 21:11:26 -05:00
alexey.lysiuk
aa6753383d
Fixed fullscreen mode on non-default monitor in OS X backend
...
Fullscreen window was incorrectly placed on the main screen instead of the current one
Honestly I have no idea what was the reason behind that [NSWindow setFrameOrigin:] call
Apparently it's redundant and moreover it's incorrect for multi-monitor configuration
2016-05-22 13:22:07 +03:00
Christoph Oelckers
ae31e0ba72
- changed the default key name string because '#' is used as a comment in the config files.
2016-05-22 12:20:46 +02:00
Christoph Oelckers
db944df467
- fixed 3D floor rendering with nearby slopes.
2016-05-22 12:15:14 +02:00
Christoph Oelckers
eed32ee285
- fixed: The friction calculations for terrain based friction had some fixed/float mixups.
2016-05-22 12:11:39 +02:00
Christoph Oelckers
e43c9826dd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-22 09:31:48 +02:00
Christoph Oelckers
36dfa97802
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
# Conflicts:
# src/version.h
2016-05-22 01:27:05 +02:00
Christoph Oelckers
f184438032
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
2016-05-22 01:26:13 +02:00
Christoph Oelckers
d767d10322
- made PSprites submission GC aware.
2016-05-21 13:11:43 +02:00
Christoph Oelckers
4781b73d5b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-21 01:09:21 +02:00
Leonard2
8c205ebac3
Added A_OverlayOffset
...
Like A_WeaponOffset except it can access any psprites
2016-05-20 17:04:45 +02:00
Leonard2
1ecfb5897b
Added A_Overlay
2016-05-20 17:04:45 +02:00
Leonard2
1966b61b8f
Generalized the psprites implementation
2016-05-20 17:04:44 +02:00
Christoph Oelckers
bd396ccb7c
- made P_Move's multiple-step movement portal and teleporter-aware.
2016-05-20 13:30:10 +02:00
Christoph Oelckers
428bd52295
- fixed: It was not possible to step through a ceiling portal into the upper sector.
2016-05-20 13:10:42 +02:00
Gaerzi
68c5191798
Add GOG path for SVE
...
Since GOG.com is finally offering this game.
2016-05-20 02:18:48 +02:00
Christoph Oelckers
5017a192eb
- fixed: The texture matrix was not reset after drawing the texture pass for multipass textured dynamic lights.
2016-05-19 12:22:39 +02:00
Christoph Oelckers
13da14e915
- disable dynamic lights on additively blended surfaces because it doesn't look good at all.
2016-05-18 22:20:18 +02:00
Christoph Oelckers
ea62d4c2d1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-18 21:47:42 +02:00
Christoph Oelckers
78055733c8
- fixed: automap markers were scaled too small
2016-05-18 21:25:58 +02:00
Christoph Oelckers
f22adcc398
- be more thorough with Eternal Doom MAP03. The compatibility option does not seem to fully solve the problem, so let's just clear the tags in the bogus stair sectors.
2016-05-18 21:06:07 +02:00
Christoph Oelckers
9e0301c1a1
- prevent message spam with no MIDI devices.
2016-05-18 13:11:01 +02:00
Christoph Oelckers
7642c2cdaa
- fixed: Opening a non-existent menu left the engine in an invalid state.
2016-05-18 12:02:54 +02:00
Christoph Oelckers
3dcb05e5d2
- fixed: Lock #255 was inaccessible for LOCKDEFS.
2016-05-18 11:56:39 +02:00
Christoph Oelckers
a7fd04a235
Merge branch 'master' of https://github.com/kcat/zdoom
2016-05-18 11:48:27 +02:00
MajorCooke
115dbd0b58
- Added A_WeaponOffset(x = 0, y = 32, flags).
...
- Places the weapon offset by the defined x and y. Both are floats. This stacks with weapon bobbing.
- WOF_KEEPX: Don't change the X offset.
- WOF_KEEPY: Don't change the Y offset.
- WOF_ADD: Add onto instead of replacing the coordinates.
2016-05-18 11:19:24 +02:00
Christoph Oelckers
661c2e5919
- added missing NULL pointer check to ACS's CheckInventory.
2016-05-18 09:39:19 +02:00
Christoph Oelckers
362e21a6b3
- fixed: The pitch negation required for INHERITACTORPITCH was also applied to the one from PITCHFROMMOMENTUM.
2016-05-17 09:12:26 +02:00
Chris Robinson
fe966916d7
Set head-relative for sources near the listener
...
This matches the behavior of the FMOD backend
2016-05-16 17:02:39 -07:00
Christoph Oelckers
5e4be101f1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-15 23:25:02 +02:00
Christoph Oelckers
9e847c252b
- fixed: When linking an actor into the blockmap multiple portal groups, AActor::LinkToWorld would delete the links to the previous nodes for each new group. This was causing random crashes when the affected actor was deleted by the garbage collector.
2016-05-15 23:24:30 +02:00
Christoph Oelckers
aff8b00575
- added NULL pointer checks to SpecialDropAction methods that call CheckLocalView.
2016-05-15 09:16:37 +02:00
Christoph Oelckers
6949afc334
- fixed: For allowing an unblocking move, PIT_CheckThing used the wrong actor's position. This was causing monster pile-ups with moving ceilings.
...
- don't let P_PushUp move any actors with the same z as the pushing actor. This should solve most monster pile-ups, but the entire logic here needs some serious rethinking. The only reason this doesn't cause more problems is some fudging in several other places.
2016-05-14 15:05:06 +02:00
Christoph Oelckers
52e19c59b3
Revert "- let gl_draw_sync default to false."
...
This reverts commit 616f84209b
.
Now I remember why this is not active: This is causing some problems with interpolated plane heights. Since there is no synchronization with the vertex buffer, the next frame will reset all plane coordinates before the GPU can use them. This will require some rethinking about when to update the buffer - it cannot be done in the render data setup loop.
2016-05-13 20:44:04 +02:00
Christoph Oelckers
03b31796cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-13 10:09:24 +02:00
Christoph Oelckers
ebca170e73
- fixed a few warnings in OpenAL code.
2016-05-13 10:07:18 +02:00
Christoph Oelckers
cd8213f067
- fixed: The skybox pointer in FSectorPortal must at least be initialized to nullptr when the struct is deserialized, to avoid an access violation if the partially initialized data is used. This can happen when P_SerializeThinkers destroys the original thinkers that were created on map load.
...
- removed the sector loop for deleting skybox references in ASkyViewpoint::Destroy. Since this only refers to the sectorPortals array it is completely redundant as the following code will clear them just as well.
2016-05-13 10:07:01 +02:00
Christoph Oelckers
99bfc64af6
- another failed attempt to use GL_CLIP_PLANE. Leave it in because it's closer to what is needed than the old code.
2016-05-12 23:41:06 +02:00
MajorCooke
4998d4a84d
Use the direct pointer of P_PointInSector instead.
2016-05-12 22:15:06 +02:00
MajorCooke
2ba26693d1
- Added 3D Floor + Portal awareness, along with flags to turn off detection of both features.
2016-05-12 22:15:06 +02:00
MajorCooke
b91ed5dc5d
Added GetZAt DECORATE function.
...
- float GetZAt(x, y, angle, flags, pick_pointer);
- Gets the floor z at x distance ahead and y distance to the side in relative form from the calling actor pointer. Flags are as follows (GZF_ prefix):
- CEILING: Returns the ceiling z instead of floor.
- ABSOLUTEPOS: x and y are absolute positions.
- ABSOLUTEANG: angle parameter does not add the pointer's angle to the angle parameter.
2016-05-12 22:15:05 +02:00
Christoph Oelckers
616f84209b
- let gl_draw_sync default to false.
...
No need to waste valuable processing time if we can let the GPU run in parallel with the code that generates the next frame.
2016-05-12 20:23:18 +02:00
MajorCooke
39f64383cb
Changed RTF_THRUSTZ to match RADF_THRUSTZ's bitmap.
2016-05-11 19:41:33 +02:00
MajorCooke
952219a018
Added RTF_THRUSTZ for A_RadiusThrust.
...
- Allows thrusting with Z velocity.
2016-05-11 19:41:33 +02:00
Christoph Oelckers
852ed6cd04
- un-revert P_CheckMove fix.
2016-05-11 19:39:08 +02:00
Edoardo Prezioso
769521b2e1
- Fixed second player lock after error in netgame.
2016-05-11 14:05:29 +02:00
Christoph Oelckers
078e27e61f
- fixed: The mugshot's angle was inverted.
2016-05-11 14:04:21 +02:00
Christoph Oelckers
d4b258f15b
- don't place the chasecam right at the hit position of the trace. This will be the intersection with a wall or sector plane and may cause clipping issues. Instead place it very slightly in front of the actual hit position.
2016-05-11 13:57:49 +02:00
MajorCooke
9ab620814d
- Fixed: Armor absorption did not take ALLOW/CAUSEPAIN flags into account.
2016-05-11 13:33:39 +02:00
Christoph Oelckers
0726a88ab9
- only return DWORD aligned addresses in openings because the 3D floor code stores floating point values in there which cannot be accessed on platforms with strict alignment rules.
2016-05-11 12:04:41 +02:00
Christoph Oelckers
220255e6a4
- fixed P_CheckMove's dropoff check and removed some unneeded code.
2016-05-11 11:56:03 +02:00
Christoph Oelckers
12b84d9f71
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-11 11:47:00 +02:00
Christoph Oelckers
43d93a19a0
- fixed: P_AlignFlat had the 'dist' value negated. Also simplified the code a bit.
2016-05-11 11:36:53 +02:00
Christoph Oelckers
f8c12f4533
- fixed warning in s_sound.cpp
2016-05-11 10:32:57 +02:00
Christoph Oelckers
cc88130362
- fixed: P_CheckMove's dropoff check had the heights swapped. This also shouldn't in any way depend on COMPATF_DROPOFF and must be skipped entirely for actors with either MF_FLOAT or MF_DROPOFF set.
2016-05-11 10:09:13 +02:00
Christoph Oelckers
77e30bb7d7
- fixed: The line portal links were not deleted when an actor was destroyed.
2016-05-11 09:58:03 +02:00
Christoph Oelckers
15933f9c72
- fixed: Texture precaching for sprites had some inverted logic and deleted everything that was still required.
2016-05-10 20:51:23 +02:00
Christoph Oelckers
0cc57c6141
- fixed: BoundTextureDraw2D must reset the texture mode.
2016-05-10 20:50:01 +02:00
Christoph Oelckers
2709391ce9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-09 23:50:06 +02:00
Christoph Oelckers
966e6797e4
- fixed: The view path for checking whether the player sprite should be drawn during a portal transition was never set properly in the portal transitioning case.
2016-05-09 23:16:06 +02:00
Christoph Oelckers
2e4b8dd416
- fixed incorrect sign in P_TranslatePortalVXVY
2016-05-09 21:59:13 +02:00
Christoph Oelckers
15c711f2a1
- added a missing break in the wall draw dispatcher.
2016-05-09 00:58:55 +02:00
Christoph Oelckers
d5eb1008a4
- implemented texture overlay pass for textured dynamic lights.
2016-05-08 22:07:18 +02:00
Christoph Oelckers
b90173ed21
- fixed: ADynamicLight::visibletoplayer was not initialized for placed lights when restoring a savegame.
2016-05-08 09:34:22 +02:00
Christoph Oelckers
ad713b1c25
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-08 09:28:01 +02:00
Christoph Oelckers
841a5795ae
- savegame version bump for a GZDoom exclusive change (to avoid synchronization problems in the future.)
2016-05-08 09:27:42 +02:00
Christoph Oelckers
6753cddce1
- fixed: The HUD weapon drawer partially took the render state from the previous things that got rendered. Especially the blend mode could be randomly set to different values.
2016-05-08 09:22:38 +02:00
Chris Robinson
8334189d66
Merge remote-tracking branch 'zdoom/master'
2016-05-05 12:55:16 -07:00
Christoph Oelckers
f4e4221da7
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-05 21:51:54 +02:00
Chris Robinson
ba1574e65a
Don't define OpenAL redirect macros with the IDE's parser
...
At least with KDevelop4, macros like this interefere with contextual info by
causing it to show information about the macro itself (where it's defined and
what it defines to), rather than the function (parameters, comments, etc). It
also gets in the way of auto-completion.
2016-05-05 21:00:30 +02:00
Chris Robinson
fa46965a71
Check for OpenAL device errors after pausing/resuming the device
2016-05-05 21:00:30 +02:00
Chris Robinson
0b7b78c5d2
Better handle channel configs when monoizing in LoadSound
2016-05-05 21:00:29 +02:00
Chris Robinson
e298f8389b
Avoid divide-by-0 when the area sound radius is less than the max distance
2016-05-05 21:00:29 +02:00
Chris Robinson
66c61a7c8b
Set the appropriate start offset for non-3D sounds too
2016-05-05 21:00:28 +02:00
Chris Robinson
26a8a8a1ba
Pause OpenAL processing using ALC_SOFT_pause_device when inactive
2016-05-05 21:00:28 +02:00
Chris Robinson
e1c8890c5e
Set the appropriate start offset for restarted sounds
2016-05-05 21:00:27 +02:00
Chris Robinson
c3cef91a4f
Properly sum the channels being downmixed to mono
2016-05-05 21:00:27 +02:00
Chris Robinson
12c9281a7e
Avoid redundantly setting DistanceScale
2016-05-05 21:00:26 +02:00
Chris Robinson
bf5ac9b476
Use AL_EXT_SOURCE_RADIUS for area sounds
2016-05-05 21:00:26 +02:00
Chris Robinson
55294c5806
Use the correct OpenAL lib name on Linux
2016-05-05 21:00:25 +02:00
Edoardo Prezioso
52995f8fc2
- Fixed missing sector light clamp in DFlicker.
...
For some reason, this code didn't care about the sector light limits. Found by code inspection.
2016-05-05 21:00:08 +02:00
Christoph Oelckers
c193bb7799
- removed the special case 0 in A_SpawnItem, meaning 'in front of the player'.
...
As it turned out this has been broken for many, many years, so one can assume that most content using this function depends on this special case not working. I could track it down to at least 2008.
2016-05-05 20:12:26 +02:00
Christoph Oelckers
d61ec05c0f
- draw texture based dynamic lights on walls.
2016-05-05 12:18:09 +02:00
Christoph Oelckers
2b92048a5b
- renamed the texture coord variables in GLWall.
...
It makes no sense having them organized differently in this struct than what the rendering code needs. This saves one redundant copy operation and a function-local static variable.
2016-05-05 11:48:39 +02:00
Christoph Oelckers
51baa7d137
- added code to calculate light texture coordinates on walls.
2016-05-05 11:32:21 +02:00
Christoph Oelckers
0b2821d696
- added dynamic light rendering with textures on flats
2016-05-05 10:28:21 +02:00
Christoph Oelckers
c9d4c68039
- added dynamic light drawer for flats.
2016-05-05 00:24:47 +02:00
Christoph Oelckers
4412f99b38
- added the flat dispatcher for textured lighting.
2016-05-04 23:07:16 +02:00
Christoph Oelckers
ec7b4b1ba4
- initial work on textured dynamic light processing.
2016-05-04 22:14:39 +02:00
Christoph Oelckers
8817f89192
- do not clip the first frame of very slow projectiles.
2016-05-04 20:31:21 +02:00
Christoph Oelckers
7b65e6d424
- use glMapBuffer instead of glMapBufferRange on older hardware.
2016-05-04 19:16:07 +02:00
Christoph Oelckers
317730584f
- GZDoom still needs this.
2016-05-04 14:39:31 +02:00
Christoph Oelckers
bb378f2d94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-04 14:38:57 +02:00
Christoph Oelckers
0b833be06e
- removed accidentally added GZDoom specials.
2016-05-04 14:37:52 +02:00
Christoph Oelckers
bdb7594e60
- fixed: Incomplete model definitions flagged the actor as having a model, which could cause a crash.
2016-05-04 14:25:58 +02:00
Christoph Oelckers
5f095082c0
- fixed: The 2D drawing code incorrectly set the shader override to disable all special effects.
2016-05-04 14:10:06 +02:00
Christoph Oelckers
2c88816577
- fixed parameters for warp type 2.
2016-05-04 13:25:26 +02:00
Christoph Oelckers
54571beaca
- reset the path to "" before a model definition is parsed.
2016-05-04 12:28:35 +02:00
Christoph Oelckers
fd8a59bd24
- fixed: INHERITACTORPITCH was inverted.
...
- changed PITCHFORMOMENTUM to do nothing for very small velocities.
2016-05-04 12:23:40 +02:00
Christoph Oelckers
ab8a647433
- fixed the disabled visibility rules check for dynamic lights by doing the actual check in the light's Tick() method and letting the renderer only use the result.
2016-05-04 11:33:18 +02:00
Christoph Oelckers
0a94371974
- reinstated old code for rendering fog boundaries and mirrot surfaces without shaders.
...
- added code for filling the render list for textured dynamic lights. This is not yet active because no code is present to handle this data.
2016-05-03 23:28:42 +02:00
Christoph Oelckers
4ea3339e40
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-03 19:46:09 +02:00
Christoph Oelckers
be3b126f7b
- fixed: Order of skybox and portal initialization was not well defined. It was always the last item to get initialized that got set. Changed it so that skyboxes cannot override portals at all.
2016-05-03 19:42:53 +02:00
Christoph Oelckers
0f8f08edfd
- fixed: camera facing sprites need to orient themselves toward the actual camera position, not the view actor (which may be invalid or in a completely different part of the map if a portal is being rendered.)
2016-05-03 19:24:28 +02:00
Christoph Oelckers
b6af4677f3
- implemented model precaching.
2016-05-03 18:14:16 +02:00
Christoph Oelckers
534500f36d
- fixed software-based model interpolation.
2016-05-03 16:49:10 +02:00
Christoph Oelckers
f7fda94ec9
- changed model data to store models and textures by index instead of by pointer.
...
The indices are needed for efficient precaching and actual changes to the logic are minor so that this was the best option overall.
2016-05-03 15:45:21 +02:00
Christoph Oelckers
0e14f00b51
- fixed caching of texture sampler state for old hardware.
...
- fixed handling of CLAMP_XY_NOMIP sampler mode. This cannot be lumped together with CLAMP_XY because it has different mipmap requirements.
2016-05-03 13:39:41 +02:00
Christoph Oelckers
4d7be0e20e
- added software interpolation as a fallback for models.
...
This is not tested yet so no guarantees!
2016-05-03 13:10:00 +02:00
Christoph Oelckers
ce714ac519
Merge remote-tracking branch 'remotes/zdoom/master'
2016-05-03 11:29:49 +02:00
Christoph Oelckers
942138b307
- undid some leftover texture state checks from the first attempt to handle this without sampler objects.
...
This code was written under the assumption that the glGenerateMipmap function does not exist. But all supported hardware has this function through the GL_EXT_framebuffer_object extension.
2016-05-03 11:27:52 +02:00
Christoph Oelckers
a576243ff2
- fixed: ThrustThing should add to the velocity, not set it.
2016-05-03 10:26:29 +02:00
Christoph Oelckers
6f2b0a6293
- rewrote texture caching so that not the base texture but the actually used translations for sprites get precached.
2016-05-03 01:00:52 +02:00
Christoph Oelckers
ec037bfd1a
- fixed: The check for one-way portals in the renderer was incomplete.
2016-05-02 19:47:27 +02:00
MajorCooke
16bea6cf1f
- Fixed: Roll must orient the rotation based on pitch, not the other way around.
2016-05-02 10:46:44 -05:00
MajorCooke
9ec3093a34
Fixed some missed cases.
2016-05-02 08:52:44 -05:00
MajorCooke
def785e462
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses its behavior.
2016-05-02 06:32:33 -05:00
MajorCooke
673dab7f23
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses the behavior.
2016-05-02 06:29:19 -05:00
alexey.lysiuk
4c4b97316e
Fixed inconsistent texture wrapping
...
Sampler state needs to be reseted when hardware texture resources are released
2016-05-02 13:02:55 +03:00
alexey.lysiuk
333560086d
Calculate color values for gamma correction directly in shader
...
Gamma table texture is no longer needed
2016-05-02 11:24:42 +03:00
alexey.lysiuk
44b019413c
Implemented gamma correction in OS X native backend using shader effect
2016-05-02 10:04:09 +03:00
MajorCooke
a163220e8c
Removed FlatAngle.
2016-05-01 17:30:30 -05:00
MajorCooke
0bf7c3e362
- Removed FlatAngle. This will come back hopefully in another commit sometime in the future.
2016-05-01 17:19:39 -05:00
Christoph Oelckers
f2f3fa6d09
- parched the texture precaching so that it compiles and works again. The real work will come later.
2016-05-02 00:13:00 +02:00
Randy Heit
4fbe77fb82
Very minor optimization for ACS str(i)cmp
...
- If the two strings compared both point to the same location in memory,
then we know they are the same string without having to bother actually
comparing their contents. Note that the opposite is not neccessarily
true: If they point to two different locations, they could still match a
case-sensitive comparison because there are still two ACS string tables:
the one that belongs to the map's script and the one that belongs to
everything else.
2016-05-01 16:55:28 -05:00