Skip to content

Releases: Garux/netradiant-custom

Latest Build

17 Dec 04:41
Compare
Choose a tag to compare

Gamepacks

  • JKA/MBII mp_entities.ent by Frenz

Commits

  • dbcdb40: * fix deformvertexes autosprite2 on brushes and models (Garux)
  • 8403e07: fix bobToolz TreePlanter, DropEntity, MakeChain (Garux)
  • ff9aeaf: shader editor: add skybox template (Garux)
  • d425977: shader editor: fix completion collision of blendFunc blend with blend shader template (Garux)
  • 1ed93f7: tweak portal, alphagen portal documentation, completion (Garux)
  • 79f4357: mbspc * fix build speed penalty due to terminal output (Garux)
  • 7357b6e: rewrite ini reader/writer (Garux)
  • 2afef41: fix floating point errors (Garux)
  • c488aa1: * -globalflag : add surface flag to every bsp shader. Reusable, e.g. -globalflag slick -globalflag nodamage. (Garux)
  • 6cd9028: validate smartedit key values input, tweak entity key name, value validation interaction (Garux)
  • f9dd863: shader editor: fix typo, add 'compile time remap' template (Garux)
  • c166e42: * improved brush faces triangulation wrt degenerate triangles production (non -maxarea algorithm) (Garux)
  • e0169cd: * -nobrushsnap: disable brush vertices snapping (of drawsurfs) (experimental, keep eye on meta merge efficiency) (Garux)
  • 0145a3d: apply bevel surfaceflags unconditionally (Garux)
  • 6a89422: Load last map at startup by default (Garux)
  • 343cf73: force q3map2 net send if >1-2 seconds has passed for greater build monitoring responsibility (Garux) #221

20241031

31 Oct 01:02
Compare
Choose a tag to compare

Gamepacks

  • improved HL, Q2, Q3 (slickob) gamepacks
  • added Q2Rerelease gamepack

