Commit graph

10772 commits

Author SHA1 Message Date
Magnus Norddahl
c852b6c5e9 Add codegen for one of the triangle variants 2016-11-12 00:50:21 +01:00
Christoph Oelckers
696af7d7e5 - Moved all virtual function related template code to its own file because it depends on includes that cannot be done in dobject.h. 2016-11-12 00:33:40 +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
924096694e - implemented super calls and proper dispatch of scripted virtual overrides for Destroy. 2016-11-11 21:52:08 +01:00
Magnus Norddahl
667f35bfce Declare structs to LLVM 2016-11-11 20:12:09 +01:00
Christoph Oelckers
72e77a6c65 - implemented handling for virtual function.
Syntax-wise I chose to make it as strict as possible to reduce the chance of errors: Virtual base functions must be declared with the 'virtual' keyword, and overrides in child classes with the 'override' keyword. This way any mismatch in parameters that otherwise would cause silent failure will outright produce a compile error.
2016-11-11 20:05:07 +01:00
Magnus Norddahl
0938420871 Make triangle drawers compatible with LLVMDrawers 2016-11-11 19:54:27 +01:00
Magnus Norddahl
3cc5cec5a0 Hook up subsector gbuffer 2016-11-11 19:26:28 +01:00
Magnus Norddahl
5a9d4ee9d9 Simplify argument passing 2016-11-11 18:24:59 +01:00
Rachael Alexanderson
c6f7848a09 Merge branch 'master' of https://github.com/rheit/zdoom 2016-11-11 11:39:53 -05:00
Leonard2
a1aceaf04f Fixed the remaining errors with GCC 2016-11-11 16:01:09 +01:00
Edoardo Prezioso
8d01ba7733 - Fixed Clang errors with delayed templates on. 2016-11-11 15:22:53 +01:00
Christoph Oelckers
5e8c8b80c9 - removed bogus token paste operator. 2016-11-11 14:51:36 +01:00
Christoph Oelckers
6529931281 fixed and completed the special field init code. Strings can now be used as class members, and so can structs which contain strings.
- made 'DamageMultiply' an actor property and moved the initialization of ConversationRoot to the property handler for the compiler to get this stuff out of the type classes.
- consolidate default initialization into one function which performs all the required setup. The original implementation did this when adding the fields but that cannot work because at that time no defaults have been created yet.
- fixed: When deriving a class the child class's defaults also must initialize the copied parent fields with special initialization. This part was completely missing.
- removed DECORATE code for parsing native classes because it's no longer needed.
2016-11-11 14:40:32 +01:00
nashmuhandes
970c750daa Added OpenGL support to the underwater view blend scalar option. 2016-11-11 18:08:47 +08:00
Magnus Norddahl
6989b7037e Fix stencil write bug 2016-11-11 10:25:40 +01:00
nashmuhandes
fd31c84745 Added a slider to control the intensity of underwater screen blending. 2016-11-11 17:18:39 +08:00
Magnus Norddahl
529a93b680 Sky rendering fixes 2016-11-11 10:15:27 +01:00
Christoph Oelckers
15ddf70f58 - typo 2016-11-11 09:27:52 +01:00
Christoph Oelckers
a60bdc2bfb use a memory arena for allocating code generation nodes.
- Since the number of small allocations here is extremely high this will help a lot to prevent fragmentation and since most nodes are collected up front and this is done when no large resources are being loaded it won't cause heap spikes.

let Emit methods delete FxExpression arrays when they are done.
- For some reason the deletion process does not work 100%, there are always some nodes left behind and so far I haven't found them. This ensures that these arrays do not live any longer than needed.
2016-11-10 15:13:31 +01:00
Magnus Norddahl
373038231c More stencil sky stuff 2016-11-10 13:58:03 +01:00
Christoph Oelckers
e0bd6a2c0a - fixed a memory leak in the compiler.
- removed test Printfs.
2016-11-10 13:37:38 +01:00
Magnus Norddahl
049ceecca5 Toying with stencils 2016-11-10 10:44:35 +01:00
Magnus Norddahl
204d09efde Add a stencil buffer 2016-11-10 08:08:37 +01:00
Magnus Norddahl
b94096ffe1 Crash fixes 2016-11-10 05:30:33 +01:00
Magnus Norddahl
6c52e1e52b Draw sky in a very expensive way 2016-11-10 05:01:33 +01:00
Christoph Oelckers
5151547df0 - fixed: String comparisons with constants did not work. 2016-11-09 20:28:46 +01:00
Leonard2
fb2a843c03 Test on a few methods/classes 2016-11-09 17:45:56 +01:00
Leonard2
26dc0c6df2 TODO: Find a better place to insert the classes in the hierarchy 2016-11-09 17:45:55 +01:00
Leonard2
7dbc4710f1 Add the new argument to all uses of the implement macro 2016-11-09 17:45:55 +01:00
Leonard2
33e2c74642 Provide a way to expose a native class to zscript for virtual functions overriding 2016-11-09 17:45:54 +01:00
Leonard2
ad19e439a6 Implement a general and easy-to-use way of overriding native virtual functions 2016-11-09 17:45:53 +01:00
Leonard2
bb2d61de50 Replaced the many implement macros with a single one that takes arguments instead 2016-11-09 17:45:53 +01:00
Leonard2
0b3585c83f Separate the pointer list from the implement macro 2016-11-09 17:45:52 +01:00
Magnus Norddahl
9820a6cb88 Request GL BSP instead of requiring automap texturing to be on 2016-11-09 12:07:07 +01:00
Magnus Norddahl
dc0e6d40a4 Distance sort sprites 2016-11-09 11:38:07 +01:00
Rachael Alexanderson
83b3169ed5 Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-11-08 19:52:20 -05:00
Magnus Norddahl
cffdfdf7fd Cull bsp using solid segments 2016-11-09 01:33:40 +01:00
Magnus Norddahl
95df9bf48e Fix crash bug in 8 bit drawer 2016-11-09 00:35:41 +01:00
Magnus Norddahl
968150ceff Seems there could be more than 6 vertices 2016-11-09 00:22:05 +01:00
Magnus Norddahl
7d3e8d1414 Fix triangle drawer clipping bug 2016-11-08 23:08:25 +01:00
Christoph Oelckers
701ffb868b - fixed: The first argument of string-based ACS specials was missing a string to name cast. 2016-11-08 22:36:44 +01:00
Rachael Alexanderson
9413ea6edf - Textured automap would crash due to an additional parameter in the software renderer to the FillSimplePoly function call, causing stack issues. 2016-11-08 15:35:51 -05:00
Rachael Alexanderson
d36993a03b - Textured automap would crash due to an additional parameter in the software renderer to the FillSimplePoly function call, causing stack issues. 2016-11-08 15:05:23 -05:00
Magnus Norddahl
6ef8fe2da5 Add diminishing lighting 2016-11-08 18:08:13 +01:00
Rachael Alexanderson
74977486c3 Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-11-08 12:02:04 -05:00
Magnus Norddahl
c1d496c17f A little bit of SSE to speed it slightly more 2016-11-08 17:38:19 +01:00
Magnus Norddahl
466274d7f6 Remove floats from the inner block loop 2016-11-08 16:46:15 +01:00
Magnus Norddahl
28d1cdc1cc Add TriUniforms and move light to it 2016-11-08 16:16:24 +01:00