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
raa-eruanna
513f8312b3
- Renamed menu option for r_fullbrightignoresectorcolor
2016-10-21 08:36:20 -04: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