Commits

  • 958b99a: fix si->implicitImagePath extension presence vagueness added in c3437b7 (Garux)
  • 679ebd9: improve rotate-snap to align bbox axially as much as possible (Garux)
  • 1b0e573: fix "winding: index out of bounds" when highlighting brush components during undo/redo (Garux)
  • 1fe5016: * m1 drag + ctrl (Drag tool, 3D view): move-snap selecton bbox corner to pointed position in scene (Garux)
  • 811fcd6: confirmation dialog for reset all shortcuts (Garux)
  • cc2c170: shader editor: 4 chars tab size (was 80 pixels), update it on zoom, monospace font (Garux)
  • 7c0b080: enable menu.help.about.changelog (Garux)
  • a2bdefc: improve fgd.choices (Garux)
  • dce698d: fix linux build process monitoring (Vorschreibung) #205
  • 7b565c2: log to terminal on linux/macos (Vorschreibung) #199
  • f3ffdf9: support 16bit png loading in radiant (Garux)
  • 5daf2e2: * generate shaders to force nomipmaps flag on external lightmap images created by lightstyles and external lms hacks (Garux)
  • a3d438c: * adjust -light -trisoup to enable performance hack for games with low verts per lmed surf count (e.g. 64 in Q3): (Garux)
  • 6749261: * -maxshaderinfo : Sets max amount of shaderInfo, default = 8192 (Garux)
  • 20a9afc: * -maxmapdrawsurfs : Sets max amount of mapDrawSurfs, used during .map compilation (-bsp, -convert), default = 131072 (Garux)
  • 2721cca: untie PatchMapDrawSurfs() from MAX_MAP_DRAW_SURFS, was doing stack overflow when increased (Garux)
  • bf579cc: * ctrl + shift + u: CSG Intersect (Garux)
  • e77d713: * fix custom shaders generation for lightstyles and external lightmaps hacks for :q3map suffixed shaders (Garux)
  • ecdad80: * light radiuses: don't render biggest radius, make them less occluding in 3D (Garux)
  • 9b9e1df: * light entity radius: support negative intensity display and adjustment (keep sign while adjusting) (Garux)
  • e02571f: * preferences.Selection.Create brushes in 3D (by m1 drag) (Garux)
  • ec29d48: * Model Browser: unmoved m2 resets models rotations (Garux)
  • 3212660: * fix equally named builds execution (Garux)
  • a9a9907: support .fgd color1 key type (Garux)
  • 3eff562: in .def ent defs treat -, x & unused* spawnflags as dummy (Garux)
  • 4cbe05a: bump EntityClass MAX_FLAGS to 32 (Garux)
  • 7bd1148: * bobToolz: new Find Duplicates function: finds & selects duplicate brushes in entire map (Garux)
  • 69a3a4f: * brush.cone result respects original brush bounds and is currect projection dependent (Garux)
  • 2c947b7: q3map2/light: introduce -nobouncestore (Thomas Debesse)
  • 374f66b: don't store lightmap if the last bounce computation ran empty. (Matthias Krüger)
  • 39f4bdf: * installer of map developer's files (common shaders/textures/w/e is included in gamepack) (Garux)
  • a5bad3d: * fix: don't turn lights with targetname to styled for IBSP, as they are not switchable there (Garux)
  • 1da9dbf: * -keepmodels in -bsp / _keepModels on worldspawn: keep misc_model entities in the BSP file after compile (Garux)
  • b9c537f: * Run Engine After Compile function: make 'Engine to Run' & 'Engine Arguments' customizable in preferences (Garux)
  • cc89d51: make console text color adaptive to GUI theme changes (Garux)
  • 32c4ded: fix default GUI theme application on the fly (Garux)
  • 4e1c8ad: install share/qt5/plugins/styles/qwindowsvistastyle.dll for native look'n'feel in Windows with 'Default' theme (Garux)
  • 4d870a3: * shader editor: lines numbering (Garux)
  • 66f8098: * shader editor: highlight current line (Garux)
  • 1e90913: * misc_model _target and group entity _targetname key aliases for baking the model into entity (Garux)
  • 9c2fbc9: * shader editor: Q3 shader syntax highlighting (Garux)
  • 2b3a34b: improve performance of console, shader view (Garux)
  • 9ca1d93: * UV Tool: measure snapping distance in screenspace (Garux)
  • 860ba89: * UV Tool::skew: snap lines to vertices; change snapping measure to distance (Garux)
  • f6972d0: add action, triggering shaderManual deployment action (Garux)
  • a351b63: add "textures/skip" to caulk filter for Q1 (Garux)
  • a998927: entity, surface inspectors: clear focus widget while showing to keep global shortcuts working (Garux)
  • 544ade9: on Enter in NonModalEntry, NonModalSpinner always do apply, since not every selected instance necessarily has shown property applied (Garux)
  • c08c2f9: * ctrl/ctrl + shift modifiers in value spinners divide step by 10 & 100 respectively (Garux)
  • f9bc21a: * -lessbrushes switch: less brushes when decompiling Q1, HL maps at the expense of texturing (Garux)
  • f43f9da: mbspc: * improve decompilation quality of Q1, HL maps greatly (texturing correctness, less brushes) (Garux)
  • 6fa7a8b: decompilation: bump limits to be able to decompile all AD Q1 BSPv1 maps (Garux)
  • 18d4a0a: decompilation: avoid writing empty texture name (Garux)
  • 0ac6b34: sanitize Entity inspector key/value input (Garux)
  • 88a03b0: normalize rendered light color for display consistency (compiler normalizes it anyway) (Garux)
  • d41adc5: * use bounding box for misc_model transformations (Garux)
  • f0ce315: handle fgd spawnflags #115 (Garux)
  • 5162a22: adjust gui style: bright menu separators with margin, highlighted scrollbar handle, no scroll buttons (Garux)
  • 85d6e4b: shortcuts customization: handle numpad keys as numpad keys (Garux)

20221212

12 Dec 15:53
Compare
Choose a tag to compare

menus...

* view->filter->sky: Q3 shader based skies (skyParms keyword)

misc...

* render Q3 shader based skyboxes
* refactor textureTags GUI, make it toggleable in runtime
* textureTags work right away without scanning of all availbale textures & shaders
* superseded Patch Inspector by extended Surface Inspector functionality
* port editor to Qt framework
* texBro folders tree: sort it case insensitively
* "Built-In Group Dialog" layout option, embeds entity, textures etc dialog on the right of main window
* 2D view new brush creation: do not stumble on one dimenstion resizing, when the other is 0
* 2D view new brush creation: preserve brush start world coordinate, when viewpoint is changed in the process

