Commit Graph

191 Commits

Author SHA1 Message Date
MaxED fe1e040cd1 Added "_falloff" light property. Allows to set light falloff in map units. 2017-08-23 15:00:32 -06:00
Eric Wasylishen c0b88b7e99 light: fixes for degenerate faces 2017-07-05 20:43:47 -06:00
Eric Wasylishen 4dcfc12f50 light: refactor _shadowself handling 2017-06-26 17:42:50 -06:00
Eric Wasylishen 563307445d light: fix logic for switching lightmaps for switchable shadows 2017-06-26 14:20:15 -06:00
Eric Wasylishen b71f769c0a light: experimental support for switchable bmodel shadows:
Current specs/limitations:
- only supported for sunlight and regular lights
- enabled with "_dynamicshadow" "1"
- writes the lightstyle to a "dynshadowstyle" entity key, hardcoded
- only handles one dynamic occluder for a given lightmap sample
- styled lights passing through a dynamic occluder turn non-styled
2017-06-25 20:06:46 -06:00
Eric Wasylishen ce8ad6c384 light: handle iffy faces 2017-06-15 13:43:42 -06:00
Eric Wasylishen 197697ca73 light: fix black rotators 2017-06-05 14:00:50 -06:00
Eric Wasylishen 66bc8209eb light: loosen point off plane assertion 2017-06-05 14:00:16 -06:00
Eric Wasylishen 902c45c946 all: make VectorCompare take an explicit epsilon 2017-04-26 14:20:45 -06:00
Eric Wasylishen 5eb4fd8790 common: make Face_Plane_E return a plane3f 2017-04-24 01:54:25 -06:00
Eric Wasylishen 68b084a6c3 replace glm with qvec 2017-04-24 00:26:49 -06:00
Eric Wasylishen a0a7021707 light: refactor position_t from tuple to class 2017-03-29 16:09:49 -06:00
Eric Wasylishen 10386581a6 light: make bounce of styled lights opt in with "_bouncestyled" worldspawn key 2017-03-27 16:44:04 -06:00
Eric Wasylishen f957cba775 light: experimental bounce version using final gather 2017-03-21 21:01:09 -06:00
Eric Wasylishen 30d9a53341 light: move FractionOfLine to mathlib 2017-03-18 23:26:16 -06:00
Eric Wasylishen 29884e2b4a bsputils: add bounds checking to Face_GetNum 2017-03-18 16:17:01 -06:00
Eric Wasylishen 8a83e3d351 light: BounceLightsForFaceNum(): return indices so we have 1 main copy of the bounce lights 2017-03-15 13:22:43 -06:00
Eric Wasylishen c2c3e915e6 light: fix leak of lightsurf->realfacenums 2017-03-15 13:22:35 -06:00
Eric Wasylishen 18b75ec904 light: rewrite -bouncelightsdebug to handle patches smaller than a face 2017-03-15 10:59:40 -06:00
Eric Wasylishen 154158ddba light: BounceLightsForFaceNum: avoid an unnecessary std::vector copy 2017-03-15 10:59:16 -06:00
Eric Wasylishen 553f02d582 light: restore performance of bounce lighting 2017-03-06 22:50:20 -07:00
Eric Wasylishen 48a6314dfb light: bounce styled lights 2017-03-05 20:05:34 -07:00
Eric Wasylishen 461afbc15d light: remove ltface2.cc/hh 2017-03-01 13:20:09 -07:00
Eric Wasylishen b163f766bb light: drop unneeded light2.cc/hh 2017-02-27 19:10:55 -07:00
Eric Wasylishen 69d5669773 light: delete some dead code 2017-02-27 17:43:56 -07:00
Eric Wasylishen d513f43540 light: remove more tuple initializer lists 2017-02-27 12:40:03 -07:00
Eric Wasylishen 1c80f8c8d8 light: don't use initializer lists to construct tuples (for gcc) 2017-02-27 12:35:05 -07:00
Eric Wasylishen ea382c50f2 light: don't use constexpr (for vs2013) 2017-02-27 12:33:03 -07:00
Eric Wasylishen 97a00f0f41 light: avoid recomputing things in CalcPointNormal 2017-02-26 22:58:08 -07:00
Eric Wasylishen 410bec9d62 light: wip: make CalcPointNormal also position the point 2017-02-26 00:28:23 -07:00
Eric Wasylishen 6c946038ee light: move edgeToFaceMap_t stuff to phong.hh/cc 2017-02-25 14:44:59 -07:00
Eric Wasylishen abf0c13b2d light: cleaning CalcPointNormal 2017-02-25 13:31:56 -07:00
Eric Wasylishen 22b5684c23 light: save the actual face number of each sample point 2017-02-24 21:05:59 -07:00
Eric Wasylishen a183be75d7 light: minor tidying of CalcPoints ifdef 2017-02-24 14:11:47 -07:00
Eric Wasylishen 278c5f5b2b light: LightFace_OccludedDebug: clear occluded flag in this debug mode 2017-02-24 00:24:29 -07:00
Eric Wasylishen 29c7f79a0b light: misc stuff 2017-02-23 20:53:10 -07:00
Eric Wasylishen b31ae5d243 light: ltface.cc: use glm namespace 2017-02-20 14:39:56 -07:00
Eric Wasylishen 6c9f9f9727 light: fix minlight handling 2017-02-20 14:37:46 -07:00
Eric Wasylishen c17c33a71c light: rewrite blur 2017-02-20 14:37:41 -07:00
Eric Wasylishen 7c0e8f9b24 light: fix -extra4 downsampling to use occlusion values 2017-02-20 14:37:36 -07:00
Eric Wasylishen 418d83cbeb light: skip raytracing occluded points 2017-02-20 14:36:50 -07:00
Eric Wasylishen 365c143039 light: use mangle_from_vec in CalcPoints_Debug to dump point normal 2017-02-14 23:52:39 -07:00
Eric Wasylishen 7300aacdff light: Add -debugoccluded 2017-02-11 22:22:26 -07:00
Eric Wasylishen 5fe4f23371 light: add a debug mode for showing contributing faces 2017-02-11 15:45:30 -07:00
Eric Wasylishen 6f72ab5eda light: CalcPoints_Debug: log 'occluded' state 2017-02-10 15:54:35 -07:00
Eric Wasylishen 57d8ed77ea light: CalcPoints: call SetupContributingFaces 2017-02-10 15:52:12 -07:00
Eric Wasylishen 87868275de light: clean CalcPoints 2017-02-10 15:52:12 -07:00
Eric Wasylishen 71a3dd769a light: clean up LightFace() function 2017-02-10 15:52:12 -07:00
seth 10df0bf88e Merge remote-tracking branch 'upstream/master' 2017-02-10 16:53:17 -05:00
Eric Wasylishen bd0556cf22 light: switch to new Face_Centroid 2017-02-09 00:17:22 -07:00
Eric Wasylishen f09cadbc76 light: switch to new world space <-> texture space code 2017-02-08 17:51:22 -07:00
Eric Wasylishen 70644907e0 Revert "light: move Lightmap_Soften into WriteLightmaps"
This reverts commit bc2d734e9a.
2017-02-08 17:10:26 -07:00
Eric Wasylishen b1fdca16c7 light: helpers for gamma correct downscaling (unused) 2017-02-08 16:53:20 -07:00
Eric Wasylishen c441ddb884 light: factor out lightmap resampling 2017-02-08 15:03:24 -07:00
Eric Wasylishen bc2d734e9a light: move Lightmap_Soften into WriteLightmaps 2017-02-08 02:23:21 -07:00
Eric Wasylishen 089819d672 light: tweak .ppm dump code 2017-02-07 20:52:17 -07:00
Eric Wasylishen 4da0a70ab6 light: refactor box filtering code a bit 2017-02-07 20:51:57 -07:00
Eric Wasylishen ea39ce6576 light: move negative value clamping to LightFace_ScaleAndClamp 2017-02-07 20:33:43 -07:00
Eric Wasylishen 613d75ea70 light: debug code for dumping lightmaps to .ppm images 2017-02-07 18:35:29 -07:00
Eric Wasylishen 4582637c78 light: restore Lightmap_ForStyle_ReadOnly 2017-02-07 17:59:16 -07:00
Eric Wasylishen 1211fd86d1 light: move bounce to its own file 2017-02-07 00:51:05 -07:00
Eric Wasylishen c7756496cd light: move phong shading code to its own file 2017-02-07 00:06:29 -07:00
Eric Wasylishen f018b7324d light: refactor phong shading to use GLM 2017-02-06 22:50:56 -07:00
Eric Wasylishen 7fdb77188c light: work-in-progress stuff 2017-02-06 21:57:49 -07:00
seth e68e38a08f Merge remote-tracking branch 'upstream/master'
Fixed conflicts
2017-02-05 14:06:24 -05:00
seth 4a119e2098 Added _bouncescale to light sources 2017-02-05 13:47:47 -05:00
Eric Wasylishen 3ad6aab406 light: refactor WriteLightmaps 2017-02-01 14:38:42 -07:00
Eric Wasylishen 9330d2c087 light: rename Face_MakeInwardFacingEdgePlanes() to Face_AllocInwardFacingEdgePlanes()
do memory allocation inside the function.
2017-02-01 14:38:42 -07:00
Eric Wasylishen 4ec1d92191 light: dirt_off_radius, dirt_on_radius 2017-01-30 16:11:56 -07:00
Eric Wasylishen 4c0194a05f Revert "Revert "light: CalcPoints: also check submodel traces against the world""
This reverts commit c9b9ae568c.
2016-11-20 00:51:20 -07:00
Eric Wasylishen d0d7a424d3 light: change isnan() to std::isnan()
should fix https://github.com/ericwa/tyrutils-ericw/issues/118 (Ubuntu 16.04 build)
2016-11-14 11:38:32 -07:00
Eric Wasylishen c9b9ae568c Revert "light: CalcPoints: also check submodel traces against the world"
This reverts commit 1cca79710c.
2016-11-06 23:43:07 -07:00
Eric Wasylishen 1cca79710c light: CalcPoints: also check submodel traces against the world
fixes https://github.com/ericwa/tyrutils-ericw/issues/115
2016-11-04 02:14:05 -06:00
Eric Wasylishen dfcbfe5be1 light: fix invalid assertion (with glass, final ray color can be darker than initial) 2016-11-04 01:34:36 -06:00
Eric Wasylishen 11304cf059 light: hack around invalid normals in bounce lighting patches.. needs further investigation 2016-11-04 01:26:48 -06:00
Eric Wasylishen 186485ec47 light: revert ee89d41b6d since it's now handled within the trace code 2016-11-03 18:27:40 -06:00
Eric Wasylishen 6bd8864ff4 light: refactor LightFace_Sky 2016-11-03 01:44:17 -06:00
Eric Wasylishen ee89d41b6d light: light passing through glass lights up the back side, scaled by (1-alpha) 2016-11-02 21:35:11 -06:00
Eric Wasylishen e5901dfee6 light: ensure modelinfo settings override .texinfo file if they have been set, for _dirt and _minlight 2016-11-02 18:10:59 -06:00
Eric Wasylishen fbeba25bd1 light: read _mincolor from .texinfo file 2016-11-02 17:23:25 -06:00
Eric Wasylishen a6468984bf all: finish c++ification 2016-10-17 19:52:17 -06:00
Eric Wasylishen 57834c438b light: add "_lightignore" model key 2016-09-20 16:15:12 -06:00
Eric Wasylishen c615839abb light: don't save lightmaps where the maximum brightness is < 1 2016-09-20 00:17:12 -06:00
Eric Wasylishen 46a56df19f light: add -bouncelightsdebug switch to render bounce lights 2016-09-20 00:04:02 -06:00
Eric Wasylishen 1d7fea8486 light: simplify debug mode condition 2016-09-19 22:14:40 -06:00
Eric Wasylishen 9500fd8ebb light: apply minlight after adding bounce lights 2016-09-19 19:47:53 -06:00
Eric Wasylishen fdb5394cc5 light: remove hack requiring a light to add 1 unit of light to a lightmap, as it can cause artifacts, and it's redundant with -gate 2016-09-19 12:34:32 -06:00
Eric Wasylishen 1045505670 light: avoid bouncing negative lights 2016-09-19 12:15:26 -06:00
Eric Wasylishen 18f0b89ee6 light: build fix for MSVC 2016-09-18 15:50:31 -06:00
Eric Wasylishen 0786b513a2 light: fix build of 073ede98c7 2016-09-18 15:46:42 -06:00
Eric Wasylishen 857b4402ad light: change assertions to Q_assert (so they are all enabled in release builds) 2016-09-18 15:41:56 -06:00
Eric Wasylishen 073ede98c7 light: when there are too many lightstyles on a face, sort them by descending average brightness and take the top 4
previous behaviour was random, which made needlessly ugly artifacts.
2016-09-18 15:12:57 -06:00
Eric Wasylishen 8bff999601 light: move lightmaps array to lightsurf_t 2016-09-18 02:22:26 -06:00
Eric Wasylishen 1a74834221 light: never receive dirtmapping on lit liquids 2016-09-16 11:37:04 -06:00
Eric Wasylishen 2bab853ca4 light: don't add styled lights to bounce calculation 2016-09-08 23:53:15 -06:00
Eric Wasylishen ce812f5570 light: apply AO when calculating how much light a surface reflects (wrong? but matches 0.15.5) 2016-09-08 21:07:29 -06:00
Eric Wasylishen 08e1c1ce69 light: apply dirt to regular lights 2016-09-08 17:24:28 -06:00
Eric Wasylishen a0f3881698 light: refactor global settings into a class 2016-08-12 18:49:32 -06:00
Eric Wasylishen e2f407a0e7 light: refactor GetDirectLighting 2016-08-12 12:00:33 -06:00
Eric Wasylishen cc0d1f6b76 light: restore normalmap contribution in LightFace_Entity 2016-08-12 11:55:35 -06:00