Commit Graph

308 Commits

Author SHA1 Message Date
helixhorned ce3d64d971 new m32 aiming: changed the way distance is determined, so it also handles parallaxed sectors.
git-svn-id: https://svn.eduke32.com/eduke32@1464 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-20 22:01:44 +00:00
helixhorned 8f0da12b76 new mapster aiming now handles planar sprites
git-svn-id: https://svn.eduke32.com/eduke32@1463 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-18 20:37:20 +00:00
helixhorned c25ee18b98 new mapster mouse aiming: now handles masked walls, fixed searchwall determination when aiming at ceiling/floor
git-svn-id: https://svn.eduke32.com/eduke32@1462 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-17 21:47:04 +00:00
terminx 3504c0bf97 Misc minor changes
git-svn-id: https://svn.eduke32.com/eduke32@1458 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-12 23:41:16 +00:00
terminx 1538f39289 fix building with MSVC after Helixhorned's commit
fix FastLZ mipmap corruption issue
fix Polymer MSVC warnings
rewrote qsprintf to take up to 32 parameters, either quotes or gamevars
added qstrncat to concatenate n characters of one quote to another
exposed internal sectorofwall() function to CON
changed CON parser to count ( ) ; and , as whitespace so people can make their code more readable
added ACTIVATOR and ACTIVATORLOCKED support to SE49 and SE50
added SPRITE_USEACTIVATOR flag to allow actor execution based on whether a sector is "locked" or not
rearranged a few structures for faster array lookups
fixed EVENT_HOLSTER


