7107 Commits

Author SHA1 Message Date
phkb
faf52de069 Merge branch 'master' of https://github.com/OoliteProject/oolite 2018-08-27 08:11:20 +10:00
phkb
a128363a76 Another default shader small bug fix 2018-08-27 08:10:07 +10:00
AnotherCommander
b526cff5fd Light source color is now mixed with material specular if material is non-metal, not mixed if metal. Looks like we can deprecate IOR this way. 2018-08-26 20:33:33 +02:00
AnotherCommander
4287a8e827 Corrected specular BRDF (we were passing the specular color of the lightsource to the FresnelSchlick calculation, instead of that of the material). Energy conservation is now fully in. As a result, yet another re-calibration of material light values in shipdata.plist. 2018-08-24 10:52:18 +02:00
AnotherCommander
5ec808a512
Hopefully fixed not being able to set gloss from specmap's alpha channel. 2018-08-23 15:45:25 +03:00
AnotherCommander
b759505b15 Adjusted the planet shader to use the same specular BRDF as the standard one. 2018-08-22 10:57:44 +02:00
AnotherCommander
8b8cb27195 Adjusted the specular BRDF to be more physically compliant and increased slightly the default gloss values in shipdata to compensate for the change. 2018-08-22 08:48:50 +02:00
AnotherCommander
23af0abaa6 Fixed shader gloss and ior uniforms overriding material definitions of the same. Now both shaders and materials definitions of those uniforms should work nicwly together. 2018-08-19 23:55:14 +02:00
phkb
10df924f5d Default shader small bug fix 2018-08-20 06:56:08 +10:00
AnotherCommander
360fc66373 gloss and ior are now valid keys also in shader material dictionaries. 2018-08-18 22:09:43 +02:00
AnotherCommander
5232e0a993 Added the material parameters gloss and ior (which stands for Index of Refraction). Using shininess instead of proper gloss was a hack and is not used anymore for specifying glossiness. Gloss takes values in the range 0.0 to 1.0 and ior takes positive values. Also implemented basic light energy conservation for diffuse, thanks to now having access to the refraction index of materials. Default settings in shipdata for gloss is 0.375 (except for missiles, thargoids and police) and for default ior value is 2.95 (iron), except for missiles, which is set to 2.16 (titanium). 2018-08-18 18:48:41 +02:00
AnotherCommander
48ca2ea920 Adjusted planets Blinn-Phong as well to match the GGX setting. 2018-08-15 09:45:23 +02:00
AnotherCommander
2a29e91c31 Fine tuned planet specularity a bit so it does not look too different compared to previously. 2018-08-15 09:18:29 +02:00
AnotherCommander
17e47ab429 Yet another shininess re-calibration. Shininess is meant to be from 0 to 128 and the way it was it made it so that the gloss parameter passed to GGX could not be more than 0.78 or so. This is now corrected, with 128 generating the max cap gloss value of 0.95. GGX and new Blinn-Phong do not look similar with the same shininess value as a result. 2018-08-13 16:38:57 +02:00
AnotherCommander
0b480a9464 Oopsie! 2018-08-13 12:24:48 +02:00
AnotherCommander
239414b3cd GGX specular model now applied also on the planet shader. 2018-08-13 11:57:18 +02:00
AnotherCommander
9111bedd89 Removed comment about default spec model, since it has been switched. 2018-08-11 13:11:29 +02:00
AnotherCommander
2383afcf2f Fixed GGX specular properly this time. GGX is now the default specular model. 2018-08-11 12:47:50 +02:00
AnotherCommander
9d592a47c5 Fixed (I think) bug with GGX specular rendering in dark areas and calibrated further the shininess of the default shipset. 2018-08-11 10:34:03 +02:00
AnotherCommander
4f3249555e Adjusted shininess values in shipdata so that defaults look similar to the old spec model and made new Blinn-Phong and GGX look more alike with those default values. 2018-08-11 08:37:24 +02:00
AnotherCommander
715e1b8e5d Changed parameter order in the new specular calculation methods for reasons of uniformity with the old method. Also, now using macros to select the desired specular model. Define OOSPECULAR_NEW_MODEL to 0 to use the old method, define OOSPECULAR_NEW_MODEL_GGX to use GGX or define nothing to use the new Blinn-Phong. 2018-08-10 22:26:12 +02:00
AnotherCommander
2237a8f272 Added two more physically accurate specular light models. The default shader can now support also GGX specular light, but we still default to Blinn-Phong. Spec intensity intentionally increased so that the effect can be seen immediately (can be lowered at a later stage). 2018-08-10 19:09:31 +02:00
AnotherCommander
89d301b0ce Oopsie, forgot to include PlayerEntityControls.h in previous commit. 2018-07-28 18:13:22 +02:00
AnotherCommander
f6924067cc Reload keyboard configuration if we re-init and show the demo screen. This should take care of #248. 2018-07-28 18:08:24 +02:00
AnotherCommander
63edd46980 Added minimalistic scanner, essentially a scanner without gridlines. Default setting can be defined in shipdata using the scanner_minimalistic key and it can be controlled by script too using the JS PlayerSHip scannerMinimalistic read/write property. 2018-07-20 21:20:09 +02:00
AnotherCommander
9d443b9ee8 Improved flee AI. 2018-07-20 16:54:16 +02:00
phkb
749b600471 Prevent energy damage application when player in escape pod (#308) 2018-07-20 15:46:52 +03:00
AnotherCommander
85695d8dcf Fixed mouse control disabling keyboard speed shortcuts. Closes #307. 2018-07-17 08:12:46 +02:00
AnotherCommander
c64ce045fc Fixed oddities with mouse control when Caps Lock was active on view directions other than front. Closes #306. 2018-07-16 17:11:51 +02:00
phkb
a5b3f6f22c Fixing memory leak in setScreenTextureDescriptorForKey (#305) 2018-07-11 14:16:38 +03:00
KonstantinosSykas
fddff872f2 Merge branch 'master' of github.com:OoliteProject/oolite 2018-07-10 18:26:12 +03:00
KonstantinosSykas
6174e69955 Linux installer (issue #300): Install/Uninstall scripts updated
to handle the case where another systemwide installation is deployed to a different directory than the one that we are trying to install/uninstall.
2018-07-10 18:24:08 +03:00
phkb
f91f39470d Edit gui color settings in gui-settings.plist (#302)
Added ability to read/change color values from gui-settings.plist.
2018-07-10 17:56:15 +03:00
AnotherCommander
2de1aea173 Fixed erroneous behaviour when NaN was passed via script for pitch, roll and yaw. Closes #303. 2018-07-05 14:57:48 +02:00
KonstantinosSykas
e1ffdb6516 Linux installer (issue #300): Added command line arguments support.
The argument --systemwide-directory has been added, for systemwide installations, to choose an installation directory other than the default /opt. Use -h or --help to get the proper syntax.

Updated some email addresses too.
2018-07-03 00:35:39 +03:00
KonstantinosSykas
c81d75ac92 Linux port: Packaging excludes version control system directories. 2018-06-29 12:13:16 +03:00
phkb
2a7de6fb00 playerCancelledJumpCountdown JS event now firing when starting autopilot 2018-06-29 11:49:45 +03:00
Jens Ayton
99f1e07f14 Better fix for use of defined() in macros 2018-06-17 12:44:04 +02:00
Jens Ayton
0a80380e37 Fix use of defined() in macros 2018-06-17 11:02:36 +02:00
KonstantinosSykas
03181cfa81 Fixed Linux build warnings
related to missing newline at end of file OOLongRangeChartMode.tbl
2018-06-16 22:59:58 +03:00
AnotherCommander
25fc20f7f3
Revised mousewheel handling (#294) 2018-06-16 22:26:51 +03:00
AnotherCommander
4206592804 Increased mumber of supported joysticks to 4. Adjustments to the stick mapper screen to be able to list more than two joysticks. 2018-05-20 18:03:36 +02:00
AnotherCommander
d650b61b62
Optimization: Explosion Culling (#292)
You may have noticed already that, sometimes, entity count jumps quite a bit, then drops quickly back down to its previous levels. This is often due to explosions. They tend to generate a number of entities that are added to the universe at the moment of the explosion and are removed shortly after, once their life has expired. This happens every time as part of the simulation, regardless of where the explosion takes place. Very often, the amount of entities being generated results in momentary stutter.

This change tries to minimize the side effects of explosions happening. We now generate all those extra entities only if the object that exploded was visible in the first place. Regardless of visibility, the explosion is rendered normally if it has happened within scanner range (so e.g. an escape pod exploding will always have a visible explosion, although it stops being visible past 5000m or so).
2018-04-26 18:19:48 +03:00
AnotherCommander
39a2fa8363 Updated external libraries source changes document and upped again Windows deps to their latest revision. 2018-04-26 16:39:40 +02:00
AnotherCommander
f0926dbf08 Brought Windows deps to their latest revision. 2018-04-26 16:30:07 +02:00
AnotherCommander
fc44d75bda Update of Windows dependencies to the latest revision. 2018-04-25 17:13:03 +02:00
AnotherCommander
40f5eb68b7 Fixed temperature due to air friction not rising when more than one planets were present in the system. 2018-03-28 18:42:56 +02:00
AnotherCommander
62894e37a5 Restore orange planet terminator tint, which was accidentally removed when atmosphere shaders were introduced. 2018-03-26 10:39:22 +02:00
AnotherCommander
0231ed5a58 Windows port: Ensure that, in the case of both an integrated and a high-performance GPU being available, the high-performance one is selected. Also, comment and formatting fixes while we are there. 2018-03-22 08:41:47 +01:00
AnotherCommander
91a36b8a76
Introducing the %G###### string expander.
It works like the %J### one, but it takes two triplets of numbers rather than one, namely the system ID followed by the galaxy ID. This way we can refer to planet names in galaxies other than where the player is. %J### remains for compatibility reasons. Updated Constrictor Hunt mission strings to eliminate hard coded references to Xeer in the mission texts. (#290)
2018-03-06 12:16:42 +02:00