Commit graph

160 commits

Author SHA1 Message Date
Magnus Norddahl
0c9014b984 - move r_utility globals into r_viewpoint and r_viewwindow
- change r_utility functions to only work on FRenderViewpoint and FViewWindow
2017-03-11 23:28:07 +01:00
Christoph Oelckers
bd7476fb8d - untangled r_defs.h from actor.h
Both files can now be included independently without causing problems.
This also required moving some inline functions into separate files and splitting off the GC definitions from dobject.h to ensure that r_defs does not need to pull in any part of the object hierarchy.
2017-03-10 02:22:42 +01:00
Christoph Oelckers
4de0f8b1fa - compile both poly and sw renderer as one unit, because due to the includes this gets really slow otherwise. Lumping these together saves 50 seconds per build on my system with a 3.4 GHz Core i7 and an SSD for storage, so on other systems it may be even more. 2017-03-10 00:43:36 +01:00
Rachael Alexanderson
4d70b01da5 - followed through with GZDoom's SQWORD removals. 2017-03-08 21:35:20 -05:00
Magnus Norddahl
279fa7e886 Non-SSE version of the sky drawers 2017-03-08 23:35:13 +01:00
Rachael Alexanderson
effe8a1e80 Revert "- started adding ARM support. incomplete. won't compile. don't try."
This reverts commit be8abba344.
2017-03-05 13:07:25 -05:00
Rachael Alexanderson
be8abba344 - started adding ARM support. incomplete. won't compile. don't try. 2017-03-04 16:50:42 -05:00
Rachael Alexanderson
e7a1a59053 - Disabled alpha-masking textures for now, since they do not yet work. (needs texman fix) 2017-02-25 16:36:57 -05:00
Rachael Alexanderson
9b40aa9605 - Fixed two typos as identified by dpJudas. 2017-02-25 15:32:50 -05:00
Magnus Norddahl
735157aea4 Bump minimum architecture to SSE 2 on the x86 platform (a Pentium 4 from 2001!) 2017-02-25 01:22:54 +01:00
Magnus Norddahl
e697746e7d Remove the php drawers and their generated output 2017-02-24 16:59:45 +01:00
Magnus Norddahl
51b872b30b Created template version of sprite drawers 2017-02-24 16:52:13 +01:00
Magnus Norddahl
d3812e32f8 Created templated version of wall drawers 2017-02-24 15:31:47 +01:00
Magnus Norddahl
2a7bdaad79 Switched to a template version of the span32 drawers 2017-02-24 13:56:20 +01:00
Magnus Norddahl
616e800635 Don't copy the SpriteDrawerArgs members now that drawer args are grouped by drawer family 2017-02-24 04:32:40 +01:00
Magnus Norddahl
218708571e Don't copy the SkyDrawerArgs members now that drawer args are grouped by drawer family 2017-02-24 04:03:27 +01:00
Magnus Norddahl
f76a039a76 Don't copy the WallDrawerArgs members now that drawer args are grouped by drawer family 2017-02-24 02:37:13 +01:00
Magnus Norddahl
8bd0df1ace Simplify CalcTiltedLighting in hope that this function is what made GCC break 2017-02-23 23:53:38 +01:00
Magnus Norddahl
b4b391c51e Fix palette light artifacts caused by dynamic lights in some rare cases 2017-02-23 23:13:21 +01:00
Magnus Norddahl
4d161fbd42 Add dynamic light to sprites in palette mode 2017-02-23 21:50:16 +01:00
Magnus Norddahl
832790f5ba Fix sprite light bug 2017-02-23 21:08:08 +01:00
Magnus Norddahl
3c3917f1f3 Change dynlight sprite math to not overflow when used with dynamic colormaps 2017-02-23 10:55:44 +01:00
Magnus Norddahl
56045c1293 Remove r_drawers.h and move softpoly drawer related stuff out of the swrenderer 2017-02-23 09:02:13 +01:00
Magnus Norddahl
ad507ca246 Removed drawergen tool and all LLVM dependencies (don't let the door hit you on your way out, llvm!) 2017-02-23 08:28:18 +01:00
Magnus Norddahl
c5683bbde5 Clamp dynlights to 0-1 range on sprites 2017-02-23 07:49:02 +01:00
Magnus Norddahl
ef41e8e54e Add dynamic light to sprites 2017-02-23 06:01:01 +01:00
Magnus Norddahl
c6235fb674 Added light to span drawers 2017-02-23 04:26:37 +01:00
Magnus Norddahl
e9efb64a0b Fix light offset 2017-02-23 03:50:24 +01:00
Magnus Norddahl
01a8df7eb3 Add dynlights to wall drawer 2017-02-22 08:05:23 +01:00
Magnus Norddahl
e73031b3c9 Added sky drawers 2017-02-21 01:25:08 +01:00
Magnus Norddahl
5fa5b062d6 Added php script for the span drawers 2017-02-20 22:49:52 +01:00
Magnus Norddahl
fe854fb71f Fix php drawer blend modes 2017-02-20 07:09:30 +01:00
Magnus Norddahl
ee3bcb6f78 Fix sampling 2017-02-19 03:51:49 +01:00
Magnus Norddahl
dfcfd0462f Hook up sprite php drawers (but disable them for now as they don't fully work yet) 2017-02-19 01:23:16 +01:00
Magnus Norddahl
2bedfca071 Add php script for sprite drawers 2017-02-19 00:49:46 +01:00
Magnus Norddahl
8f06b5f9a1 Updated wall drawers to process two lines at a time 2017-02-18 09:17:47 +01:00
Magnus Norddahl
097dda38a9 Hook up all php generated wall drawers and enable them per default 2017-02-18 05:34:26 +01:00
Magnus Norddahl
89a2e434d4 Fix typo where __m128 should have been __m128i 2017-02-17 23:03:48 +01:00
Magnus Norddahl
4240a15f3a Hook up php generated wall drawer 2017-02-17 22:58:55 +01:00
Magnus Norddahl
e42f914efa Added php script generating the 32 bit wall drawers 2017-02-17 05:34:33 +01:00
Magnus Norddahl
fc97ef0913 Fix palette fog boundary rendering error 2017-02-15 13:01:00 +01:00
Magnus Norddahl
5bae06a3c6 Make RenderScene the work dispatching class 2017-02-04 14:00:21 +01:00
Magnus Norddahl
5105a5d254 Fix msvc compile error 2017-02-04 13:43:39 +01:00
Magnus Norddahl
6f5e720576 Split drawer command queue from drawer threads 2017-02-04 12:38:05 +01:00
Magnus Norddahl
e90b73539e Move viewport drawing to its own folder 2017-02-02 15:10:06 +01:00
Magnus Norddahl
d8c6f9acfd Limit access to sprite drawer variables 2017-02-02 13:51:41 +01:00
Magnus Norddahl
f3d968cf41 Move wall drawer args into functions 2017-02-02 11:16:18 +01:00
Magnus Norddahl
d91e6ccece Remove dc_destorg and ylookup 2017-02-01 22:24:34 +01:00
Magnus Norddahl
7b578bbb53 Remove redundant dc_pitch 2017-02-01 21:52:29 +01:00
Magnus Norddahl
93166fa150 Remove r_swtruecolor variable as it is redundant 2017-02-01 21:42:08 +01:00
Magnus Norddahl
e78e76a593 Move r_viewport variables into a class 2017-02-01 16:02:21 +01:00
Magnus Norddahl
4fdacfe96e Fix crash in palette mode 2017-01-31 13:26:06 +01:00
Magnus Norddahl
eadeccd709 Fix typo 2017-01-30 20:23:50 +01:00
Magnus Norddahl
0c61b56655 Clean up SkyDrawerArgs interface 2017-01-30 20:21:18 +01:00
Magnus Norddahl
98fa2976fa Clean up the SpanDrawerArgs interface a bit 2017-01-30 12:46:17 +01:00
Magnus Norddahl
c574b0ad3f Remove R_InitColumnDrawers and only allow DrawerArgs classes to call drawers 2017-01-30 11:53:11 +01:00
Magnus Norddahl
c486892c4a Make colfunc, wallfunc, spanfunc private and remove the rest 2017-01-30 11:43:15 +01:00
Magnus Norddahl
2f365e7d2b Rename ColumnDrawerArgs to SpriteDrawerArgs 2017-01-30 11:27:58 +01:00
Magnus Norddahl
e17c8c1678 Split wall drawer selection from sprite 2017-01-30 11:25:25 +01:00
Magnus Norddahl
36a23d60b8 Make spanfunc private and local to SpanDrawerArgs 2017-01-30 05:26:57 +01:00
Magnus Norddahl
81a20213a7 Force colormap/light selection to go through function calls 2017-01-30 05:07:07 +01:00
Magnus Norddahl
fd459b1f13 Remove redundant span drawer args 2017-01-30 04:35:28 +01:00
Magnus Norddahl
162f469630 Remove unused variables from the old 4 column drawers 2017-01-29 10:25:32 +01:00
Magnus Norddahl
7c7d6e99e9 Split DrawerArgs into WallDrawerArgs, ColumnDrawerArgs, SpanDrawerArgs and SkyDrawerArgs 2017-01-29 10:05:37 +01:00
Magnus Norddahl
92bd752935 Move drawerargs globals into a class and make them local 2017-01-29 07:49:04 +01:00
Magnus Norddahl
4afac0f2cc Force all drawing to go through DrawerStyle 2017-01-28 16:36:39 +01:00
Magnus Norddahl
8fceb60532 Removed unused variable 2017-01-28 08:40:31 +01:00
Magnus Norddahl
bd35d1d39f Remove ds_fcolormap 2017-01-28 08:19:21 +01:00
Magnus Norddahl
dbf9cd5de5 Remove a few more drawerargs 2017-01-28 08:17:31 +01:00
Magnus Norddahl
9eebe3e940 Remove unused drawer args 2017-01-28 08:04:11 +01:00
Magnus Norddahl
5f38b15635 Move colfunc family of globals into a DrawerStyle class and localize its usage 2017-01-28 07:08:59 +01:00
Magnus Norddahl
ed05a2edd3 Create CameraLight class 2017-01-26 10:22:54 +01:00
Magnus Norddahl
ba6094be2e Detach player sprites from VisibleSprite 2017-01-24 04:15:54 +01:00
Magnus Norddahl
111b5c5469 Add support for repeating skies in the TC sky drawer 2017-01-19 00:12:54 +01:00
Magnus Norddahl
8788a9e788 - Change all sky drawing code use to use the sky drawers
- Add support for drawing repeating skies in the sky drawers
- Add the old 4 column sky fade optimization to the 1 column variant (fixes speed regression when 4col was removed)
- Remove skyplane globals
- Remove walldraw code used to draw the old skies
2017-01-19 00:02:51 +01:00
Magnus Norddahl
55131a7a6d Rename vissprite_t to VisibleSprite, convert it into a base class and lower all variables if possible. Remove unused fields and unions. 2017-01-16 05:26:22 +01:00
Magnus Norddahl
ca046d26c5 Make particle texture slightly higher quality 2017-01-13 16:12:43 +01:00
Magnus Norddahl
edd9b6c69c Change the shape of the particle texture 2017-01-13 15:43:06 +01:00
Magnus Norddahl
e1506df8a6 Change globvis to be picked up from the r_light values in softpoly 2017-01-13 15:22:22 +01:00
Magnus Norddahl
9723078121 Removed dc_texturemid 2017-01-12 22:52:17 +01:00
Magnus Norddahl
bd8d2f501f Remove dc_light_list 2017-01-12 22:11:25 +01:00
Magnus Norddahl
9e940b4287 Remove basecolormap global 2017-01-12 21:29:19 +01:00
Magnus Norddahl
80e1844d6c Split r_main into r_viewport, r_scene and r_light 2017-01-12 16:21:46 +01:00
Magnus Norddahl
dce3a1c81c Move remaining parts of r_things into r_visiblesprite 2017-01-11 15:41:42 +01:00
Magnus Norddahl
4be291fb61 Fix divide by zero (issue 0000022) 2017-01-10 18:25:06 +01:00
Magnus Norddahl
ece8e95853 Revert range adjustment (can't make out if this is wrong or not - if it is, it is wrong across the entire function) 2017-01-10 15:16:55 +01:00
Magnus Norddahl
751bd120ac Fix warning about potential uninitialized lightfiller reported by gcc 2017-01-10 15:14:55 +01:00
Magnus Norddahl
8fc6660a4a Disable SSE stuff 2017-01-10 13:45:14 +01:00
Magnus Norddahl
c4573fa343 Disable SSE on arm 2017-01-10 13:39:57 +01:00
Magnus Norddahl
579199a246 Move R_DrawVisSprite to r_sprite and move R_DrawMaskedColumn to r_draw 2017-01-09 13:53:02 +01:00
Magnus Norddahl
3b7bc2d1e5 Add NO_DRAWERGEN define 2017-01-08 04:54:11 +01:00
Magnus Norddahl
dba81db198 Move material multiplication out of inner light loop 2017-01-03 21:16:21 +01:00
Magnus Norddahl
4125da9fc3 Fix speed regression caused by the DrawerThread object being recreated every frame 2017-01-03 04:29:06 +01:00
Magnus Norddahl
c61e9c7fe2 Add attenuated point lights 2017-01-02 06:52:50 +01:00
Magnus Norddahl
3967156d62 Moved remaining parts of r_plane to r_visibleplane 2016-12-31 14:45:41 +01:00
Magnus Norddahl
99e263e1b3 Decal rendering to r_decal 2016-12-30 08:31:02 +01:00
Magnus Norddahl
b2a0f02f68 Remove unused prototype 2016-12-28 02:21:32 +01:00
Magnus Norddahl
db53d9c706 Remove r_local header 2016-12-28 01:56:37 +01:00
Magnus Norddahl
259d724106 Move R_GetColumn to walldraw and create header file 2016-12-28 01:35:22 +01:00
Magnus Norddahl
f8010854c3 Move colfunc and friends to r_draw and change them to member function pointers 2016-12-27 23:53:47 +01:00