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