20221027-QtTest1

27 Oct 09:10
Compare
Choose a tag to compare
20221027-QtTest1 Pre-release
Pre-release

menus...

* view->filter->sky: Q3 shader based skies (skyParms keyword)

misc...

* render Q3 shader based skyboxes
* refactor textureTags GUI, make it toggleable in runtime
* textureTags work right away without scanning of all availbale textures & shaders
* superseded Patch Inspector by extended Surface Inspector functionality
* port editor to Qt framework

20220211

11 Feb 22:58
Compare
Choose a tag to compare

Q3map2:

* now runs on c++
* discard excess portals in the void (great optimization for maps with void areas in between of playable areas and non rectangular maps)
* optimize FloodPortals()
* fix xml_Select() of leaked entity (was selecting last map entity always)
* xml_Select() leaked entity exactly in the beginning of leak line
* case insensitive command line arguments
* -help -game lists available games
* print available games on wrong -game and -format args
* -saturation light switch, default = 1, affects lightmaps and vertex color; > 1 = saturate, 0 = grayscale, < 0 = complementary colors
* replace model loaders by assimp library (40+ formats)
* auto split big model meshes to <= maxSurfaceVerts chunks (avoids excess meta process for vertexlit ones)
* fix texturing, when origin key of group entity is set
* improve ase export compatibility
* support negative misc_model scale
* use dynamic maxSurfaceVerts (user preference/game define) in 'force meta process for a surface' decision (was hardcoded)
* fix _castShadows > 1: cast on world, as advertised
* read .map brush plane points and store brush planes for windings calculation in double precision (fixes cracks between brush faces)
* support entries with .shader extension in shaderlist.txt
* 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
* hasten MergeMetaTriangles and SmoothMetaTriangles to perform typically in 0 seconds
* improve quality of metasurfaces and reduce their count in general case
* prioritize +Z fog visible side in ambiguous case (= -Z fog direction), as in fogged pit
* auto fog direction: try all sides, not just axial; default to none, if no visible sides
* q3map_fogDir: pick best matching side, not strict match only; ignore invisible 'bevel' sides
* -fs_basegame gamename: Overrides default game directory name (e.g. Q3A uses 'baseq3', OpenArena 'baseoa', so -game quake3 -fs_basegame baseoa for OA)
* new: bsp export/import in json format; Usage: q3map2 -json <-unpack|-pack> [-v] <mapname>
* synchronize -help, html help and actually available command line arguments
* -json -pack -useflagnames: deduce surface/content flag values from their names in shaders.json (useful for conversion to a game with different flag values)
* -skipflags: while -useflagnames, skip unknown flag names
* -pk3, -repack: support multiple bsp files input by command line
* unlimit MAX_IMAGES
* support inline /* */ comments
* -mergebsp [options] <mainBsp.bsp> <bspToinject.bsp>: Inject latter BSP to former. Tree and vis data of the main one are preserved.
* -mergebsp -fixnames: Make incoming BSP target/targetname names unique to not collide with existing names
* -mergebsp -world: Also merge worldspawn model (brushes as if they were detail, no BSP tree is affected) (only merges entities by default)
* fix decompilation of brushes with edge case face normal ( -0.577350259 -0.577350259 0.577350259 ) and MakeNormalVectors() in general
* non -fast bsp decompilation: deduce brush detail flag
* patchMeta: fix: keep playerclip patches for collisions
* autocaulk: do not impact fog brushes with all faces culled (global fog case)
* skylight extension: q3map_skylight amount iterations optional[horizon_min horizon_max sample_color]
	horizon_min horizon_max: two spherical angles, defining portion of sphere to emit light from.
	Default is 0 90, which is upper hemisphere. -90 90 will be whole sphere.
	sample_color: Default = 1: sample color of each individual light from skybox images, if they are present.
	0: use shader color, set by q3map_lightRGB/q3map_lightImage/_up skybox image/qer_editorImage.
* q3map_skylight may be used multiple times in a single shader

Radiant:

binds...

* ctrl + m3/drag: also paste texture seamlessly from brush face to patch and vice versa, when patch edge is on face plane

menus...

* Misc->Colors->Themes->Adwaita Dark color theme

misc...

