Commit Graph

5676 Commits

Author SHA1 Message Date
Nathaniel MacArthur-Warner
7dc8a86524 Warn when loading uncompressed DDS files since it causes problems on some systems 2020-12-24 12:26:30 -08:00
Nathaniel MacArthur-Warner
3fc6df203c Attempt to convert subimage on pixel format mismatch, provide more helpful logs 2020-12-23 23:39:39 -08:00
Nathaniel MacArthur-Warner
a56d1718de Check for and scale down oversize composite orthophotos 2020-12-23 22:38:03 -08:00
Nathaniel MacArthur-Warner
6ed37c880a When creating composite orthophoto, only scale sub images when necessary 2020-12-23 17:32:31 -08:00
Nathaniel MacArthur-Warner
0e7cf378a4 Indent fix 2020-12-23 14:07:34 -08:00
Nathaniel MacArthur-Warner
851ccb0ca7 Fix creation of composite orthophotos in case where aspect ratio of input photos doesn't match tile 2020-12-23 11:37:38 -08:00
Fernando García Liñán
0f482c14dd Do not let OSG cull lights away 2020-12-23 12:50:06 +01:00
Fernando García Liñán
a84133e945 (Another) significant rework of the clustered shading feature
This time it tries to be as compatible as possible with older hardware setups.
The only feature that might not be supported by some really old hardware
(or picky drivers) is floating point textures. There is no way around that
though, so this is as compatible as we can be with GL 2.1 level hardware.
2020-12-22 10:52:02 +01:00
Julian Smith
718a23cbbe Fixed build failure caused by flightgear now #including logdelta.hxx.
The fix is to add logdelta.hxx to list of headerss in
simgear/debug/CMakeLists.txt.
2020-12-22 00:35:40 +00:00
Julian Smith
687e65fa36 simgear/debug/logdelta.*: added logDeltaSet() to allow dynamic control. 2020-12-21 22:36:37 +00:00
James Turner
284667c18f Fix BTG error reporting
Use gzerror, not strerror, for these codes.
2020-12-21 13:26:04 +00:00
Fernando García Liñán
68caf780b0 Clustered Shading: Don't use static variables, use class member variables instead 2020-12-18 23:29:08 +01:00
Julian Smith
d1aa5a0b82 simgear/props/props.*: added method to add exising SGPropertyNode_ptr as child.
Avoids the need to create a new child and copy recursively.
2020-12-18 17:44:57 +00:00
Julian Smith
42c89ba6d3 simgear/props/props.cxx: parse_name(): improved exception text.
Also fixed indentation.
2020-12-18 17:44:57 +00:00
Fernando García Liñán
995608fc9e Fix wrong Compositor buffer formats 2020-12-18 01:45:26 +01:00
Scott Giese
e8f715c255 Maintenance: convert atoi to modern equivalence
Out of range results in undefined behavior in the C library.
Coverting to C++ library to avoid this risk.
2020-12-17 18:01:49 -06:00
Scott Giese
e031ea7f7c Crash prevention: throw during dtor
get_manager() will be called during dtor, so throwing an exception would cause a hard crash.
2020-12-17 17:02:40 -06:00
Scott Giese
9bac911fe1 Maintenance: Use empty instead of size==0 2020-12-17 16:08:06 -06:00
Scott Giese
cdd5cf8cd5 Remove unreachable code 2020-12-17 15:41:51 -06:00
Nathaniel Warner
3898ca5c09 Fix aiport signs appearing black when photoscenery enabled 2020-12-17 10:54:00 +00:00
Fernando García Liñán
5c21df742c Compositor no longer inherits from osg::Referenced 2020-12-17 06:35:55 +01:00
Scott Giese
39d616a0d5 Support Boost v1.75
Resolved a breaking change.
2020-12-15 01:41:32 -06:00
James Turner
b660061812 Fix Nasal GC errors on tests/reset
Ensure the Context temps are cleared, and when recycling an naCode,
ensure old values are cleared explicily.

Sentry-Id: FLIGHTGEAR-Y
2020-12-13 17:26:27 +00:00
James Turner
deda20d5bd SGGeod: add static constructor of an invalid Geod
Use this to allow explicitly initializing a value which isValid
will return false for.
2020-12-13 17:26:27 +00:00
xDraconian
b9c39fd2ab Merge /p/flightgear-photoscenery/simgear/ branch next-photoscenery-r6 into next
https://sourceforge.net/p/flightgear/simgear/merge-requests/88/
2020-12-12 23:13:37 +00:00
Nathaniel Warner
9e103fe7bf Prefer DDS over PNG for orthophoto 2020-12-12 13:59:52 -08:00
Nathaniel Warner
88be307540 Gracefully handle pixel format mismatch 2020-12-12 11:44:55 -08:00
Julian Smith
89fabafa15 simgear/props/props_io.*: added class for inline calling of writeProperties().
E.g. allows:

    SG_LOG(SG_VIEW, SG_ALERT, "returning:\n" << writePropertiesInline(config, true /*write_all*/));
