Garux
191d489d62
* hasten MergeMetaTriangles and SmoothMetaTriangles to perform typically in 0 seconds
...
* improve quality of metasurfaces and reduce their count in general case
2021-09-05 11:37:00 +03:00
Garux
bafb339c09
MergeMetaTriangles: epsilon compare st, improves merging imprecise sts, e.g. for nonplanar surfaces after q3map_tcgen or just brush face texture projection
2021-09-03 06:23:40 +03:00
Garux
d113eed245
improve MergeMetaTriangles out surfaces quality and reduce count
2021-09-03 06:19:41 +03:00
Garux
7f8e548c2f
* hasten MergeMetaTriangles greatly (around 30 times in worst case)
...
this has negative impact on surfaces count in certain scenario (big axial surface of easily mergable triangles)
it wins predecessor once we rotate such surface
so may be consider choosing sorting plane per lump or mergables
algorithm itself is dependent on test data ordering, thus best option would be tweaking it, not prerequisites
`redundant indexes suppressed` count is always worse with this due to sorting nature, sorting per axial plane helps
assuming this optimization is not important and case dependent
2021-09-01 20:16:57 +03:00
Garux
f067b5d6c3
tweak -meta
2021-08-28 18:37:22 +03:00
Garux
0ad3d89d4a
use spatially sorted indices during search of coincident vertices in AddMetaVertToSurface
2021-08-28 10:56:50 +03:00
Garux
e780b45696
enfasten -meta for nonplanar by doing cheap check 1st
2021-08-27 17:13:26 +03:00
Garux
160c1d33db
remove -texrange business (assuming it's not relevant for decades)
...
optimize -meta (shave off 1/3 in worst case)
2021-08-27 12:18:56 +03:00
Garux
8d71aea059
* Q2::surface inspector::brush face flags: add "Unset flags" button
2021-08-24 18:57:59 +03:00
Garux
b58408344c
Q2 optional brush face flags in BP, 220 mapformats
2021-08-24 18:55:34 +03:00
Garux
3129fd0bce
refactor model clipping code
2021-08-20 22:32:33 +03:00
Garux
f0c393fcbf
remove __attribute__ ((unused)) uses
2021-08-19 23:14:18 +03:00
Garux
4c49b81c3a
shorten g_archives syntax
2021-08-19 13:16:38 +03:00
Garux
aa4f3a1f72
reduce the use of GSlist
...
Quake3FileSystem::forEachFile: avoid double extension check, support "*", as advertised
2021-08-19 12:28:56 +03:00
Garux
41c3dfc96e
add move constructor, assignment to String class
2021-08-18 01:24:53 +03:00
Garux
d82996d684
mbspc: fix q3 entities being loaded twice
2021-08-15 18:54:28 +03:00
Garux
1372ea440b
more move semantics
2021-08-15 15:15:30 +03:00
Garux
bb1931b745
* sort pk3s, so content of later (zzz) overrides earlier, like in radiant and engine
...
* fix strong performance penalty with large amount of files in pk3s
store pak file path once per pk3, not per each file inside
2021-08-13 03:20:07 +03:00
Garux
4beae3d362
* support entries with .shader extension in shaderlist.txt
...
vfsListShaderFiles (empty shaderlist = load all shaders, -pk3, -repack):
only list pk3 .shaders from scripts/ folder
support non scripts/ shaderPath (e.g. jka)
unlimit shader files count
case insensitive shaderlist entries, so duplicates aren't loaded twice
2021-08-12 11:23:59 +03:00
Garux
aa5de2fee9
wrap winding_next logic
...
prevent crash in AddWindingToConvexHull()
2021-08-11 18:18:38 +03:00
Garux
f492ab27eb
more c++ in q3map2
2021-08-10 22:41:43 +03:00
Garux
99f4a4a767
minor tweaks
2021-08-03 20:54:21 +03:00
Garux
357f67f237
remove Q_EXTERN int numLights
...
remove /* potential pre-setup */ :
1. it seems to never actually be the case
2. it is called from threaded functions, while SetupEnvelopes() itself is not thread safe
2021-08-03 18:26:47 +03:00
Garux
f49639c697
std::list<light_t> lights
2021-08-03 07:28:53 +03:00
Garux
a743668e44
prevent overflow in gridsize adjustment
2021-08-02 12:03:22 +03:00
Garux
15b391cdb3
minor tweaks
2021-08-02 00:47:18 +03:00
Garux
e8996d0857
using facelist_t = std::forward_list<face_t>
2021-08-01 22:50:35 +03:00
Garux
c3041cc2f8
using winding_t = std::vector<Vector3>
2021-07-31 18:28:38 +03:00
Garux
dbfb22e273
using winding_accu_t = std::vector<DoubleVector3>;
2021-07-30 12:20:56 +03:00
Garux
ffa1a4340c
std::vector<plane_t> mapplanes
2021-07-29 22:21:36 +03:00
Garux
ee92bdd801
minor tweaks
2021-07-27 22:16:05 +03:00
Garux
89b7bcdf53
* read .map brush plane points and store brush planes for windings calculation in double precision (fixes cracks between brush faces)
2021-07-27 20:04:35 +03:00
Garux
3c17f8fbc5
add MST_PLANAR and MST_TRIANGLE_SOUP counts to -info report
2021-07-22 17:32:58 +03:00
Garux
45c3c4c012
bump prtview reading buffer size
2021-07-22 16:57:37 +03:00
Garux
8022e0c92f
compressed radiant.ico
2021-07-18 18:02:41 +03:00
Garux
44907db895
Add KTX and ETC1 texture support by @Triang3l
...
https://github.com/xonotic/netradiant/pull/1
https://gitlab.com/xonotic/netradiant/-/issues/5
This pull request adds support for Khronos Textures to NetRadiant and Q3Map2, with OpenGL ES 2.0 formats, Ericsson Texture Compression version 1, and BGR/BGRA.
The patent-free Ericsson Texture Compression format will be used in the next version of Warsow to significantly reduce VRAM usage on mobile GPUs and the integrated GPU of Intel Broadwell.
2021-07-18 16:18:49 +03:00
Garux
d1c3c838c8
bump bobtoolz::polygon builder::max number of sides
2021-07-11 16:31:55 +03:00
Garux
8cc464014e
improve Brush_ConstructPrism() readability
2021-07-11 16:30:48 +03:00
Garux
4c0d049c02
prevent overflow in ostream_write( Decimal )
2021-07-11 16:28:10 +03:00
Garux
a1daaa2946
remove commented out code
2021-07-02 17:19:56 +03:00
Garux
da55e8cbb4
* ctrl + m3/drag: also paste texture seamlessly from brush face to patch and vice versa, when face edje is adjacent to patch edje
2021-07-02 17:16:50 +03:00
Garux
133b146712
limit camera workzone renderable data amount
...
fixes performance with big selection + small grid
fixes crash, while scaling brush + model to zero
2021-07-02 16:55:50 +03:00
Garux
0e4a4fdcf6
* fix _castShadows > 1: cast on world, as advertised
2021-07-02 16:50:01 +03:00
Garux
4471302857
add and use BasicVector3.vec2()
2021-06-23 16:51:03 +03:00
Garux
4697d7940c
fix new gcc build error: ‘N’ is not a constant expression, while using offsetof
2021-06-22 20:49:42 +03:00
Garux
7796044913
fix clang build error
2021-06-22 19:17:58 +03:00
Garux
5b33fae202
fix clang error: variable-sized object may not be initialized
2021-06-21 17:07:03 +03:00
Garux
17406bd124
Merge branch 'master' of https://github.com/Garux/netradiant-custom
2021-06-21 16:51:27 +03:00
Garux
cfdcfe2b62
Merge pull request #74 from germangar/jal-minifixes
...
maxLMSurfaceVerts and keepLights not initialized from their game descriptor values
2021-06-04 00:39:43 +03:00
germangar
3b9b05d40e
Undo changing to unsigned int for maxLMSurfaceVerts, maxSurfaceVerts and maxSurfaceIndexes. Restore qfusion.h long value
2021-06-03 22:28:29 +02:00