* common shaders deduction: fallback to .game "common_shaders_dir" param (default = "common/"), so they may be configured all at once
* improve performance of big maps loading, undo/redo dramatically
* improve performance of deselecting big selections
* only scale light radius by mouse while it is displayed
* load all found *.fgd, not just halflife.fgd
* fgd: support studio("display/model/path") and flags(Angles)
* replace model loaders by assimp library (40+ formats)
* fix rendering of direction arrow of group entities, when origin key is set
* add optional `soundtypes` keyword of .game config, affecting file types shown in sound browsing dialog
* automatically add ExtraResoucePath to q3map2 arguments, if set
* support negative misc_model scale
* .ent: support setting default model value of MiscModel type (<model key="model" name="Model File" value="ass/spider.mdc">)
* .ent: "direction" attribute presence enables -1/-2 angle support for EclassModel, GenericEntity
* .ent: "angles" attribute presence enables angles support for EclassModel
* entity keys: prefer "angles" over "angle", "modelscale_vec" over "modelscale" if both are set
* support entries with .shader extension in shaderlist.txt
* Q2::surface inspector::brush face flags: add "Unset flags" button	
* patch thicken: set default thickness and increment step to current grid size
* patch thicken: create new patches in original patch entity
* region build: widen temp box to handle small volumes, light entities at the edge and flat primitives
* region build: pull temporal respawn to the box instead of error
* bobToolz.mergePatch: bruteforce merge all selected patches; keep unaffected patches selected
* view.show.blocks (_blocksize display): support q3map2 way of handling (3 values input, zero values, Z splits)
* fix: don't rename target/names without numeric suffix on paste to non clashing namespace
* cloneSelected, cloneSelectedMakeUnique: select cloned stuff (was preserving original selected)
* fix: don't increment target/names on file.import
* model shader paths guessings: prefer material names, starting with textures/ or models/ over diffuse map name
* add Inter-Quake Model (IQM) support
* add grid sizes 512, 1024

20210105

05 Jan 05:33
Compare
Choose a tag to compare

Q3map2:

* fix: do not affect styled lightmaps by floodlight
* support -extlmhacksize N N input for non square lightmaps, for example -extlmhacksize 2048 1024
* no shaderlist.txt or empty one = load all shaders
* fix -fixaas
* packer, repacker: also handle fogs without drawsurfaces
* -repack -analyze switch: only analyze bsps and exit (to dump bsp resource calls)
* packer, repacker: handle nodraw patches correctly; warn on visible surface, having shader w/o maps (typically watercaulk)

Radiant:

binds...

* ctrl + shift + z: redo alias

misc...

* support misc_model::_remap facility of q3map2
* support indexed tga formats: (24/32bit palette)x(8bit colour index)x(rle/not)
* Model Browser: default bind '/'
	m1 = assign model to selected entity nodes (shift + e to select nodes of group entities)
	m1x2 = insert "misc_model" with given model
	m1 drag = rotate model
	Preferences.Model Browser: list of * separated folderToLoad/depth values, e.g. *models/mapobjects/99*maps/1*; */99* loads root
* new rendering system for volatile text
* new filter: Point Entities (nongroup entities besides misc_models and lights)
* unzoom from mouse pointer in 2D and 3D
* set clipper points to selected face on clipper tool switching-on
* entity inspector: select entities by key, value, key+value buttons
* no shaderlist.txt or empty one = load all shaders
* brush.icosahedron.truncate option

20200320

20 Mar 05:18
Compare
Choose a tag to compare

Q3map2:

* _maxlight worldspawn key (works unless exposure is used) (for those, who know, what they do)
* misc_model::_remap: also remap 'abrakadabraNAME' shaders by _remap = 'NAME;newname'
* -fillpink in light stage: fill unoccupied lightmap pixels with pink colour
* support -lightmapsastexcoord conversion to .ase
* support -shadersasbitmap in -lightmapsastexcoord conversion mode
* -lightmapsastexcoord conversion: support 'external lightmaps, referenced by shader' hack
* -extlmhacksize N (external lightmaps hack size) -light switch
	similar to -lightmapsize N: Size of lightmaps to generate (must be a power of two)
	but instead of native external lightmaps enables hack to reference them in autogenerated shader (for vanilla Q3 etc)
