Commit Graph

209 Commits

Author SHA1 Message Date
Jonathan 1dd4df1b20 calloc/malloc/free -> new/new/delete (except for specific scenarios) 2021-09-14 11:39:12 -04:00
Jonathan 7f8d2cfb49 Fix single line functions 2021-09-14 02:56:44 -04:00
Jonathan 4e7542b111 Clang format pass
typedef -> using
include guards -> pragma once
typedef struct x { } y; -> struct y { }
some fixes to extremely old code that shouldn't be required any more
2021-09-14 02:32:26 -04:00
Jonathan dad0e61f63 Fix for texinfo/miptex searching routines
surf flags now use the "native + extended" format that will eventually be used for brush contents. Q1 output seems identical, haven't tested Q2 yet.
2021-09-05 16:56:29 -04:00
Eric Wasylishen b5fcdec19e cleanup: remove "byte" typedef 2021-02-07 14:02:35 -07:00
Eric Wasylishen 94c30afac4 light: refactoring necessary to support embree3 2021-01-01 23:48:22 -07:00
Eric Wasylishen eb842ba165 light: arghrad compat: preliminary sky_surface implementation 2020-12-29 13:43:06 -07:00
Eric Wasylishen bb4d6fdea9 light: add arghrad compatible sunlight keys sun_light, sun_color, sun_angle 2020-12-29 12:59:44 -07:00
Julian Priestley 1b714108cd
Add ability to set phong in worldspawn #267 (#305) 2020-11-30 00:42:42 -07:00
Eric Wasylishen b35cb8eb7e light: fixes for bjptools skip faces (which have no associated model) 2020-08-20 12:08:46 -06:00
Eric Wasylishen 03ed0697a4 light: add -litonly option for re-lighting a bsp without modifying it 2020-08-03 00:40:13 -06:00
Eric Wasylishen b132152891 light: allow starting assigning switchable styles before default of 32 2019-10-31 00:40:23 -06:00
Eric Wasylishen f220b2f531 light: support "_suntexture" key on "_sun" "1" entities to limit them
to being cast from a specific sky texture.