git-svn-id: https://svn.eduke32.com/eduke32@1457 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-12 01:55:34 +00:00
helixhorned a3c0bee4a3 Improved mouse aiming for Mapster32 (not yet in action)
git-svn-id: https://svn.eduke32.com/eduke32@1456 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-11 22:20:15 +00:00
terminx 3aaab4b63d Remove dead copy protection and watcom support code, fix structure alignment and packing issues preventing Polymer from working with MSVC, enable link time code generation (whole program optimization) for MSVC builds, fix most warnings showing up in MSVC with /w2, add pulsating dynamic lights when holding the shrinker or expander
git-svn-id: https://svn.eduke32.com/eduke32@1454 1a8010ca-5511-0410-912e-c29ae57300e0
2009-07-09 02:29:48 +00:00
plagman 5cdc55591b Adds r_pr_ati_nodepthoffset and the proper detection code to winlayer and sdlayer to make polymer run properly on R520-class Radeon chips. A bug needs to be filed to AMD.
git-svn-id: https://svn.eduke32.com/eduke32@1446 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-28 21:16:11 +00:00
plagman 9556762493 Changes r_pr_atiworkaround to r_pr_ati_fboworkaround and ports the detection code to SDLayer.
git-svn-id: https://svn.eduke32.com/eduke32@1445 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-28 21:03:50 +00:00
plagman fb5811855d Adds cstat 8192 for sprites that do not cast shadows and documents it in build.h.
git-svn-id: https://svn.eduke32.com/eduke32@1433 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-14 13:35:19 +00:00
plagman 0f01a72fae Sanitizes cstat 16384 and documents it in build.h.
git-svn-id: https://svn.eduke32.com/eduke32@1432 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-14 13:02:10 +00:00
terminx 47a9332a16 More memory pool crap, startup window log update fixes, gameland light changes and minor polymer fixes
git-svn-id: https://svn.eduke32.com/eduke32@1430 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-13 21:06:45 +00:00
plagman 8982670fbc Sanitizes prsector and prwall flags, fixes a mempool crash when exiting the game before the engine gets initialized, and adds polymer_texinvalidate() to fix water/nightvision global palette change. SwissCM is still an asshole.
git-svn-id: https://svn.eduke32.com/eduke32@1428 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-09 09:32:23 +00:00
terminx 2f86c2a20f Cleaning out tree... some light changes, polymer memory pools, some meaningless optimizations, etc
git-svn-id: https://svn.eduke32.com/eduke32@1425 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-09 06:19:58 +00:00
terminx 9973478a9d Fix rendmode != 4 SE light crashes
git-svn-id: https://svn.eduke32.com/eduke32@1423 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-08 00:31:53 +00:00
plagman 4e635849e1 Fixes y-flipping on the bottom side of some doors (see E1L3 security doors). Also, fuck you SwissCM.
git-svn-id: https://svn.eduke32.com/eduke32@1422 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-08 00:29:29 +00:00
plagman 4a6bc850c0 Fixes full-screen tinting effects to bypass the material cache and apply instantly.
git-svn-id: https://svn.eduke32.com/eduke32@1421 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 23:35:11 +00:00
plagman 4f18c11c27 Don't loop against MAXLIGHTS when invalidating or removing a light from a plane.
git-svn-id: https://svn.eduke32.com/eduke32@1420 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 21:23:26 +00:00
plagman 6a7fe88d68 This adds a fast light culling test for non-sloped floors and ceilings (TerminX suggested that change).
git-svn-id: https://svn.eduke32.com/eduke32@1419 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 20:27:45 +00:00
plagman e8cbecf935 This adds support for animated, palettized and shaded skies.
git-svn-id: https://svn.eduke32.com/eduke32@1418 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 18:38:13 +00:00
plagman 9cd0c6e6a0 Re-hooks pr_lighting.
git-svn-id: https://svn.eduke32.com/eduke32@1417 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 13:17:55 +00:00
plagman f30fdef695 Don't go through multiple lighting passes when rendering the shadow maps.
git-svn-id: https://svn.eduke32.com/eduke32@1416 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 13:07:04 +00:00
plagman 2482b74012 Formatting fix.
git-svn-id: https://svn.eduke32.com/eduke32@1415 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 12:58:40 +00:00
plagman a8cd07d692 Fixes light culling.
git-svn-id: https://svn.eduke32.com/eduke32@1413 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 12:51:00 +00:00
terminx aca5dc80e3 git-svn-id: https://svn.eduke32.com/eduke32@1412 1a8010ca-5511-0410-912e-c29ae57300e0 2009-06-07 07:36:15 +00:00
terminx 92372d50d6 Misc minor changes
git-svn-id: https://svn.eduke32.com/eduke32@1411 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 06:23:33 +00:00
terminx 6c3ed1ec9c More light crap
git-svn-id: https://svn.eduke32.com/eduke32@1410 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-07 03:13:55 +00:00
terminx 0744452216 More light stuff... most gameland lights should be working again now
git-svn-id: https://svn.eduke32.com/eduke32@1409 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 22:30:53 +00:00
plagman 0688522507 Adds r_pr_shadowfiltering and r_pr_atiworkaround cvars.
git-svn-id: https://svn.eduke32.com/eduke32@1408 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 16:00:48 +00:00
plagman f46e3b44f4 Using memcpy with clearly overlapping blocks is sad.
git-svn-id: https://svn.eduke32.com/eduke32@1407 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 14:22:17 +00:00
plagman 2186154dac Avoid a square root in the point light GPU program by comparing squared lengths. This changes the lighting model a bit since the attenuation calculation is based against these lengths.
git-svn-id: https://svn.eduke32.com/eduke32@1406 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 13:48:52 +00:00
plagman b112e1d3c3 Re-implements the old light priority system, removes applylights() and optimizes the light invalidation code.
git-svn-id: https://svn.eduke32.com/eduke32@1405 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 13:40:15 +00:00
plagman dbb84c7ee8 Reverts the priority change and removes applylights.
git-svn-id: https://svn.eduke32.com/eduke32@1404 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 13:12:29 +00:00
terminx d4bca26bd9 Light stuff
git-svn-id: https://svn.eduke32.com/eduke32@1402 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-06 10:20:00 +00:00
plagman 2547739ff4 This prevents shadows from flooding the OSD and killing performance.
git-svn-id: https://svn.eduke32.com/eduke32@1398 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-01 21:11:26 +00:00
plagman a23c9c23ba This overhauls the light culling/management code. Note: this renders the current gameland dynamic light code useless, to it'll have to be ported before they're back. Please don't complain on the forums.
git-svn-id: https://svn.eduke32.com/eduke32@1397 1a8010ca-5511-0410-912e-c29ae57300e0
2009-06-01 20:55:36 +00:00
plagman 930689d468 More corrupt map checks.
git-svn-id: https://svn.eduke32.com/eduke32@1395 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-31 18:16:14 +00:00
plagman 2997d1e0f5 Light pathing tweak.
git-svn-id: https://svn.eduke32.com/eduke32@1394 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-31 18:10:09 +00:00
terminx 8474211c95 Misc small fixes
git-svn-id: https://svn.eduke32.com/eduke32@1390 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-22 23:49:25 +00:00
plagman 82211327e8 Work around ATI driver bug (that's there since Cat 8.10 according to the intertubes).
git-svn-id: https://svn.eduke32.com/eduke32@1389 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-20 22:30:18 +00:00
plagman 515451e45f Speed up polymer_init a little.
git-svn-id: https://svn.eduke32.com/eduke32@1388 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-17 21:55:50 +00:00
plagman 5eae5cdc50 Moves editorselect and clearmapdata to non-external function categories, makes them static and prototypes them in the header.
git-svn-id: https://svn.eduke32.com/eduke32@1387 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-17 16:12:53 +00:00
terminx 5209d30f13 Missed one
git-svn-id: https://svn.eduke32.com/eduke32@1386 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-16 22:32:23 +00:00
terminx bc4d262216 Fixes most polymer memory leaks
git-svn-id: https://svn.eduke32.com/eduke32@1385 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-16 22:26:40 +00:00
plagman 747a242b80 Unbreak specular maps (were broken because of mirror unbreaking).
git-svn-id: https://svn.eduke32.com/eduke32@1383 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-16 01:33:04 +00:00
plagman b1f358de6f Unbreak mirrors.
git-svn-id: https://svn.eduke32.com/eduke32@1382 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-16 01:28:42 +00:00
plagman 854c72263c More tweaks to the specular lighting model.
git-svn-id: https://svn.eduke32.com/eduke32@1381 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-16 00:50:30 +00:00
plagman 396256b6e0 Tweak the lighting model so that specular highlights ignore the diffuse map value when a specular map is defined.
git-svn-id: https://svn.eduke32.com/eduke32@1380 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-15 14:23:08 +00:00
plagman a5f8978a9f Spotlightmaps.
git-svn-id: https://svn.eduke32.com/eduke32@1377 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-12 20:08:38 +00:00
plagman 1b948be858 Corrects polymost rotation offset scale (didn't match build units before) and a bug in the polymer offset code (bug 2783065).
git-svn-id: https://svn.eduke32.com/eduke32@1376 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-10 19:19:25 +00:00
plagman 77e873b476 Adds pitch/roll script rotation for mdsprites (bug 2783065).
git-svn-id: https://svn.eduke32.com/eduke32@1375 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-10 17:51:00 +00:00
plagman 3cd91a1832 Parallax the parallax skies (bug 2783074).
git-svn-id: https://svn.eduke32.com/eduke32@1374 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-09 11:04:10 +00:00
plagman 72721c1663 Mirror skies (bug 2783066).
git-svn-id: https://svn.eduke32.com/eduke32@1373 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-09 10:42:57 +00:00
plagman 0f95655e27 Fixes floor-aligned sprite and flipping/1-way interaction (bug 2783071).
git-svn-id: https://svn.eduke32.com/eduke32@1371 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-08 19:15:14 +00:00
plagman 3b5cf1310a Fixes floor-aligned sprites being affected by the real center cstat bit (bug #2783389).
git-svn-id: https://svn.eduke32.com/eduke32@1369 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-08 18:04:02 +00:00
terminx f3d93e8406 Undo/redo support for Mapster32 and some other minor changes
git-svn-id: https://svn.eduke32.com/eduke32@1361 1a8010ca-5511-0410-912e-c29ae57300e0
2009-05-05 16:21:33 +00:00
terminx ec0a8f2033 Modified priority system to use 6 priority levels instead of 3, added proper def syntax "specular" and "normal" which work identically to "detail" and "glow" for defining normals and specular maps (defining these with pals 100 and 101 will no longer work)
git-svn-id: https://svn.eduke32.com/eduke32@1350 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-28 22:56:43 +00:00
plagman 5a090e84bc Couple of fixes for corrupt maps.
git-svn-id: https://svn.eduke32.com/eduke32@1347 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-26 17:47:08 +00:00
terminx 26ca7e7fc0 Sprite cstat 16384: invisible w/ shadows
this also adds shadows for the player when in first person


git-svn-id: https://svn.eduke32.com/eduke32@1343 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-24 04:02:39 +00:00
terminx b7b016383f Sector effector based light sources, basic Mapster32 light support, additional sprite/model alpha control, sprite selection in Mapster32 3D mode with Polymer
git-svn-id: https://svn.eduke32.com/eduke32@1341 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-24 02:53:50 +00:00
terminx dbb24affe9 git-svn-id: https://svn.eduke32.com/eduke32@1338 1a8010ca-5511-0410-912e-c29ae57300e0 2009-04-23 09:30:10 +00:00
terminx 3449ba8bef Revision 1337: fixes the crash on exit with polymer on win32
that's pretty l33t, right?


git-svn-id: https://svn.eduke32.com/eduke32@1337 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-23 09:09:41 +00:00
plagman e48c4c2c87 Really fix concave relative slopes.
git-svn-id: https://svn.eduke32.com/eduke32@1335 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-19 18:00:51 +00:00
plagman 9241ab974a Don't step over the bounds of the plane buffer in buffertoplane (now computeplane).
git-svn-id: https://svn.eduke32.com/eduke32@1334 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-19 17:23:07 +00:00
plagman 711db577ab Fixes a texturing bug with a combination of relative texturing and concave sectors.
git-svn-id: https://svn.eduke32.com/eduke32@1333 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-19 17:03:18 +00:00
plagman ed7157f1e5 Reverts part of 1331 and misc. fixes.
git-svn-id: https://svn.eduke32.com/eduke32@1332 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-19 09:49:27 +00:00
terminx 779eda41da git-svn-id: https://svn.eduke32.com/eduke32@1331 1a8010ca-5511-0410-912e-c29ae57300e0 2009-04-17 18:34:55 +00:00
terminx 45897cf581 Fixes a stupid mistake I made and changes mem* calls to Bmem* for consistency with the rest of the codebase
git-svn-id: https://svn.eduke32.com/eduke32@1330 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-16 06:49:29 +00:00
plagman 6dba1ba1ed Few fixes for the visibility checks.
git-svn-id: https://svn.eduke32.com/eduke32@1328 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-16 06:31:19 +00:00
plagman 5b3524d621 Message log cleanup for GPU program compilation and removed a GL error.
git-svn-id: https://svn.eduke32.com/eduke32@1324 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-14 13:58:38 +00:00
plagman 2ac7c2dc1e ATI fixes. (sigh)
git-svn-id: https://svn.eduke32.com/eduke32@1323 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-14 12:37:44 +00:00
plagman b006c85790 Update the TODO list and fix the light leaking fix.
git-svn-id: https://svn.eduke32.com/eduke32@1322 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-14 08:39:13 +00:00
plagman 14108f3be9 Don't parse closed sectors.
git-svn-id: https://svn.eduke32.com/eduke32@1320 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-14 07:38:45 +00:00
plagman dfd2a379b1 Don't propagate light through sealed portals.
git-svn-id: https://svn.eduke32.com/eduke32@1318 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-14 07:01:55 +00:00
terminx 8cd5bb68d0 git-svn-id: https://svn.eduke32.com/eduke32@1317 1a8010ca-5511-0410-912e-c29ae57300e0 2009-04-14 04:20:37 +00:00
plagman f1f13f5eb6 Fix for E3L4 (and possible others) corrupt sectors.
git-svn-id: https://svn.eduke32.com/eduke32@1314 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 22:27:49 +00:00
plagman 6d5571f320 Couple of cleanups.
git-svn-id: https://svn.eduke32.com/eduke32@1313 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 22:23:47 +00:00
terminx ec71eebecb git-svn-id: https://svn.eduke32.com/eduke32@1312 1a8010ca-5511-0410-912e-c29ae57300e0 2009-04-12 21:52:49 +00:00
plagman 39b1908be8 Sanitize wall computation code a bit and fixes a problem with crossing slopes (E1L3 vertical security doors and E2L4 starting door).
git-svn-id: https://svn.eduke32.com/eduke32@1311 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 19:26:02 +00:00
plagman b47ad2bde2 Works around a precision bug that would cause the sloped floor in the E1L1 bathroom vent to have a wrong normal matrix.
git-svn-id: https://svn.eduke32.com/eduke32@1310 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 17:37:35 +00:00
plagman 9152cf3b40 Fix detail mapping on ATI cards.
git-svn-id: https://svn.eduke32.com/eduke32@1309 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 17:29:50 +00:00
plagman 26a9a58af3 Adds a bunch of cvars to tweak polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1307 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 17:14:18 +00:00
plagman 82153bd763 Clean up a bit of dead code.
git-svn-id: https://svn.eduke32.com/eduke32@1306 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 16:39:54 +00:00
plagman b7449a87b9 Light priority system.
git-svn-id: https://svn.eduke32.com/eduke32@1305 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 16:28:20 +00:00
plagman 567c0bdd86 Per-frame lights cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@1304 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 13:51:43 +00:00
plagman 80670cac29 Game-tic lights and recon car headlights.
git-svn-id: https://svn.eduke32.com/eduke32@1303 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 13:02:36 +00:00
plagman 6477b236b2 Minshade and maxshade parameters for dynamic lighthacks.
git-svn-id: https://svn.eduke32.com/eduke32@1302 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 12:32:50 +00:00
plagman 35691be969 Fixes models after modeswitches on Windows and removes warnings.
git-svn-id: https://svn.eduke32.com/eduke32@1301 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 10:46:31 +00:00
plagman b73cc663eb Correctly invalidate the GPU programs and skybox VBO on modeswitches.
git-svn-id: https://svn.eduke32.com/eduke32@1300 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-12 09:57:25 +00:00
plagman 652262626a Polymost-like shading.
git-svn-id: https://svn.eduke32.com/eduke32@1298 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-11 18:01:39 +00:00
plagman 2994614501 Reduce near-clipping range and fixes a bug with one-way walls that are also map limits.
git-svn-id: https://svn.eduke32.com/eduke32@1294 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-02 17:17:24 +00:00
plagman 68cad843f6 Adds pr_maxlightpasses cvar.
git-svn-id: https://svn.eduke32.com/eduke32@1293 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-01 18:52:15 +00:00
plagman 82605aa44c Don't prepare shadows of lights that aren't in view.
git-svn-id: https://svn.eduke32.com/eduke32@1292 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-01 18:34:11 +00:00
plagman 8181b1141d Fixes the bug where the renderer would get in "external view" mode on slopes.
git-svn-id: https://svn.eduke32.com/eduke32@1291 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-01 18:11:01 +00:00
plagman a4c5af4d37 Fixes shadow bug.
git-svn-id: https://svn.eduke32.com/eduke32@1290 1a8010ca-5511-0410-912e-c29ae57300e0
2009-04-01 17:58:22 +00:00
plagman 6209446b1f Lighthacks.
git-svn-id: https://svn.eduke32.com/eduke32@1288 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-31 23:23:06 +00:00
plagman 13033e9c29 Fix mirrors and model animation.
git-svn-id: https://svn.eduke32.com/eduke32@1287 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-29 21:08:52 +00:00
plagman 74a9338243 E1L2 door fix.
git-svn-id: https://svn.eduke32.com/eduke32@1286 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-29 19:31:24 +00:00
plagman 3d6b06e958 pr_specularoverride and less retarded default values for the parallax overrides.
git-svn-id: https://svn.eduke32.com/eduke32@1285 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-29 17:14:41 +00:00
plagman 9b4dae022d 4-step Iterative parallax mapping, parallaxscale and parallaxbias DEF tokens for normal maps, support for floating-point cvars, pr_overrideparallax cvar to fine-tune the scale and bias settings.
git-svn-id: https://svn.eduke32.com/eduke32@1284 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-29 15:16:33 +00:00
plagman 73149ef78b Faster normal mapping.
git-svn-id: https://svn.eduke32.com/eduke32@1283 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 18:25:30 +00:00
plagman 13243ffeae Tie mirror map reflections to specular map texels.
git-svn-id: https://svn.eduke32.com/eduke32@1282 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 16:50:46 +00:00
plagman 33d75c0cc7 Specular maps (pal 101).
git-svn-id: https://svn.eduke32.com/eduke32@1281 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 16:14:10 +00:00
plagman fe8775cb21 Sanitize texture coordinate usage in the GPU program. That allows normal and glow maps to benefit from the diffuse map scale.
git-svn-id: https://svn.eduke32.com/eduke32@1280 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 15:54:25 +00:00
plagman 83fc79300e Adds specpower and specfactor tokens for model skins.
git-svn-id: https://svn.eduke32.com/eduke32@1279 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 15:19:44 +00:00
plagman 50af4984ad Adds specpower and specfactor definition tokens for textures.
git-svn-id: https://svn.eduke32.com/eduke32@1278 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 12:14:37 +00:00
plagman df26ab3c7d Sanitize terminology a bit.
git-svn-id: https://svn.eduke32.com/eduke32@1277 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-28 11:43:16 +00:00
plagman 6e13967287 Hack to avoid horizontal shadow maps.
git-svn-id: https://svn.eduke32.com/eduke32@1274 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-27 13:46:40 +00:00
plagman 0cd0afa945 Cast light on models and self-shadowing.
git-svn-id: https://svn.eduke32.com/eduke32@1273 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-27 12:56:42 +00:00
plagman 1d2a7c2982 Don't mirror stuff when drawing the shadow maps and don't cast shadows on models for now.
git-svn-id: https://svn.eduke32.com/eduke32@1272 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-27 11:39:10 +00:00
plagman 5a843f0fd1 Sprite and model shadows.
Also fixes a bug with shadows and mirrors.

git-svn-id: https://svn.eduke32.com/eduke32@1271 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-27 10:39:18 +00:00
plagman f285ad903c Fix blinkiness.
git-svn-id: https://svn.eduke32.com/eduke32@1270 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-26 17:45:12 +00:00
plagman 88c7967d02 Shadow fix.
git-svn-id: https://svn.eduke32.com/eduke32@1269 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-26 16:41:06 +00:00
plagman ed3198b65f Shadows.
git-svn-id: https://svn.eduke32.com/eduke32@1268 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-26 16:32:00 +00:00
plagman b2e3b85e6d Spotlight frustum caculation and culling.
git-svn-id: https://svn.eduke32.com/eduke32@1267 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-25 21:14:51 +00:00
plagman bd69a9a286 Spotlights.
git-svn-id: https://svn.eduke32.com/eduke32@1266 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-25 19:48:27 +00:00
plagman 53bbdc9cd7 Optimize lighting model a bit.
git-svn-id: https://svn.eduke32.com/eduke32@1265 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-25 13:23:35 +00:00
plagman a4070de923 Corrects E1L7 rotating lava bug and minor indentation quirk.
git-svn-id: https://svn.eduke32.com/eduke32@1264 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-24 16:25:20 +00:00
plagman 6e2bac1c92 Little multi-light optimization.
git-svn-id: https://svn.eduke32.com/eduke32@1263 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-24 10:24:33 +00:00
plagman a11513c907 Fixes a problem where mirrors and masked walls wouldn't display under certain circumstances.
git-svn-id: https://svn.eduke32.com/eduke32@1262 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-24 10:09:53 +00:00
plagman 8a2916c2cc Fixes a texture bug.
git-svn-id: https://svn.eduke32.com/eduke32@1261 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-24 09:37:30 +00:00
plagman b5c4b521f7 Render targets, FBO mirrors with normal displacement, fix for masked walls with animated walls, various cleanups.
git-svn-id: https://svn.eduke32.com/eduke32@1255 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-23 14:18:20 +00:00
plagman 68866d606e Do a depth only pass before actual rendering and only occlusion check for map boundary sectors.
git-svn-id: https://svn.eduke32.com/eduke32@1252 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-18 15:05:58 +00:00
plagman f982323443 Bump mapping (hardcoded to palette 100 for now, will do the defs glue later to make it more convenient to package the source for public releases).
TODO: use the inverse TBN on a world-space light vector instead of transforming every fragment interpolated normal into eye-space with the TBN * the view matrix.

git-svn-id: https://svn.eduke32.com/eduke32@1244 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-13 15:18:46 +00:00
plagman 62d3116325 Reorganize point light GPU program a bit.
git-svn-id: https://svn.eduke32.com/eduke32@1243 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-12 21:20:01 +00:00
plagman 8bdb217ca1 Multi-pass shading and correct a light culling bug.
git-svn-id: https://svn.eduke32.com/eduke32@1242 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-12 13:51:30 +00:00
plagman 09ef2dae34 Calculate inverse TBN matrix for planes.
git-svn-id: https://svn.eduke32.com/eduke32@1241 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-11 13:23:05 +00:00
plagman e158a9e71c Basic model bounding sphere light culling and corrected the bounding sphere calculation algorithm. Note that light still leaks to models/sprites on overlapping sectors, but not on the sectors themselves.
git-svn-id: https://svn.eduke32.com/eduke32@1240 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-10 17:49:34 +00:00
plagman 512bb9a5ab MD3 normals.
git-svn-id: https://svn.eduke32.com/eduke32@1239 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-10 14:30:34 +00:00
plagman 9995cc46c2 Repack model geometry as floats (preliminary work for model normals).
git-svn-id: https://svn.eduke32.com/eduke32@1238 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-10 12:08:33 +00:00
plagman dec9c2cbac Model bounding box and sphere computation.
git-svn-id: https://svn.eduke32.com/eduke32@1237 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-10 09:26:25 +00:00
plagman e41322dd47 Sprite lighting.
git-svn-id: https://svn.eduke32.com/eduke32@1235 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-08 22:59:54 +00:00
plagman 7d7a705af9 Work around a precision bug that would cause colinear wall vectors to only be "almost" colinear, causing the cross product to be wrongly validated and resulting in bogus normal vectors for some surfaces.
git-svn-id: https://svn.eduke32.com/eduke32@1234 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-08 21:07:40 +00:00
plagman ad1091b2df Light culling and proper diffuse material.
git-svn-id: https://svn.eduke32.com/eduke32@1233 1a8010ca-5511-0410-912e-c29ae57300e0
2009-03-08 20:38:51 +00:00
plagman dec76c4907 Glue code between internal light source management and the game.
git-svn-id: https://svn.eduke32.com/eduke32@1227 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-14 14:31:58 +00:00
plagman 6fe53806c7 Fixes a crash when disabling high-res texture replacements.
git-svn-id: https://svn.eduke32.com/eduke32@1226 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-13 13:10:01 +00:00
plagman ee105f1883 Proper hightile sprite calculation (fixes HRP explosion size).
git-svn-id: https://svn.eduke32.com/eduke32@1225 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-13 13:05:56 +00:00
plagman 46aa3d439a Propagate build/polymost locals so that polymost_dorotatesprite can correctly draw HUD models on top of polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1224 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-13 12:30:08 +00:00
plagman 6f945cdb58 Correct calculation of vertical aiming angle.
git-svn-id: https://svn.eduke32.com/eduke32@1223 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-13 12:16:21 +00:00
plagman dba29b0fbe Shader Model 3 "compatibility" for multilights. The light count will be arbitrarily limited and performance will be suboptimal, but it should work.
git-svn-id: https://svn.eduke32.com/eduke32@1222 1a8010ca-5511-0410-912e-c29ae57300e0
2009-02-05 08:56:59 +00:00
plagman 03b6403312 Very tentative attempt at backwards-compatible multi-lights.
git-svn-id: https://svn.eduke32.com/eduke32@1219 1a8010ca-5511-0410-912e-c29ae57300e0
2009-01-23 10:59:18 +00:00
plagman 91c6cf8f7a Multiple light sources and repair the indentation fuckup caused by the transition to normalized integer types.
git-svn-id: https://svn.eduke32.com/eduke32@1212 1a8010ca-5511-0410-912e-c29ae57300e0
2009-01-16 05:03:12 +00:00
plagman d1b9aa4c5c I'm about to change the core lighting code pretty deeply and I'll be happy to have this revision as a working backup after I screw everything up.
git-svn-id: https://svn.eduke32.com/eduke32@1211 1a8010ca-5511-0410-912e-c29ae57300e0
2009-01-14 14:13:51 +00:00
terminx 9095a4911d git-svn-id: https://svn.eduke32.com/eduke32@1206 1a8010ca-5511-0410-912e-c29ae57300e0 2009-01-10 07:38:50 +00:00
terminx d6914ed108 ass rape
git-svn-id: https://svn.eduke32.com/eduke32@1205 1a8010ca-5511-0410-912e-c29ae57300e0
2009-01-09 09:29:17 +00:00
plagman f062dafaed Light my fire.
git-svn-id: https://svn.eduke32.com/eduke32@1170 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-29 20:16:19 +00:00
plagman 0c869a2254 Fullbright/glow material bit.
git-svn-id: https://svn.eduke32.com/eduke32@1169 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-27 23:00:57 +00:00
plagman b50b229c1d Detail map material bit.
git-svn-id: https://svn.eduke32.com/eduke32@1168 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-27 22:26:46 +00:00
plagman f0c5278293 Added model animation interpolation in the material system.
git-svn-id: https://svn.eduke32.com/eduke32@1167 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-27 16:19:24 +00:00
plagman 2ac3fe6312 Extends materials to mdsprites and also fixes a bug where mdsprites got the wrong pal.
git-svn-id: https://svn.eduke32.com/eduke32@1165 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-26 19:31:26 +00:00
plagman b60ee26a25 Moved sprite flipping in the material code and implemented polymost texture scaling.
git-svn-id: https://svn.eduke32.com/eduke32@1164 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-26 17:24:08 +00:00
plagman e884cef8df Factor the material code that's all over the place.
git-svn-id: https://svn.eduke32.com/eduke32@1163 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-26 14:22:07 +00:00
plagman b8c7125222 Diffuse map bit and _prprograminfo for storing possible uniform and attributes locations.
git-svn-id: https://svn.eduke32.com/eduke32@1162 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-26 08:37:14 +00:00
plagman 31c1db57d7 Remove C99-style initializers from the polymer program bits.
git-svn-id: https://svn.eduke32.com/eduke32@1160 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-26 07:48:24 +00:00
plagman 0f385d3021 Material/program validation and diffuse modulation bit.
git-svn-id: https://svn.eduke32.com/eduke32@1154 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-25 11:32:49 +00:00
plagman bd98e3676b In a material world...
git-svn-id: https://svn.eduke32.com/eduke32@1153 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-25 10:42:22 +00:00
plagman 08923413f2 Polymer GPU program management stuff.
git-svn-id: https://svn.eduke32.com/eduke32@1152 1a8010ca-5511-0410-912e-c29ae57300e0
2008-11-25 09:07:38 +00:00
terminx d9867cfaaf Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake
git-svn-id: https://svn.eduke32.com/eduke32@1105 1a8010ca-5511-0410-912e-c29ae57300e0
2008-10-20 03:09:19 +00:00
Renamed from polymer/build/src/polymer.c (Browse further)