* -brightness only affects lightmap brightness, like q3map_lightmapBrightness, as there are -vertexscale and -gridscale for the rest
	is multipled with q3map_lightmapBrightness
* fix: qer_editorimage, q3map_lightImage etc work with file names, containing period

MBSPC:

* deduce OutputFile path out of input file path in -bsp2map, -bsp2map220, -entlist, -texinfo modes (like for .aas)
* append _decompiled suffix to decompiled map file names

Radiant:

binds...

* shift + }/{: CameraModeNext/Prev
* build menu.customize: ctrl + c / ctrl + insert = copy, ctrl + v / shift + insert = paste build presets and command lines
* ctrl + alt + m1: extrude pointed faces of selected brushes and selected faces inside/outside

misc...

* disable overlay front buffer rendering hack in 3D camera and completely in 64bit builds
* render 2D crosshair, as overlay, update it during manipulations
* fix active 2D view outline rendering in 2x2 layout
* prevent runouts of 2D views from grid area (world bounds)
* focus all 2D views on map load, selection by q3map2, NextLeakSpot, selection by brush/entity number
* fix invisible radiant with floating 3D camera window hidden in non floating layout
* calculate fov against max of 3D viewport width, height for consistency
* workaround gamma bug in 2D views and texture browser with fresh nvidia drivers
* suggest to automatically restart editor on change of preferences, which require this
* suggest to restart after selected game preference change
* build menu.customize: show placeholder string in entries for creation of new ones
* shader editor: support files with crlf line feeds in linux
		preserve line feeds on saving
		indicate 'modified' state by save button and window name
		view shaders from packs too (read only)
* brushexport plugin: "Weld vertices" option (welds inside group or object, thus result depends on collapse option)
* brushexport plugin: add Save button to reexport to recently specified file directly
* brushexport plugin: add 'Ignored materials' on Enter, delete on Delete
* brushexport plugin: for 'Ignored materials' use input after last slash, as comparison is only using this part
* brushexport plugin: make comparison with 'Ignored materials' case insensitive
* brushexport plugin: hide window on closing = preserve settings
* support Quake3 and Quake in -gamedetect (autodetects by availability of "baseq3/pak0.pk3" and "id1/pak0.pak" in folders prior to radiant's)
* improve alt + m1 resizing in camera for slanted faces
* csg tool: +faces face specification mode (only process selected faces)
* csg tool: also process unselected brushes with selected faces
* preferences->Grid->Max grid coordinate: how much big grid to render (visual aid for games with small world)
* open/save dialogs: use current file path, name, focus it, if present
* alt + m1 2D view face vertex manipulator: use 'faces on the only best plane' pickup strategy
* improved CSGTool::Hollow::diagonal algorithm (reliable for complex brushes complete extrude, handle simple brushes deep partial extrude)
* DragExtrudeFaces: diagonal extruded brushes joints if extruding multiple faces per brush
* DragExtrudeFaces: process with selected faces only, i.e. w/o objects selection
* shortcuts list: add Reset button (defaults selected shortcut)
* shortcuts list: add Reset All button (defaults all shortcuts)
* QE tool mouse move: highlight PlaneSelectables with alt/ctrl+alt, components in component modes

UPD 20200325

  • picomodel::ase: support standard empty bitmap name 'none'
  • support misc_model::_remap facility of q3map2
  • fix: do not affect styled lightmaps by floodlight

20190705

06 Jul 10:57
Compare
Choose a tag to compare

Q3map2:

* fix map region -light compilation: load lights from .reg, not .map
* model autoclip: handle 'triangle points almost on line' case
* allow maps with only point entity@( 0, 0, 0 )
* obj export: save in popular 'Y = Up, -Z = Forward' format
* picomodel::obj: load as popular 'Y = Up, -Z = Forward' format
* picomodel::obj: fix support of back references in faces
* picomodel::obj: support polygons > quads
* assign surfaceflags to brush 'bevel' planes, so physics like slick/nodamage/metalsteps function at brush edges and vertices
* picomodel: fix md2 loader
* fix unwanted culling of both matching brush faces

MBSPC:

* add MBSPC fork of BSPC utility to the project
* import fixes and QuakeLive support from mainstream BSPC
* bump hardcoded limits for Q3 and HL maps
* add -bsp2map220 switch, writting map in Valve 220 format with correct textures alignment for Quake 1/2, SiN and Half-Life BSPs
* various improvements of decompiling

Radiant:

binds...

* ctrl + r: clone stuff and repeat recent transforms; clipper tool toggle resets transforms stack
* bindable commands TextureProjectAxial/Ortho/Cam, using default texdef, unlike surface inspector buttons
* all plugins commands are bindable
* G: UV Tool (edit texture alignment of selected face or patch), modifiers:
	pivot control point and lines: ctrl = snap hard to face vertices and grid
	grid density controls: shift = change density of both axes synchronously, ctrl = power of two grid
	scale lines: shift = scale axes synchronously, ctrl = snap hard to vertices
	alt + m1 on grid = skew texture (is possible alright in BP and Valve220 map formats, not in AP); ctrl = snap hard to edges
	texture move: shift = only move along the axis with the biggest move, ctrl = snap grid lines hard to vertices and pivot
	patch controls move: shift = only move along the axis with the biggest move, ctrl = snap hard to grid and povit lines
	rotate: shift = rotate with step of 15 degrees, ctrl = snap hard to edges

menus...

* Brush->AutoCaulk Selected (F4); camera must be there, where legit player respawn could be, i.e. close to selection and not inside of a brush

misc...

* fix crashy assertions on vertices/edges selection (also = during vertex manipulations)
* disable points snapping to .125 grid during edge manipulation (already disabled for vertex mode)
* lower Winding_Clip ON_EPSILON to play with weird brushes w/o error
* fix brush shader names handling by bobtoolz
* "BuildMenu" preference: store filename (def. build_menu.xml) instead of absolute path for portability; absolute path is supported too, if set
* fix: load customized build_menu.xml from settings folder on the very first start and with senseless "BuildMenu" value
* brushexport plugin: write Kd (diffuse color) and map_Kd (diffuse map) data to .mtl
* brushexport plugin fix: invert Y during YZ swap; invert V of UV coords (correct texturing)
* brushexport plugin: default to 'Don't collapse' option
* entity inspector::smartEdit: display real key names
* entity inspector::smartEdit: show tooltips with extended names and descriptions for keys and flags
* prtview plugin: support PRT2 and PRT1-AM .prt formats
* bobToolz::Vis Viewer repair (shows current vis cluster brush drawsurfaces in green and rest visible ones in other colours for Q3 and Wolf/QL .bsp):
	don't crash on bsp w/o vis
	don't crash with origin in the void (includes inside of structural brush)(do reset)
	grab point to analyse from camera position with nothing selected; grab from any objects selection too
	fix rendering issues
	read surfaces written by q3map2 correctly + faster rendering code
	print number of loaded drawsurfaces to console for evaluation of optimization done
	fix a couple of of leaks and crashes after new/delete
* Shortcuts edit: fix "already assigned" check
* special mWheel scrolling mode during orbiting in camera (alt + m2)
* region XY: only deselect excluded objects for convenience
* fix precision of brush vertex editing and wrap merge
* fix sloped brushes evaluation at big coordinates (aka disappearing faces and brushes)
* prevent resizing brushes to zero volume by faces drag, try to stop at minimal configuration
* bigger components handles
* render occluded brush vertices differently
* consider texture alpha channel during rendering of shaders with qer_trans
* override fully transparent alpha of tga images by fully opaque
* fix alt + m1 indirect faces picking, when object is partially or fully out of camera view
* fix face centroids of small faces at big coordinates in 64 bit

20181213

13 Dec 19:15
Compare
Choose a tag to compare

Update 2018-12-16:

  • workaround for very slow fontconfig initialization @windows by Zarr
  • Ubuntu build by Fjoggs

Q3map2:

* picomodel::obj: fix black default vertex color, also use one from .mtl
* picomodel: fix parser->curLine for line number report (was increased twice)
* fix reading of old wolf, et, etut bsps
* picomodel: do some guessings about shader paths to handle more cases out of the box; ones are based on material and diffuse map names:
	name w/o path: assume textures are in the folder, where model file is
	absolute path or with ..: try to cut at "/models/" or "/textures/" (as if leading to game folders); do previous case, if not
	strip extensions and turn slashes to forward ones anytime
* picomodel::obj: fix diffuse map paths loading from .mtl
* picomodel::obj: fix over allocating vertices with multiple surfaces (by zturtleman)

Radiant:

binds...

* bindable commands FitTextureWidth, FitTextureHeight, FitTextureWidthOnly, FitTextureHeightOnly
* bindable commands EntityMovePrimitivesToLast, EntityMovePrimitivesToFirst, EntityUngroup, EntityUngroupPrimitives
* m3: copy texture name, alignment +new: color, light power, color
* alt + m3/drag: paste texture name (to pointed and selected stuff)
* shift + m3/drag: paste texture name, alignment +new: light power
* ctrl + m3/drag: paste texture seamlessly between brush faces +new: light color
* ctrl + shift + m3/drag: project texture from copied brush face +new: paste light power, color
* alt + ctrl/shift/ctrl+shift + m3/drag: respective texture alignment paste w/o texture name
* alt + m1 in camera: new resizing mode for brushes, curves and doom3 lights with direct and indirect selection methods
* alt + m2 in camera: orbit around clicked point
* ctrl + u: new uniform CSG wrap merge algorithm, merging selected brushes, components and clipper points
* z, backspace (DeleteSelection): also delete selected components (vertices/edges/faces) of brush in a component mode
* clipper::enter, shift+enter, doubleclick: merge brushes and components with clipper points, if no cut occured
* 3d camera clipper: move points in XY + Z style with shift, ctrl, alt; snap to grid with ctrl

misc...

* replace reGroup command with simpler to use Move Primitives to Entity one (select primitives to move, select target entity primitive, go)
* remove entity->ungroup command: change classname to worldspawn does equal job; 'create worldspawn' click ungroups selected primitives only
* add statusbar->patches count
* statusbar: show selected brushes/patches/entities counts, if anything is selected; total, if not
* default (QE) tool: new translation styles: "XY plane + Z with Alt", "View plane + Forward with Alt" (prefs->Selection->Move style in 3D)
* up/down floor walker: examine all types of scene nodes (was brushes only)
			consider only top/down and selected instances (was whole scene)
			fix jam at close coords
			also jump to bottommost coord of considered objects				
* enable entity->killconnect for game type="q1"
* map objects counts statusbar icons
* omit textures/ prefix in texture clipboard status
* disable clipper cut action on doubleclick, if click has set second point
* selector size: bump default 8->12
		clipper's one = user preference + 4
		hardcode for pivoted manipulators to 8 (since their size is constant)
* handle degenerate cases of 2 points clipper in camera (points on the line of view direction)
* preferences->Clipper->On DoubleClick do: clip or split (def = split)
* use external textures mipmaps generation, draw NPoT textures correctly
* update Texture Quality (mip level) preference without restart
* fix group entities name position with origin key used
* more robust open/save/import dialog path handling (could crash by opening file w/o extension or with illegal one)
	likely fix for extensions in uppercase in OSes with case dependent FSes
* rectangular selector gestures, enabling select, deselect and toggle behaviors
* fix clone, clone-make-unique, select all of type, expand selection to entities/primitives for maps w/o worldspawn
* fix automatic connection names resolving of cloned entities
* render direction arrow for group entities, having angle/angles key set or having angle/angles/direction attribute in .ent
* render workzone in 3d camera
* render size info in 3d camera
* rewrite and fix 2d background image feature; fix bug on intels (glPushAttrib)
* represent grid by 3d camera workzone
* arbitrary rotation dialog fix: also handle extra precision of values on execution by button press
* improve skew manipulation consistency in camera
* XY + Z style of transform manipulator translations
* improve rotation manipulations consistency in camera
* also filter "textures/common/donotenter" by Botclips filter
* fix: update component modes toolbar buttons on entering clipper mode
* new vertex editing mode, preserving non modified vertices (=adding/removing faces automatically)
* Snap to grid in a component mode: snap whole objects, if no components selected
* Snap brush/its vertices to grid: rebuild brush from snapped vertices with optional texture vertex lock
* insert brush vertices in vertex mode by clicking with no ones selected
* massive supplement/fixing of Q3 entities.ent; defrag.def->defrag.ent

20180723 Debian buster x86_64 build

02 Aug 06:26
Compare
Choose a tag to compare

Acknowledgment to Vita