2020-12-12 11:24:33 +00:00
Nathaniel Warner
4c0f6d7638 Add support for dds, avoid creating non power of two textures 2020-12-11 18:39:20 -08:00
Stuart Buchanan
8954a54e2e WS30: Improved material atlas
Add
- texture size
- shininess
- diffuse
- specular

from material.xml into the fragment shader via sampler1D.
2020-12-08 21:12:01 +00:00
Fernando García Liñán
915982de85 Move makeNewProjMat somewhere public so it can be accessed by flightgear 2020-12-08 14:08:43 +01:00
Richard Harrison
aaaae0f567 Remove mutex lock on realizeTechniques
This was causing a deadlock - and I can't quite remember what problem it was intended to solve so it is best to remove it.
2020-12-07 15:12:15 +01:00
Nathaniel Warner
f72ff7d2a2 Fix segfault when trying to load corrupt orthophoto 2020-12-06 11:44:04 -08:00
Fernando García Liñán
00ff35cdb7 Better shadow map depth ranges 2020-12-06 14:41:09 +01:00
Stuart Buchanan
8641d3616a WS30: Texture array texture lookup for landclass
- Create a Texture2DArray for a MaterialCache
- Adjust the landclass image to index into the above array
- Add the array to as a Uniform for rendering.
2020-12-05 13:09:35 +00:00
James Turner
02cf42359d Reporting of std::bad_alloc in Subsystem::update
Trying to trace down our bad-alloc exception, starting with the simplest
place for now.
2020-12-03 21:37:26 +00:00
James Turner
4271b710ef Add reporting callback option to SimGear
Allows us to trigger an error logging callback explicitly, which can
be used to drive Sentry.io on the FlightGear side.
2020-12-03 21:37:26 +00:00
Fernando García Liñán
f1212dfa73 Initial support for texture arrays in Effects 2020-12-03 18:36:56 +01:00
James Turner
191d546b54 TerraSync: stronger fix for handling 0-byte files
Change logic so we create an empty file for such cases, i.e exactly
matching the repository. This simplifies logic in downstream code,
compared with not creating a local file.

Add a test-case to cover this

Modify TerraSync to detect a failure of Airports_archive downloading,
and fall back to file-by-file updating.
2020-12-03 16:40:48 +00:00
James Turner
57a4dc53f2 HTTPRepository: don’t crash on empty files
Fix some additional crash cases around 0-length files
2020-12-02 21:28:37 +00:00
James Turner
e370477e4e Unzip: adjust error reporting mechanism
Don’t use local exception throw+catch to report failures in extracting
a zip archive, since this generates noise in Sentry.
2020-12-02 12:12:56 +00:00
James Turner
c88b8b201a State-machines: don’t require name for transitions
Allow anonymous transitions, since the name is purely informational
(unlike for states).

Sentry-Id: FLIGHTGEAR-9H
2020-11-30 16:17:59 +00:00
Nathaniel Warner
fee2c592c0 Use observer_ptr in OrthophotoManager 2020-11-29 15:02:09 -08:00
Stuart Buchanan
023a3de5f1 WS30: Landclass to material mapping
Using indirection in materials.xml

<landclass-mapping>
  <map>
    <description>111 - Continuous urban fabric</description>
    <landclass>1</landclass>
    <material-name>Urban</material-name>
  </map>
</landclass-mapping>
2020-11-29 19:28:58 +00:00
James Turner
de268300fb TerraSync: fix crashes with null file return
Not sure how this is happening, but, check for a null file object
in FileGetRequest::onDone.
2020-11-29 16:22:21 +00:00
Scott Giese
79252d889c Merge branch 'next' of https://git.code.sf.net/p/flightgear/simgear into next 2020-11-27 17:56:52 -06:00
Nathaniel Warner
ca38d9110c Fix orthophotos not being cleaned up on scenery reload 2020-11-27 17:54:28 -06:00
Stuart Buchanan
6ece39e34c Set minimum expiry time on STG nodes. 2020-11-26 22:55:56 +00:00
Scott Giese
aab373ac3a Model Loading: Overlays
Cannot copy overlays until the props has been read.
Ticket: #2429
2020-11-24 11:26:57 -06:00
Nathaniel Warner
d4d149f3c0 Rebase photoscenery patch on next 2020-11-23 17:49:24 -06:00