Fixes #110
2019-10-09 00:47:39 -06:00
Eric Wasylishen d2ecc73db3 light: support "style" / "targetname" on "_sun" "1" entities.
Fixes #253
2019-10-08 23:43:22 -06:00
Eric Wasylishen ba7bdf86a1 light: increase max sky distance to 1M 2019-04-20 12:27:27 -06:00
Eric Wasylishen b343b9504a qbsp, light: support _minlight_exclude on func_group, detail, etc. 2019-04-05 21:14:39 -06:00
MaxED 07447a633e Rewritten parts of surface light logic. Should resemble qrad3 looks a bit more now...
Added "surflightscale", "surflightbouncescale" and "surflightsubdivision" cmdline/worldspawn settings.
Fixed: a face should not be skipped when it has both sky and nodraw texinfo flags.
Fixed some non-windows compilation errors.
2018-05-25 14:59:22 +03:00
MaxED 0661098bc5 Quake 2 support: area lights, palette/texture loading, transparent/sky/fence face flags. 2018-05-08 15:50:01 +03:00
Eric Wasylishen 69879b4104 light: add -highlightseams flag 2017-12-05 15:09:34 -07:00
Eric Wasylishen d9f112a97f light: add -phongdebug_obj flag 2017-11-25 23:12:23 -07:00
Eric Wasylishen 8ce7a682b1 light: add -debugneighbours 2017-11-23 23:45:15 -07:00
Eric Wasylishen 8813d272cb common, light, vis: change from bsp2_t to mbsp_t 2017-10-01 22:32:20 -06:00
MaxED 15871d2531 light: add _spotlightautofalloff 2017-08-27 14:20:03 -06:00
Eric Wasylishen fef1142808 light: add shadowworldonlylist 2017-06-27 13:13:32 -06:00
Eric Wasylishen 78ed70e2a5 light: modelinfo_t: take bsp param 2017-06-27 12:59:17 -06:00
Eric Wasylishen eb7be5cd57 light: add _shadowworldonly key (unimplemented) 2017-06-27 12:57:54 -06:00
Eric Wasylishen 25d6aad5bf light: add _selfshadow as an alias for _shadowself 2017-06-27 12:27:39 -06:00
Eric Wasylishen 6e707130be light: rename dynamic shadow stuff to switchshadstyle" for QC,
and "_switchableshadow" for the mapper.
2017-06-26 13:41:24 -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 fb4e089e81 light: accept "_minlight" in worldspawn as an alias for "light"
docs: note that _minlight_color and _mincolor are supported on
worldspawn
2017-06-24 21:31:08 -06:00
Eric Wasylishen ca58e90e15 common: remove EQUAL_EPSILON from mathlib.hh 2017-04-26 14:25:55 -06:00
Eric Wasylishen 68b084a6c3 replace glm with qvec 2017-04-24 00:26: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 c2c3e915e6 light: fix leak of lightsurf->realfacenums 2017-03-15 13:22:35 -06:00
Eric Wasylishen 686696c362 light: Palette_GetColor: return glm vector 2017-03-12 15:41:52 -06:00
Eric Wasylishen 69d5669773 light: delete some dead code 2017-02-27 17:43:56 -07:00
Eric Wasylishen 6c946038ee light: move edgeToFaceMap_t stuff to phong.hh/cc 2017-02-25 14:44:59 -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 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 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
Eric Wasylishen d30c970d8b light: always call MakeEdgeToFaceMap 2017-02-10 15:52:12 -07:00
Eric Wasylishen 8acbea291c light: remove unused struct 2017-02-09 14:19:08 -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 bc2d734e9a light: move Lightmap_Soften into WriteLightmaps 2017-02-08 02:23:21 -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
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 91fcfe5b9a light: use glass texture colors to tint rays 2016-11-03 02:26:53 -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 ed708f5154 light: allow both _mincolor and _minlight_color on bmodels 2016-11-02 18:05:44 -06:00
Eric Wasylishen 731e46d005 light: fix extended texinfo array type 2016-11-02 17:29:18 -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 46a56df19f light: add -bouncelightsdebug switch to render bounce lights 2016-09-20 00:04:02 -06:00
Eric Wasylishen 722f753d8d light: remove some unused vis-testing stuff 2016-09-19 19:21:04 -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 700e8d089f light: add -verbose option 2016-09-17 23:49:41 -06:00
Eric Wasylishen 18797f81c0 light: fix for -dirt not implying -minlight_dirt, -sunlight_dirt, -sunlight2_dirt 2016-09-08 15:21:18 -06:00
Eric Wasylishen 5e9b62dc8b light: add "testlight" target 2016-08-15 21:18:14 -06:00
Eric Wasylishen d7948c4bdd light: move settings system to its own files 2016-08-12 19:15:25 -06:00
Eric Wasylishen a0f3881698 light: refactor global settings into a class 2016-08-12 18:49:32 -06:00
Eric Wasylishen 28b034a172 light: drop visdata support, no longer needed 2016-08-10 00:49:41 -06:00
Eric Wasylishen 677875a63e light: cull lights based on estimated visible AABB of each light 2016-08-09 18:16:32 -06:00
Eric Wasylishen 1a0fb22e40 light: move some helper functions to common/bsputils.{h,cc} 2016-08-07 22:55:44 -06:00
Eric Wasylishen a807204fe6 build: vs2013 compat changes 2016-08-06 15:37:00 -07:00
Eric Wasylishen 7029ed5713 light: clean headers 2016-08-04 16:32:04 -06:00
Eric Wasylishen fcc54c547f light: change CalcPoints to only trace the model the face belongs to 2016-08-04 12:24:07 -06:00
Eric Wasylishen 2a3b87bf1f light: rework bounce lighting for less memory use 2016-08-03 14:00:58 -06:00
Eric Wasylishen 607706a684 light: fix dangling pointers when a light_t is copied 2016-08-01 21:38:03 -06:00
Eric Wasylishen 03f703d931 light: remove redundant light value from lightsample_t 2016-07-31 11:47:27 -06:00
Eric Wasylishen 882348ac0a light: use embree ray stream api 2016-07-30 00:40:45 -06:00
Eric Wasylishen 225a155efd light: fix unwanted phong on everything 2016-07-29 19:48:28 -06:00
Eric Wasylishen 6bb842cd47 light: refactor tracelist and selfshadowlist to be std::vector 2016-07-29 15:56:48 -06:00
Eric Wasylishen 14f0af42be light: add an assertion for settings system 2016-07-29 15:50:39 -06:00
Eric Wasylishen a0d3a90df9 light: fix uninitialized model offset causing messed up lighting on submodels (!) 2016-07-29 13:34:42 -06:00
Eric Wasylishen f4a363b416 light: make DirtTrace return a hittype_t 2016-07-27 13:07:50 -06:00
Eric Wasylishen 2771041a0a light: lockable_setting_t: fix isLocked() 2016-07-27 12:31:30 -06:00
Eric Wasylishen 5b9405a93e light: move suns to a std::vector 2016-07-27 11:05:54 -06:00
Eric Wasylishen 2651c79307 light: fixes to settings system 2016-07-27 02:20:25 -06:00
Eric Wasylishen a68979a57b light: add -nolights option 2016-07-27 02:00:11 -06:00
Eric Wasylishen cbfe1e8ebf light: simplify settings logic a bit 2016-07-27 01:55:23 -06:00
Eric Wasylishen 6da4ab87ae light: reorganize settings 2016-07-27 00:49:34 -06:00
Eric Wasylishen 7757e834a3 light: clean up dirtmapping logic 2016-07-26 21:08:04 -06:00
Eric Wasylishen da64f27015 light: add lockable_bool_t 2016-07-26 20:50:32 -06:00
Eric Wasylishen dc856a329d light: use settings system for lights 2016-07-24 12:23:46 -06:00
Eric Wasylishen 2c350b1f21 light: finish porting modelinfo reading to settings system 2016-07-24 00:31:58 -06:00
Eric Wasylishen 5566e1f85d light: convert modelinfo_t to use settings system 2016-07-24 00:26:42 -06:00
Eric Wasylishen a5f8af389f light: tweaks to lightsettings_t (unused) 2016-07-24 00:21:59 -06:00
Eric Wasylishen cc2bb5158a light: add class for a dictionary of settings 2016-07-23 22:54:32 -06:00
Eric Wasylishen 2e9c58fb46 light: move command-line parsing to use settings system 2016-07-23 21:43:54 -06:00
Eric Wasylishen df62b9fa16 light: handle worldspawn keys through new settings system 2016-07-23 20:26:09 -06:00
Eric Wasylishen aab9d1dd46 light: Add lightsettings_t class 2016-07-23 16:20:08 -06:00
Eric Wasylishen 8b8cc4a37a light: add transformers for color and mangle 2016-07-22 14:02:43 -06:00
Eric Wasylishen f7d3bfbeb3 Merge branch 'stable' 2016-07-20 19:12:23 -06:00
Eric Wasylishen 19f47e08f9 light: add setStringValue() to settings classes 2016-07-14 14:38:29 -06:00
Eric Wasylishen 9637d410e1 light: add missing include 2016-07-14 00:23:08 -06:00
Eric Wasylishen 60d96df31c light: set min/max values for some settings 2016-07-14 00:02:44 -06:00
Eric Wasylishen 08a6733204 light: refactor settings system 2016-07-13 22:55:55 -06:00
Eric Wasylishen d467888d89 light: register settings in a map 2016-07-13 22:11:21 -06:00
Eric Wasylishen cd013405e7 light: convert more settings to lockable_*_t 2016-07-13 21:51:04 -06:00
Eric Wasylishen 42657f9607 light: record setting names 2016-07-13 21:33:38 -06:00
Eric Wasylishen 7646175048 Merge branch 'stable'
* stable:
  light: trace: raise stack depth 128->256 to handle lavabloom_bad.bsp from Pritchard
  light: use Face_TextureName() everywhere we need texture names. Handle negative miplump->dataofs[texnum].
  build: appveyor: use v140_xp toolset for xp compatibility

# Conflicts:
#	appveyor.yml
2016-07-12 00:25:50 -06:00
Eric Wasylishen e012a2c93e light: finish c++ifying 2016-07-06 13:14:06 -06:00