Rachael Alexanderson
cab1b60ffc
- Some cleanups for c_cmds.cpp, exported some functions as well as functions used for "print/targetinv" to their own file.
2016-12-29 01:30:54 +01:00
Magnus Norddahl
1b284ecf3b
Create files for clip, draw and portal segments
2016-12-28 07:04:13 +01:00
Magnus Norddahl
2659090e1c
Move renders into folders
2016-12-27 06:31:55 +01:00
Magnus Norddahl
66b9e2208d
Draw a rect where the voxels would be
2016-12-25 11:07:50 +01:00
Magnus Norddahl
ced7bdf94a
Remove rt drawer family and the infrastructure supporting it
2016-12-25 05:46:16 +01:00
Christoph Oelckers
a825d1d92f
Merge branch 'ssao' of https://github.com/dpjudas/dpDoom
2016-12-22 12:40:57 +01:00
Magnus Norddahl
012565228d
Merge remote-tracking branch 'zdoom/master' into qzdoom
...
# Conflicts:
# src/r_plane.cpp
# src/r_segs.cpp
2016-12-10 00:08:56 +01:00
Rachael Alexanderson
d1379e26f5
Revert "- moved wallscan code into its own file so that it can get an appropriate copyright notice and does not inflate an already large source file even more."
...
This reverts commit 15cf9d36a9
.
2016-12-09 09:14:01 -05:00
Christoph Oelckers
56f37185b2
- let's be a bit clearer and not name non-Build stuff with Build terms.
...
(cherry picked from commit f3389ff5b7
)
2016-12-09 08:42:35 -05:00
Christoph Oelckers
15cf9d36a9
- moved wallscan code into its own file so that it can get an appropriate copyright notice and does not inflate an already large source file even more.
...
(cherry picked from commit 34d551fe1f
)
# Conflicts:
# src/r_segs.cpp
2016-12-09 08:39:58 -05:00
Christoph Oelckers
b709db3fd3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-09 13:32:05 +01:00
Christoph Oelckers
f3389ff5b7
- let's be a bit clearer and not name non-Build stuff with Build terms.
2016-12-09 12:21:27 +01:00
Christoph Oelckers
34d551fe1f
- moved wallscan code into its own file so that it can get an appropriate copyright notice and does not inflate an already large source file even more.
2016-12-09 11:49:18 +01:00
Rachael Alexanderson
c53030d550
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-09 03:00:05 -05:00
Edoardo Prezioso
67b2e2f52e
- Remove valgrind code, now that the assembly stuff is gone.
2016-12-08 22:44:23 +01:00
Christoph Oelckers
f547daccc8
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
2016-12-07 22:51:05 +01:00
Magnus Norddahl
9ed02a6aec
Merge remote-tracking branch 'zdoom/master' into qzdoom
...
# Conflicts:
# src/CMakeLists.txt
# src/doomtype.h
# src/r_drawt.cpp
2016-12-07 18:35:27 +01:00
Magnus Norddahl
beb70d7dfa
Merge remote-tracking branch 'origin/zdoom_multithreaded' into qzdoom
...
# Conflicts:
# src/CMakeLists.txt
# src/r_3dfloors.cpp
# src/r_bsp.cpp
# src/r_bsp.h
# src/r_draw.h
# src/r_main.cpp
# src/r_main.h
# src/r_plane.cpp
# src/r_plane.h
# src/r_segs.cpp
# src/r_segs.h
# src/r_swrenderer.cpp
# src/r_things.cpp
# src/r_things.h
# src/r_thread.cpp
# src/r_thread.h
# src/v_draw.cpp
# src/win32/fb_d3d9.cpp
2016-12-07 18:22:02 +01:00
Christoph Oelckers
42346c58d3
- disabled assembly entirely to make the MT drawer submission compile.
...
This still requires a review of the two non-drawer functions that get 'lost'.
2016-12-07 12:31:43 +01:00
Magnus Norddahl
3ff91807b8
Move swrenderer into a namespace, add multithreading framework, and move drawers to commands
2016-12-07 09:34:49 +01:00
Rachael Alexanderson
a78b713f4b
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/v_video.cpp
2016-12-06 18:19:08 -05:00
Magnus Norddahl
dfbd7fd2ad
Add drawer commands for pal mode
2016-12-05 10:44:24 +01:00
Magnus Norddahl
8a12d040de
Merge remote-tracking branch 'zdoom/master' into qzdoom
...
# Conflicts:
# src/r_draw.cpp
# src/r_draw.h
2016-12-05 08:22:04 +01:00
Magnus Norddahl
e09c7d239f
Adjust class naming to closer match the GZDoom renderer and split portal rendering part to its own file
2016-12-03 14:58:56 +01:00
Christoph Oelckers
c927aca2a0
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# wadsrc/static/zscript.txt
2016-11-30 18:46:23 +01:00
Christoph Oelckers
b0f3121bec
- split up zscript/shared/inventory.txt.
...
- moved health items to their own file.
- scriptified ScoreItem and MapRevealer whose entire functionality was a small TryPickup method.
- fixed: bit fields in global variables were not correctly written.
This should conclude the inventory cleanup. It is now possible again to find things in there.
2016-11-30 13:36:13 +01:00
Christoph Oelckers
229c55ce61
- moved ammo to its own file, including the backpack.
...
- moved weapon declarations to their own header.
2016-11-30 12:24:50 +01:00
Christoph Oelckers
014e04ce82
- copied inventory files to their own folder.
...
It's about time this stuff is getting cleaned up seriously. Both a_pickups.cpp and a_artifacts.cpp are so overstuffed that it has become a chore finding stuff in there.
2016-11-30 10:28:02 +01:00
Christoph Oelckers
9193466572
- scriptified ASecurityCamera and AAimingCamera.
...
This concludes this round of script converesions of internal classes.
2016-11-29 20:16:14 +01:00
Christoph Oelckers
a13e23dbe6
- scriptified some trivial stuff from g_shared.
2016-11-29 19:50:34 +01:00
Edoardo Prezioso
7474be6284
- Fixed GCC/Clang compiler errors and warnings.
2016-11-29 19:46:38 +01:00
Christoph Oelckers
0c969746d0
- scriptified Hexen's spike, which was the last remaining item in the game directories.
...
- added a BlockThingsIterator for scripts.
2016-11-29 18:42:48 +01:00
Christoph Oelckers
f17f6c30c2
- scriptified the Heresiarch.
2016-11-29 17:17:10 +01:00
Christoph Oelckers
e01f680b72
- scriptified the Mauler, completing Strife.
2016-11-29 14:32:49 +01:00
Christoph Oelckers
3af9232fca
- scriptified a_strifeitems.cpp and a_debris.cpp.
...
- Changed the glass shards so that they do not have to override FloorBounceMissile. It was the only place where this was virtually overridden and provided little usefulness.
- made 'out' variables work.
- fixed virtual call handling for HandlePickup.
2016-11-29 12:17:05 +01:00
Rachael Alexanderson
17c4c4a384
- Fixed: Linker now searches for r_drawerasm.obj in the proper place. This probably broke on Mac and Linux. :(
2016-11-28 20:29:57 -05:00
Rachael Alexanderson
37078f7fef
- Fixed: CMake now asks DrawerGen to drop its output into the build folder instead of the source folder. Fixes a linker error.
2016-11-28 19:48:44 -05:00
Christoph Oelckers
caef5344b0
- scriptified a_thingstoblowup.cpp.
...
- changed the power crystal floor movement to use DFloor instead of an incomplete in-place hack to ensure that everything is processed properly.
2016-11-28 21:33:14 +01:00
Christoph Oelckers
dd5494d848
- scriptified Stalker and Sentinel.
2016-11-28 19:56:16 +01:00
Christoph Oelckers
360cbfba2a
- scriptified Oracle, Programmer and Rebels.
2016-11-28 19:42:26 +01:00
Christoph Oelckers
119bcb924d
- scriptified the Loremaster.
2016-11-28 18:59:57 +01:00
Christoph Oelckers
bf1c2a7e51
- scriptified the Inquisitor.
2016-11-28 18:49:25 +01:00
Christoph Oelckers
b8cf377d9e
- scriptified the Crusader.
2016-11-28 18:36:13 +01:00
Magnus Norddahl
e9e7839133
Create drawergen tool
2016-11-28 17:31:56 +01:00
Christoph Oelckers
53318f4bde
- scriptified Reaver and Templar.
2016-11-28 15:51:07 +01:00
Christoph Oelckers
c9a4087c18
- scriptified a_entityboss.cpp.
2016-11-28 13:11:27 +01:00
Christoph Oelckers
dc9ee0727a
- scriptified a_spectral.cpp.
...
- consolidated A_Tracer and A_Tracer2.
Note that this commit temporarily disables a few features in order to make it compile.
2016-11-28 12:55:33 +01:00
Christoph Oelckers
b171d6e21f
- scriptified a_alienspectres.cpp.
2016-11-28 11:52:03 +01:00
Christoph Oelckers
7ea9f60464
- scriptified the Acolyte.
2016-11-28 10:41:36 +01:00
Christoph Oelckers
d4427e696d
- scriptified Hexen's Banishment Device.
2016-11-28 01:30:36 +01:00
Christoph Oelckers
ebd2c27e0a
- scriptified Hexen's Bloodscourge and Serpent.
...
- merged the FrontBlock searcher for the Bloodscourge into RoughMonsterSearch. This also fixes the bug that the searcher was not initialized properly for the MageBoss.
2016-11-28 00:49:10 +01:00
Christoph Oelckers
f9a1388066
- scriptified Hexen's lightning weapon.
2016-11-27 22:14:18 +01:00
Christoph Oelckers
5ce5466e18
- scriptified hexenspecialdecs.
...
- made '->' a single token. Although ZScript does not use it, the parser tends to get confused and fatally chokes on leftover arrows so this ensures more robust error handling.
2016-11-27 20:14:43 +01:00
Christoph Oelckers
b0ddba2240
Merge branch 'master' of c:\Programming\Doom-Dev\zdoom_\ into zscript
2016-11-27 16:31:26 +01:00
Christoph Oelckers
096c51d546
- changed AInventory::HandlePickup to work iteratively instead of recursively.
...
Two reasons for this:
1. if this has to be routed through the VM each recursion will cost 1000 bytes of stack space which simply is not good.
2. having the virtual function only care about the item itself but not the entire inventory chain is a lot less error prone for scripting.
Since the scripting interface needs a separate caller function anyway this seemed like a good time to change it. The same will be done for the other chained inventory handlers as well.
2016-11-27 16:24:31 +01:00
Magnus Norddahl
057060022a
Merge remote-tracking branch 'gzdoom/master' into ssao
2016-11-27 09:59:57 +01:00
Christoph Oelckers
ab03b016e9
- scriptified the IceGuy.
2016-11-27 00:41:06 +01:00
Christoph Oelckers
796c262285
- scriptified the Quietus.
2016-11-26 23:05:16 +01:00
Christoph Oelckers
80f233cd0b
- scriptified the fighter's fist.
2016-11-26 22:25:49 +01:00
Christoph Oelckers
178db4bb09
- scriptified the fighter's hammer.
2016-11-26 21:39:20 +01:00
Christoph Oelckers
bdad526f62
- scriptified the Fighter's axe.
2016-11-26 21:03:00 +01:00
Christoph Oelckers
997e4a2ac4
- scriptified the remaining Cleric weapons.
2016-11-26 19:23:22 +01:00
Christoph Oelckers
659a592f16
- scriptified Korax.
2016-11-26 16:25:10 +01:00
Christoph Oelckers
4fcb397346
- scriptified the remaining parts of the Wraithverge.
2016-11-26 14:06:41 +01:00
Christoph Oelckers
bc1e4eff72
- scriptified the Cleric's flame weapon. Also fixed the angle calculations for the circle flame.
2016-11-26 10:30:41 +01:00
Christoph Oelckers
f508a57bb8
- scriptified ArtiBoostArmor.
2016-11-26 10:08:25 +01:00
Christoph Oelckers
4e802652c7
- scriptified ArtiBlastRadius.
2016-11-26 09:51:14 +01:00
Christoph Oelckers
7385cd70c0
- scriptified the Minotaur.
...
Interesting tidbit: The damage calculation in P_MinotaurSlam had been incorrect for the Heretic version since the friendly Hexen Dark Servant was added, but nobody ever noticed in 14 years...
2016-11-26 01:14:47 +01:00
Christoph Oelckers
6e1c6c4b33
- scriptified ArtiTeleport.
...
- shortened ArtiEgg and ArtiPork's use state to a single function.
2016-11-25 19:52:35 +01:00
Christoph Oelckers
0d6f37835f
- completed Heretic scriptification with the two remaining artifacts.
2016-11-25 18:41:00 +01:00
Christoph Oelckers
4f370ba181
- scriptified the Phoenix Rod, completing the Heretic weapons.
2016-11-25 18:13:08 +01:00
Christoph Oelckers
aa4b3bb230
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-24 09:58:29 +01:00
Rachael Alexanderson
2de7f67b7f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-24 01:31:18 -05:00
Braden Obrzut
dc11b63157
- Fixed building with vanilla MinGW, at least with whatever modified header files that my system has from my last experimentation.
2016-11-24 00:47:53 -05:00
Magnus Norddahl
47aaf781c6
Split RenderPolyScene into two to allow rendering from multiple viewpoints
2016-11-24 05:51:37 +01:00
Christoph Oelckers
3e890d182b
- scriptified D'Sparil.
...
- added retrieval of defaults from an actor pointer.
2016-11-24 01:23:35 +01:00
Christoph Oelckers
5e67cf79d3
- scriptified the Ironlich.
2016-11-23 21:26:59 +01:00
Christoph Oelckers
1a20a5b999
- scriptified A_PainShootSkull which was the last remaining bit in g_doom, so this directory is gone now.
2016-11-23 19:47:09 +01:00
Christoph Oelckers
d1f5d916c2
Merge branch 'master' into zscript
2016-11-23 14:39:14 +01:00
Rachael Alexanderson
78db0a0d06
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-23 01:43:12 -05:00
Braden Obrzut
789315bb4a
- Fixed build with MinGW-w64 (TDM-GCC 5.1). Note that the resulting binary will crash under -O3 until the alignment violation is taken care of in FRemapTable::Alloc.
...
- It appears that CMake added native support for building rc files with MinGW at some point so removed manual rc compiling code.
2016-11-22 22:41:32 -05:00
Christoph Oelckers
bbb0778fd4
- scriptified Chicken and Pig - not tested yet, because other things have priority.
2016-11-22 12:21:55 +01:00
Christoph Oelckers
360436c201
- scriptified the scripted marines.
...
- fixed symbol name generation for native functions.
- moved PrintableName to VMFunction so that native functions also have this information.
2016-11-21 19:09:58 +01:00
Kyle Evans
3270b20045
Remove non-existant source file
2016-11-20 21:33:23 -06:00
Magnus Norddahl
7ac0cace7d
Stop copying the matrix and remove r_triangle
2016-11-20 02:07:55 +01:00
Magnus Norddahl
b4eb49678a
Cache the optimized bitcode (note: this adds LLVMBitWriter as a dependency)
2016-11-19 17:14:37 +01:00
Christoph Oelckers
7ff5069617
- added all missing things to enable the scriptified version of A_BrainSpit.
...
This uses a global function, this has been placed into DObject for now because the scripting interface does not allow non-class-owned functions yet.
2016-11-18 22:12:53 +01:00
Christoph Oelckers
21a1d5ffc8
- scriptified Hexen's Wraith and parts of the Spike.
2016-11-17 00:44:43 +01:00
Magnus Norddahl
ff2ab61abc
Added decals
2016-11-16 23:34:05 +01:00
Christoph Oelckers
7a29e6cfdc
- scriptified Hexen's fog.
2016-11-16 20:00:25 +01:00
Magnus Norddahl
712e032573
Remove swrenderer2
2016-11-16 19:44:11 +01:00
Christoph Oelckers
633da6e5d8
- scriptified two of the Acolyte's functions.
...
- added a DActorIterator class.
- fixed: It was not possible to have functions of the same name in two different classes because the name they were searched for was not qualified by the class. Changed so that the class name is included now, but to avoid renaming several hundreds of functions all at once, if the search fails, it will repeat with 'Actor' as class name.
This commit contains preparations for scriptifying Hexen's Dragon, but that doesn't work yet so it's not included.
2016-11-16 01:36:21 +01:00
Christoph Oelckers
6e223ebc21
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# src/CMakeLists.txt
# wadsrc/static/actors/doom/doomarmor.txt
# wadsrc/static/decorate.txt
2016-11-15 11:36:59 +01:00
Christoph Oelckers
196986ae6b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-15 11:25:42 +01:00
Christoph Oelckers
85ff172ee3
Merge remote-tracking branch 'remotes/origin/master' into zscript
2016-11-14 15:03:14 +01:00
Magnus Norddahl
3673338644
Split r_poly into multiple files handling each aspect of rendering a scene
2016-11-14 14:19:48 +01:00
Rachael Alexanderson
87e9ba0f05
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-12 22:31:05 -05:00
Braden Obrzut
9342898361
- Added support for GTK3 (thanks to "MineyMe" and edward-san)
...
- Replaced GTK/OS X (note different from Cocoa) clipboard code with SDL clipboard API.
- Removed requirement to link to GTK in order to compile with GTK support.
- GTK is no longer init'd if the GTK IWAD picker is not used.
- Our usage of GTK is such that the dynamic loader can work with both GTK2 and GTK3 depending on what's installed.
- Since we're accumulating a lot of library loaders I've built a generic interface as FModule which replaces TOptWin32Proc and the loaders in the OpenAL and Fluidsynth code.
2016-11-12 18:32:09 -05:00
Christoph Oelckers
49ef541513
- scriptified Hexen's Firedemon.
2016-11-12 19:16:47 +01:00
Christoph Oelckers
213b3f1fe4
- scriptified Hexen's Centaur.
2016-11-12 17:21:11 +01:00
Christoph Oelckers
8f8017836f
- scriptified Hexen's Bishop.
2016-11-12 16:32:26 +01:00
Magnus Norddahl
402227d6b6
Add some intersection tests useful for culling
2016-11-12 14:55:14 +01:00
Christoph Oelckers
fe74a14431
- fixed: A_GiveInventory should not try to give stuff to an owned inventory item, because it doesn't own its Inventory pointer - it is used for the linked list of the owner's inventory.
2016-11-12 14:48:10 +01:00
Magnus Norddahl
c852b6c5e9
Add codegen for one of the triangle variants
2016-11-12 00:50:21 +01:00
Christoph Oelckers
14a9c13113
- scriptified Heretic's wizard.
2016-11-11 23:32:13 +01:00
Christoph Oelckers
a5f9eb5be1
- Scriptified Heretic's knight.
2016-11-11 22:14:29 +01:00
Christoph Oelckers
e0bd6a2c0a
- fixed a memory leak in the compiler.
...
- removed test Printfs.
2016-11-10 13:37:38 +01:00
Christoph Oelckers
5c7affd102
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-08 14:31:10 +01:00
Magnus Norddahl
cb4b74e0c3
Double render speed of triangle drawer in the poly version by removing sprite clip and assigning whole blocks to threads
2016-11-08 14:28:58 +01:00
Christoph Oelckers
cf9cdeb480
- scriptified the Revenant's code.
2016-11-07 23:16:25 +01:00
Magnus Norddahl
237f54f4be
Toying with triangle drawer and GL BSP nodes
2016-11-07 09:25:12 +01:00
Magnus Norddahl
4e717cd9ee
Merge remote-tracking branch 'origin/triangledrawer' into qzdoom
2016-11-07 04:30:28 +01:00
Christoph Oelckers
b206d19df4
- fixed: RegAvailability never set the number of allocated registers to more than 32.
...
- fixed register allocation in ?: operator which was quite broken.
2016-11-07 01:10:56 +01:00
Christoph Oelckers
ca878b5e6b
Merge branch 'master' of https://github.com/rheit/zdoom into zscript
2016-11-05 10:40:02 +01:00
Rachael Alexanderson
2fe5cb4f77
Merge branch 'master' of https://github.com/rheit/zdoom
2016-11-04 23:53:05 -04:00
Braden Obrzut
dd1f72bbf9
- Check the version of FMOD in CMake to produce an error on the condition that OpenAL is also enabled and the FMOD version is low enough to also export Xiph symbols.
2016-11-04 23:27:04 -04:00
Christoph Oelckers
010fd038be
- scriptified A_KeenDie.
...
- added an 'exact' parameter to FThinkerIterator's Next function. This is mainly for scripting which allows to do a lot more checks natively when running the iterator while looking for one specific class.
2016-11-05 01:19:41 +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
Magnus Norddahl
a1ba371eed
Added triangle drawer to the software renderer
2016-10-31 06:09:46 +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
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
7f2350cf64
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-29 16:08:46 +02:00
Christoph Oelckers
e94b4cc74e
Merge branch 'master' into zscript
2016-10-29 11:20:32 +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
d32d52c0b9
- scriptified a_spidermaster.cpp.
...
- fixed bad assert in XOR_RK instruction.
2016-10-26 17:21:25 +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
Christoph Oelckers
6d0dad3b38
- scriptified the code for the Demon and DoomImp.
2016-10-25 14:41:58 +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
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
Magnus Norddahl
be2c50f11c
Merge remote-tracking branch 'gzdoom/master' into ssao
2016-10-21 23:48:30 +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
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
Magnus Norddahl
f8f710d9e2
Fix linker errors on Windows
2016-10-17 01:17:48 +02:00
Magnus Norddahl
dfed525e18
macOS warnings and build fix
2016-10-16 23:18:56 +02:00
Christoph Oelckers
b03489a43c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-16 08:51:13 +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
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
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
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
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
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
Magnus Norddahl
f5c069c759
Merge remote-tracking branch 'origin/gl_swframebuffer' into qzdoom
2016-10-11 14:54:18 +02:00
Magnus Norddahl
3c7d6234cb
Add wipes
2016-10-11 14:37:57 +02:00
Magnus Norddahl
5f0088ab8b
Created new OpenGL framebuffer using the software renderer's hardware acceleration
2016-10-09 12:50:57 +02:00
Magnus Norddahl
584220edf0
Move DrawerCommandQueue to its own file
2016-10-07 04:01:38 +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
9c8f841858
Merge branch 'llvmcompiler' into qzdoom
2016-10-03 23:22:28 +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
Christoph Oelckers
2da18bfa56
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-03 00:56:55 +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
460b653709
Row interlaced 3d might be working, at least in fullscreen 1920x1080 mode.
2016-10-02 16:10:21 -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
Magnus Norddahl
c960742dbd
Fix 64 bit compile errors
2016-10-01 11:47:21 +02:00
Magnus Norddahl
8765cf2016
Change Windows build to use a precompiled version of LLVM
2016-10-01 06:51:55 +02:00
Magnus Norddahl
7be2511269
Add codegen files for walls and columns
2016-09-29 05:21:43 +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
20f67ad40a
Add SSAShort, shift, and, or, and fix unaligned store
2016-09-27 22:53:20 +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
ed07ff1bdd
Merge http://github.com/dpjudas/dpdoom
2016-09-25 02:19:39 -04:00
Magnus Norddahl
9076d46261
Added SSAO pass
2016-09-25 00:19:15 +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
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
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
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
raa-eruanna
2a9e97688d
Merge http://github.com/coelckers/gzdoom
2016-09-22 05:23:02 -04:00
Christopher Bruns
9a257ac158
Implement side-by-side narrow 3D mode.
2016-09-22 09:25:46 +02:00
Christoph Oelckers
f93e4813d1
- removed farchive.cpp and .h
2016-09-22 00:48:22 +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
65c6388d44
Merge branch 'master' into json
2016-09-19 03:54:36 +02:00
Christoph Oelckers
718614a820
- cleanup
2016-09-19 01:07:51 +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
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
raa-eruanna
81545d9b4e
Merge http://github.com/rheit/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-14 02:24:59 -04: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
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
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
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
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
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
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
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
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
Magnus Norddahl
737e700774
Added SSAO pass
2016-08-29 13:10:22 +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
Magnus Norddahl
2cb5f1740e
Add OpenGL debug messages to the console
2016-08-17 20:33:10 +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
Edoardo Prezioso
5a66fdf9be
- Hide Clang -Winconsistent-missing-override warnings in non-Apple targets, too.
2016-08-07 20:55:16 +02:00
Magnus Norddahl
346badf25f
Moved state to FGLPostProcessState and merged vertex shaders
2016-08-06 11:51:08 +02:00
Magnus Norddahl
6b9529d70f
Added lens distortion shader
2016-08-02 17:32:21 +02:00
Magnus Norddahl
9bfce5b6ea
Moved post processing effects to its own file
2016-07-30 00:02:26 +02:00
Magnus Norddahl
0efee85bd8
Added tonemapping and sector based exposure control
2016-07-29 00:36:43 +02:00
Magnus Norddahl
69f52cc898
Added bloom shaders
2016-07-27 21:50:30 +02:00
Magnus Norddahl
aeb7df09de
Added hardware gamma option and improved window handling on Windows
2016-07-27 11:15:19 +02:00
Magnus Norddahl
421cd2f403
Merge remote-tracking branch 'upstream/master' into truecolor
2016-07-17 23:36:35 +02:00
Christoph Oelckers
bce9929c22
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-16 19:57:09 +02:00
alexey.lysiuk
ee72760f3a
libc++ is now used by the linker too (when applicable)
2016-07-16 17:04:38 +02:00
Christoph Oelckers
2a42c20c8c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-07-13 09:30:16 +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
8f38d3af99
Replaced the bicubic interpolation filter with a simple sharpening filter
2016-06-27 10:49:15 +02:00
Magnus Norddahl
3b6d177787
Added bicubic interpolation when generating mipmaps
2016-06-25 12:14:15 +02:00
Magnus Norddahl
9420826094
Merge remote-tracking branch 'upstream/master'
2016-06-10 16:59:20 +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
18ebe92cfc
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/g_level.cpp
2016-06-01 11:45:57 +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
Christoph Oelckers
60a78a0d9b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-28 17:35:52 +02:00
Christoph Oelckers
ef98757c7c
- replaced finesine for texture warping with a smaller custom table, based on the old 2005 FP code, but fixes the generation of the sine table.
...
- removed all remnants of finesine and deleted tables.c and tables.h.
2016-04-28 15:59:37 +02:00
Christoph Oelckers
7e6e2bc0a8
- stated adding GL 2.0 compatibility handling
2016-04-26 18:24:02 +02:00
Christoph Oelckers
a90bef9c68
- 64 bit doesn't require NO_ASM.
2016-04-18 10:38:27 +02:00
Christopher Bruns
09d0cb5fd5
Merge branch 'master' of https://github.com/coelckers/gzdoom into two_more_stereo_modes
...
# Conflicts:
# src/gl/system/gl_framebuffer.cpp
2016-04-11 18:25:54 -04:00
Christoph Oelckers
7ce670951b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
2016-04-11 10:49:11 +02:00
Christoph Oelckers
fe973ba442
- tried to add precompiled headers to fastmath sources as well, but VC++ doesn't seem to want to play along. So I left this stuff in but disabled the precompilation until a solution can be found.
2016-04-10 13:54:42 +02:00
Christoph Oelckers
9cc873ecdd
- enable use of precompiled headers for MSVC. Thanks to a small CMake script I recently found this could be done non-invasively.
...
Due to the VC++ 2015 headers being rather bloated (the average include size per source is 400-500kb) this provides a noticable compile speedup, although right now this only covers the game code, so there should be more room for improvement.
2016-04-10 13:08:54 +02:00
Christopher Bruns
355bc75001
Merge branch 'master' of https://github.com/coelckers/gzdoom into two_more_stereo_modes
2016-04-09 21:46:33 -04:00
Christoph Oelckers
dc753fca6e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-09 23:30:29 +02:00
Christoph Oelckers
dc72e7f3c2
- removed the check for VA_COPY from CMakeLists.txt.
...
This is because nothing uses va_copy anymore and it's a mandatory part of C++11, therefore always available.
2016-04-09 22:07:14 +02:00
Christopher Bruns
c6fa01dfbf
Reimplement blue/yellow and quadbuffered stereo, this time with an additional CVAR gate on quadbuffered, for better hardware compatibility.obj
...
Something is terribly wrong with the separation in all stereo modes now though.
2016-04-09 15:40:55 -04:00
alexey.lysiuk
daa112e2ac
Fixed OS X compilation after floating point merge
...
Header files from Carbon framework caused a few symbol conflicts
2016-04-09 20:54:04 +02:00
Christoph Oelckers
ae14268989
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_utility.cpp
2016-03-29 10:09:03 +02:00
Christoph Oelckers
d87f861e87
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 22:23:41 +02:00
Christoph Oelckers
59920095af
- separated pushers into their own file.
2016-03-28 21:57:22 +02:00
Christoph Oelckers
a46a4c81b1
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_lnspec.cpp
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 17:46:19 +02:00
Christoph Oelckers
b5f333798e
- moved all scroller related code into its own file, including the DScroller class definition.
2016-03-28 17:27:55 +02:00
Christoph Oelckers
48afdd7dcb
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/CMakeLists.txt
# src/actor.h
2016-03-21 01:34:39 +01:00
Christoph Oelckers
904a027bd2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-21 01:31:32 +01:00
Christoph Oelckers
11e613f578
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/g_doom/a_revenant.cpp
2016-03-21 01:28:50 +01:00
Randy Heit
baa6dc0568
Add zcc-parse.c and .h to the ZScript project folder
2016-03-20 15:57:00 -05:00
Randy Heit
2a394d0cb8
Do not copy lemon grammars to the output directory
...
- Having my edits to the grammar disappear because Visual Studio had
opened the copy instead of the original was super annoying. Using the -C
option with Lemon, this problem is avoided because there are no copies
to worry about.
2016-03-20 14:34:44 -05:00
Christoph Oelckers
51b05d331d
- replaced AActor::vel and player_t::Vel with a floating point version.
...
- Converted P_MovePlayer and all associated variables to floating point because this wasn't working well with a mixture between float and fixed.
Like the angle commit this has just been patched up to compile, the bulk of work is yet to be done.
2016-03-20 00:54:18 +01:00
Christoph Oelckers
c64eee5b15
Merge branch 'master' into float
...
# Conflicts:
# src/g_heretic/a_hereticweaps.cpp
# src/p_map.cpp
# src/p_mobj.cpp
# src/p_things.cpp
# src/portal.cpp
2016-03-15 00:16:13 +01:00
Christoph Oelckers
f4f489b33d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-14 22:02:58 +01:00
Braden Obrzut
93be5aca05
- Fixed: Modern versions of GCC on PowerPC inserted padding to the end of pragma packed structures.
...
- Worked aorund modern GCC bug where C++ exceptions in Objective-C++ code would result in an ICE (bug is already on their tracker, but I doubt it will be fixed unless I decide to dig into the issue myself).
- Turn off fused floating point instructions since these can cause slight deviations in floating point code.
- Use -static-libgcc when compiling on the Mac with GCC since we need to use a custom version of GCC to do so now.
- Note: ZDoom will currently still crash on exit on PowerPC since it seems to be deciding that NameManager needs to be destructed before the console commands.
2016-03-13 01:14:08 -05:00
Christoph Oelckers
161d03231a
- added custom math routines for reliability.
2016-03-11 15:45:47 +01:00