Files
netradiant-custom/docs/changelog-custom.txt
T

1155 lines
77 KiB
Plaintext

Q3map2:
* native surfaceparm noob support (no -custinfoparms needed)
* -noob in bsp phase: assign surfaceparm noob to all map surfaces
* surfaceparm ob: skip assigning surfaceparm noob with -noob on that
* farplane modes: radius+radius, origin2origin, exact (add r/o/e to the number to enable), < 0 works too
* samples+filter - enabled again, makes sense
* -vertexscale
* fixed -novertex, (0..1) sets
* quick q3map_novertexlight (?)
* fixed _clone _ins _instance (_clonename)
* -nolm - no lightmaps
* ent keys aliases:_sa - shadeangle;_ss - samplesize
* -shift N -shift X Y Z: shift whole map to some coords
* more fogs (256) (ingame appearence lots of ones might be bugged due to engine arrangement, needs testing)
* q3map_remapshader remaps anything fine, on all stages (effect is: postrenaming shader when things are have been done)
* fixed 'unknown argument 1' at -lightanglehl
* typo at -dirtmode
* -bouncecolorratio 0..1 (ratio of colorizing sample by texture)
* -debugclip: autoclip debug, uses shaders debugclip, debugclip2
* -clipdepth F, def 2, _clipdepth
* fixed model autoclip (64u thick brushes/no collision at all in some cases)
* pyramidal etc zillion (20!) of autoclip modes
* brush planes normals snap: +fix of vector-is-close-to-be-ON-axis case, was breaking slivers collisions, drawsurfs
* removed stuctural caulk in models, was broken anyway
* alphamod scale: works now
* content of brush is determined now not by 1st side in brush definition (inconsistency!)
but on priority: liquid > fog > playerclip > nonsolid > solid
ex.: nodraw solid shader works now for hiding liquid or fog volume splits / unwanted faces
solid or nonsolid shader + face(s) of playerclip = playerclip
solid shader + face(s) of nonsolid = nonsolid (b4 could happen: 5nonsolid sides + 1solid = solid brush )
* >2GB makefile option, allows up to 3GB ram on 32bit, 4GB on 64bit
* speedup patch to use fast sqrt at some points of light phase, where precision is not needed
* shot down spammy warning about samplesize for lmsize<=128; -debugsamplesize to show
* numBspModels ('brusmodels') stat emitting
* -pk3: autopackager mode(complete Q3 support); bsp path as input; switches: -dbg - talkative mode, -png - include pngs, at highest priority
is using file 'gamename.exclude' to exclude vanilla game resources
tip: ioq3, netradiant, compiler (and packager) treat *.pk3dir directories as separate pk3 files
* packer: rewrote logic to make sure not to include excluded stuff
* packer: preserves file date, if grabbing file from .pk3 too
* packer: in case of missing *ingame* resources pk3 gets _FAILEDpack suffix
* packer: +warnings on implicitMaps, mapNoComps
* packer: known problem: minizip crash, when trying to get file with 2039 year date from disk
* -repack: repacks multiple maps, strips out only required shaders; main argument is single bsp path or txt with full pathes to bsps
switches: -dbg: talkative mode; -png: include pngs, at highest priority; -complevel: -1..10, def 0, compression level
uses additional exclusions file repack.exclude with different logic
* -brightness 0..alot, def 1: mimics q3map_lightmapBrightness, but globally + affects vertexlight
* -contrast -255..255, def 0: lighting contrast
* fix: number of problems, found by Visual Studio's static code analyser
(https://github.com/TTimo/GtkRadiant/commit/76ea7385dd94aac435a858b05f87820e1cfadfd6)
* decompiling: fix: broken brushes, empty brush definitions; shut down too usual warnings; with -force tries to decompile model autoclip too
* decompiling: -fast mode for BSPToMap conversion
* do not delete q3map2_*.shader on minimap generation
* packer: pack actual loaded bsp instead of one, found in vfs
* report full / full pk3 path on file syntax errors
* bumped stack size to 4Mb to fix crash for huge skies, using old shaders with fairly useless q3map_surfacelight + q3map_lightsubdivide < 999 combo
* _setmaxstdio(2048) for windows
* game_qfusion update
* new area lights backsplash algorithm ( by Jelvan ), hijacking temp area lights ( to simulate volumetric behavior of source ones )
* fix: create backsplash for area lights, while q3map_lightsubdivide'ing too
* no backsplash for area lights, if surf == sky
* report patches count in -info
* -exportents to exports entities to a .ent file
* unvanquished game support
* -fs_basepath: can be used more than once to look in multiple paths (Sets the given path as main directory of the game)
* -fs_game: can be used more than once (Sets a different game directory name (default for Q3A: baseq3))
* -fs_pakpath <dir>: Specify additional custom path to assets (can be used more than once to look in multiple paths)
* fix undocumented unexpected LokiInitPaths
* -help option (-h, --help)
* new slightly less careful, but much faster lightmaps packing algorithm (allocating... process)
* -slowallocate switch to enable old lightmaps packing algorithm
* Subsampling...collapsing...sorting...allocating...storing...projecting... timers
* -backsplash (float)scale (float)distance: scale area lights backsplash fraction + set distance globally
(distance < -900 to omit distance setting); def = 1 23; real area lights have no backsplash (scale = 0)
q3map_backsplash shader keyword overrides this setting
* fix: parsing of /* */ comments, having * or / inside
* Valve220 mapformat autodetection and support
* add extra surfaceflags from quakelive
* fix misspelled 'donotenterlarge' contentflag for RTCW & ET
* buffered broadcast xml stream to dramatically increase compilation monitoring speed
* mark warning messages with respective flag for colorized monitoring output
* colored warnings and errors in Windows console
* modify message flags system to allow SYS_WRN | SYS_VRB, SYS_ERR | SYS_NOXML etc combinations
* 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)
* 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 functions at brush edges and vertices
* picomodel: fix md2 loader
* fix unwanted culling of both matching brush faces
* _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
* 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)
* 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
* misc_model _target and group entity _targetname key aliases for baking the model into entity
* -keepmodels in -bsp / _keepModels on worldspawn: keep misc_model entities in the BSP file after compile
* fix: don't turn lights with targetname to styled for IBSP, as they are not switchable there
* fix RBSP style keys on -exportents and decompilation, so that they are alright for -onlyents and compilation
* -nobouncestore: Do not store BSP, lightmap and shader files between bounces
* fix custom shaders generation for lightstyles and external lightmaps hacks for :q3map suffixed shaders
* -maxmapdrawsurfs <N>: Sets max amount of mapDrawSurfs, used during .map compilation (-bsp, -convert), default = 131072
* -maxshaderinfo <N>: Sets max amount of shaderInfo, default = 8192
* adjust -light -trisoup to enable performance hack for games with low verts per lmed surf count (e.g. 64 in Q3):
-bsp -meta -mv 999 //get big lmed surfs with max verts count = max trisoup verts (-debugsurfaces to debug)
-light -extlmhacksize 1024 -trisoup //gen shaders for external lms and mark as trisoup
* generate shaders to force nomipmaps flag on external lightmap images created by lightstyles and external lms hacks
* -nobrushsnap: disable brush vertices snapping (of drawsurfs) (experimental, keep eye on meta merge efficiency)
* improved brush faces triangulation wrt degenerate triangles production (non -maxarea algorithm)
* -globalflag <surfaceparm>: add surface flag to every bsp shader. Reusable, e.g. -globalflag slick -globalflag nodamage.
* fix deformvertexes autosprite2 on brushes and models
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
* 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
* improve decompilation quality of Q1, HL maps greatly (texturing correctness, less brushes)
* -lessbrushes switch: less brushes when decompiling Q1, HL maps at the expense of texturing
* fix build speed penalty due to terminal output
* decompile brushes with texinfo -1 ZHLT optimisation, deduce clip, AAATRIGGER, NULL textures
Radiant:
binds...
* wasd camera binds, c - deSelect, z - delete
* ExpandSelectionToEntities - shift+e
* make detail - alt+d
* make structural - alt+s
* paste to camera - shift+v (alt+v was leading to texBro-View menu)
* arbitrary rotation - shifr+r
* arbitrary scale - ctrl+shift+s
* shift+n - cycle patch tex projection
* ctrl+f - fit texture
* bind a, d in no mlook mode - CameraStrafeLeft/Right
* entity inspector: Tab enters Key field, toggles between key/value fields; Del deletes keys; Esc quits
* douplicated basic shortcuts: arrows - camera freemove, ESC - deSelect, backSpace - delete
* tex bro: left double click loads directory, containing active shader + focuses on it
right double click loads 'common' directory
* M1 click: tunnel selector
* shift + m1 drag: paint objects selection
* ctrl + m1: select brush face
* ctrl + m1 drag: paint faces selection
* shift + m2: tunnel selector
* shift + m2 drag: rectangular toggle selector
* ctrl + m2: tunnel face selector
* ctrl + m2 drag: rectangular selector of brush faces
* alt + m2 drag: 2d zoom in/out
* ctrl + m1: quick clipper mode (quits one after split done)
* Q - toggle QE/Scale tools (MouseDragOrScale command)
* new MouseRotateOrScale command
* shift + m3: set custom transform/pivot origin in pivoted mode
switch manipulator mode = disable
is snapped to (if SnapToGrid is on):
grid
selection bbox edges
selection bbox origin
* F5: run first in the list or recently invoked build option
* F11: fullscreen
* F12: maximize main wnd view under cursor
* ctrl + t: patch thicken
* ctrl+tab (nextview cmd) = center on selected in 4 views layout
* Tab: focus camera on selected
* m1 + shift drag: snapped modes of manipulators:
freedrag: constrain to axis with biggest move amount
rotate axis: snap to angles, multiple of 15'
scale axis: scale all axes synchronously
scale free: scale two axes synchronously
* m1 + ctrl drag: snap bbox during manipulators manipulations:
drag axis, freedrag: snap bbox edges to grid on dragged axes; allows more varied snappings, then SnapToGrid command
scale axis, scale free: snap bbox size on scaled axes to grid
* QE tool: alt + m1 drag in primitives mode:
click on vertex location = quick vertices drag (unlimited selection depth)
click outside = brush faces shear
click face = clicked faces shear
* ctrl + shift + m1 (in texbro): open shader in external editor
* alt + m1 click/drag in component modes: select objects
* m3 in texbro: select texture w/o applying to selection
* `: XYFocusOnSelected
* ctrl + shift + e: Select Connected Entities
* Tab in freelook: smooth turn around selected, while focusing on one
* m2x2 in camera: entities creation menu
* ctrl + shift + v: MoveToCamera (translate selection to camera origin)
* m2 in entities creation menu: change classname; ctrl + m2: change classname, don't close menu
* ctrl + m1 in entities creation menu: create entity, don't close menu (+offset every next entity by 8u or gridsize, if > 8)
* m1x2 on clipper point = do clip
* ctrl + e: ExpandSelectionToPrimitives (select group entities w/o parent node)
* ctrl + m3 texture painting by drag
* Tab + mWheel in freelook: offset focus distance with dist2origin/8 step; exponentially, if moving far away
* m2 drag in cam = sideways+updownways strafemode; do not enter/quit freelook, if long button press (>300ms)
* m1 drag in freelook = sideways+updownways strafemode (mainly for visual editing)
* ctrl + m3/drag = seamless brush face to face texture paste; works for any faces in BP mode, only axial ones in AP
* ctrl + shift + a: select all visible brush faces and curves, textured by selected shader
(more obvious way, than existing ones: components mode::faces->shift+a and find/replace to empty)
* shift during creating brush = quadratic brush
* drag clipper point + shift = constrain to axis with biggest move amount
* doubleClick/Enter in Entity inspector Class list = convert entities
* ctrl during creating brush = cube brush
* m3: apply texture name and alignment to selected primitives and faces
* ctrl + shift + m3/drag: project tex from face in tex clipboard to brushes(BP format) and curves
* shift + m3: apply texture name and alignment to selected primitives and faces (m3 was inconsistent + often required quite deep planning)
* ctrl + shift + m3: also project tex from face to selection
* m2 in Surface Inspector->fit width/height = fit width/height, keep height/width
* shift + n: brush texture reset + patch texture cap
* 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
* 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
* 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
* ctrl + shift + z: redo alias
* ctrl + m3/drag: also paste texture seamlessly from brush face to patch and vice versa, when patch edge is on face plane
* ctrl/ctrl + shift modifiers in value spinners divide step by 10 & 100 respectively
* Model Browser: unmoved m2 resets models rotations
* ctrl + shift + u: CSG Intersect
* m1 drag + ctrl (Drag tool, 3D view): move-snap selecton bbox corner to pointed position in scene
* m1 drag + alt + ctrl: rotate-snap selection bbox to pointed brush face plane (by opposite to bbox grab side)
* m1 drag + ctrl + shift: move selection along initially pointed brush face plane
* add alt + m1 selection style to transform manipulator for scaling in 3D
menus...
* smartified content basically
* hidden killconnect for games, which are not nexuiz
* view-orthographic+: center 2d on selected (ctrl+shift+tab)
* removed parent from menu, regroup does work + isn't bugged
* edit+: SelectAllOfType (shift+a)
* modify+: snap to grid (ctrl+g)
* view->show+: ToggleCrosshair, show size info, show grid
* view menu: +patch inspector
* curve->texture+: flip patch tex ( {ctrl}shift+i ), naturalize, cycle projection
* cleaned, updated help menu links,+: Mouse Shortcuts, recent offline&fixed Shader Manual,
netRadiant specific docs, lists of q3map2 switches/entity keys/shader directives
* make .pk3 to q3 build menu
* help+: Blendmodes cheatsheet
* simplified curve menu
* view->show: toggle crosshair, size, grid are check menu items
* view->show: +Show Light Radiuses toggle
* view->show->show stats makes effect immediately
* view->show fix: check menu items are sensitive to changing options via shortcuts
* Modify->Nudge:+ Nudge +Z, Nudge -Z
* view->show: +Entity Names = Targetnames (option to draw targetnames, not classnames; def = no)
* Shortcuts item moved from Help to Edit
* misc->colors->opengl font selector
* view->show->Entity boxes (always show bbox for ents with model)
* Misc->Colors->Themes->Blender/Dark color theme
* View->Show->Entity Connections option
* Brush->Copy/PasteFaceTexture: show contextual Copy/Paste commands (dependant on faces selected)
* 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->Colors->Themes->Adwaita Dark color theme
* view->filter->sky: Q3 shader based skies (skyParms keyword)
* Misc->Colors display colors
misc...
* removed note to save before going to preferences, project settings
* translucent textures are visible, while selected, too; +matching trans polys are visible simultaneously
* fog is automatically transparent
* fit width, fit height butts in surf inspector (for trims) (saves scales ratio)
* Doom3LightRadius: failed to parse default light radius - spammy msg removed
* 1.5x bigger light ents (8->12u)
* longer list of recently opened (4->9)
* fixed warning on import (q3map2_type not found)
* defaulted brush primitives for q3
* crosshair display: is saving in prefs
* defaulted Maya theme
* removed question to override current compile monitoring
* included meshTex plugin
* fixed q3 entities.ent and defrag.def
* filters toolbar (disableable)
* fix: shift + m1 click in tex browser to open shader in internal/external editor;
defaulted internal; focuses on wanted shader; correct opening/saving
* fix: angles "0 x 0" autoconvert to angle "x" on transform (was getting deleted w/o a trace)
* improved mwheel 2d zoom by Neumond
* hollow: produces not intersecting brushes
* +makeRoom: like hollow, but extrudes faces outwards; for making rooms
* deactivating tex dirs tree after loading dir, so SPACE and ENTER aren't broken for 2D after that
* Regular, RegularLeft layouts: smaller console, bigger tex browser
* Rotate, Scale dialogs: values aren't erased on Enter, OK, Apply (are on cancel, esc)
* Rotate dialog: fix: new value in focused field wasn't taking in account on Enter
* +updating texture directories list on 'flush and reload shaders' (reloading shaderlist aswell)
* NumLock perspective window fix
* ctrl+k(ConnectEntities): friendlier to complex connections, takes in account existing keys
(priority: target > targetname > none)
* +'all Supported formats' default option in open dialogs
* defaulted show light radii
* camera fov: 90->110
* cubic clip: off by default; bigger def dist; fixed button's shortcut tip
* prefs: Min & Max texture thumbnail size + dependant on scale;
def = *scale .5, min 48, max 160 (makes range 96-320 visually differentiated)
* fix of: convert group entity to diff one = entity w/o objects
* asking for game path at 1st start, even if one, specified in .game exists (auto picking could make confused)
* disabled game autodetecting: (~2min awaiting on w7 in non admin mode was confusing)
* _setmaxstdio(2048): tested max pk3s count: 1021
* curve: deform (randomize Z points coord at given amount)
* patch thicken
* trigger_* entities get textures/common/trigger tex on creation
( unless different is set in .game file via shader_trigger key )
* opening *.map, sent via cmd line (can assign *.map files in system to be opened with radiant)
* -aero cmd line key to enable aero transparency
* opening maps with bad tex defs (.#QNAN, .#IND, .#INF)
(happens sometimes after rotating & often scaling with tex lock (in BP mode)); error->warning
* updating texture browser height after thumbnail scale, min/max size, show shaders options changed
* tex bro: show textures option (to leave only shaders)
* tex bro: Show all (ctrl + a) toggles 'Hide unused' (typically: ctrl+a: get all used, once more ctrl+a: get all loaded)
* tex bro: 'flush and reload shaders' autoloads last selected dir
* tex bro: show alpha transparency option; def = yes
* tex bro: white+black stipple around shader thumbnails + is visible, while being selected
* filter toobar is not part of plugin one
* filter toobar buttons also handle right mouse clicks:
caulk: apply caulk tex
clip: toggle apply clip/weapclip tex
hint: toggle apply hint/hintlocal/hintskip tex
triggers: apply trigger tex
liquids: toggle apply watercaulk/lavacaulk/slimecaulk tex
areaportals: toggle apply nodraw/nodrawnonsolid tex
shader names are configurable through respective shader_* keys in .game file
details: make detail
structural: make structural
* png icons with real alpha; partially antialiased
* updated gtk+ lib to 2.24.10 version
* fix of 2.24 related: minimize floating window = whole app minimizes + can't restore
* fix of 2.24 related: glwidgets inside floating windows were not shown after hide/show of parent widgets
* local gtk2 themes support; cfgs are .gtkrc-2.0.radiant, .gtkrc-2.0.win; +~100 themes included;
MS-Windows theme is one, inheriting current appearence on Windows
* tex bro: menubar = toolbar
* GTK2 theme & font selector (Misc->Colors->Gtk theme...) (need restart after pair of naughty engines tho)
* openGL implementaion of rubberband selector (w/o rerendering whole scene) (fixes visual issues with Aero)
* shader editor gets focus after been hidden behind main window and called again
* patch thicken: significantly more fail safe; correct handling of cycled patches
* fix: was parsing vfs twice; pk3s were being opened twice during runtime
* fix: shortcuts work after startup (plugins bar buttons were stealing focus)
* updated gtk+ lib to 2.24.29 version
* fix: no 'gtk-file' icon warning
* fix: 1x1 textures crash and appearence
* fix of: create func static in non doom3 gametype = group entity w/o objects
* merged tex bro textures borders; stipple indicates shaders
* realigned tex bro text, so one doesn't collide with textures borders
* fix of texture focusing in tex bro
* grayscale RLE TGA support
* unsupported Doom 3 entity keys: popup->log warning
* patch inspector: +flip texture buttons
* disabled texture lock by default (confuses novices, suddenly)
* added MeshTex plugin src to project, compiled, fixed (works now-)
* fix: texbro m2 drag in 2x2 layout
* fix: crash in (texbro + freezePointer)
* fix: all sorts of problems with freezePointer drags near widget borders
* ctrl+shift+mouse strafe mode: moving mouse forward moves camera forward, back - back
* add map to recent ones on SaveMap (instead of doing that in 'open by cmd line': spoils the list)
* fix: spin buttons alignment in patch inspector
* fix: patch inspector window pos save/restore during run time
* removed console, texbro buttons in regular layout
* ent inspector: saving window splits pos in non regular layouts
* ent inspector: saving lower split pos aswell
* ent inspector: fix of: minimizing part behind middle to 0
* saving find/replace wnd pos; bringing ontop, if is (present + called)
* moved 'find unique name for' output to _DEBUG
* fix of 'GLib-CRITICAL **: Source ID was not found when attempting to remove it' in buid monitor timer
* fix: build menu customizing: command field is reachable right after creating new entry
* CSG Tool
* texbro: disable alpha transparency by def; isn't good in half of cases
* find/replace: tooltip helper note about search mode
* fix: texbro: blured stipple with green and red borders
* fix: select inside and touching: ignored ANY filters and hiding, and region
* fix: M3 tex paint/grab ignored _hidden_ models
* fix: M3 tex paint/grab ignored group ent (world, triggers, et cetera), model filters
* fix: shift+a by tex: ignored group ent (world, triggers, et cetera) filters
* fix: tex find/replace: ignored any filters, regioning & hiding
* fix: shift+a by classname: ignored filters, hiding, region
* fix: floor walker ignored group ent filters
* fix: csg subtract ignored group ent filters
* fix: invert selection: ignored group ent filters
* fix: tex find/replace: 'select by shader' mode for patches (was replacing with notex instead)
* fix: select inside and touching: were selecting group ents, as single unit (=sensitive to parent node and its bbox)
* fix: csg merge two group ents = empty group ent
* fix: csg subtract group ent completely = empty group ent
* fix: hollow group ent: could produce empty group ent
* func_groups are filtered by world filter only, not entities one
* new func_group filter, filterBar button; Rightclick = create func_group
* Entity: arrowheads, showing direction of connection-lines in addition to color-code; New algorithm: are visible in all orthogonal projections
* tweak: do not render 'misc_model' & 'light' entity names
* filters: patches: +filter ones with surfaceparm playerclip
* translucent filter also works for shaders with qer_alphafunc
* filter areaportal, if single face matches (allows case with other faces, using 'skip')
* filter translucent, if single face matches
* filter liquids by surfaceparm {water, lava, slime} in addition to textures/liquids path
* fix: deselecting particular primitives, invert selection work for expanded group entity selection (these are deselecting parent node)
* do not render entities selection in components mode; fixes 'invisible components for expanded group entity selection'
* fix: clone group ent / map import / saving map as : group ents name labels at 0,0,0;
* paint selectors work in freelook mode
* fix: crash in CSG::BrushDeleteSelected
* fix: crash in Brush::windingForClipPlane
* disabled snapping of transform/pivot origin by default
* Scale tool: now scales bbox by gridsize increment
* m1 selector fix: shift/ctrl + m1 drag, release shift/ctrl, release m1 = replace brush selection
* m1 selector fix: do not select when dragged off pivot in pivoted mode
* don't restore cursor pos after quit mlook (do center)
* toggle and paint selectors do select matching stuff (depth threshold ~= 0.1 u)
* fix: textures find/replace wnd better default pos, size
* fix: crash in CSG::Subtract
* fix crash: main wnd maximized + 'start on primary monitor' off + monitors > 1
* correct save/restore of main wnd pos/size and maximized/fullscreened states
* scale widgets consistently along with main wnd, while using regular layout
* square option in exact patch creators (= redisperse rows + cols)
* axis option in patch deform dialog
* spinner instead of entry in: patch deform, thicken; brush prism, cone, sphere, rock dialogs
* maximized brush cone prefab sides limit
* option to disable main toolbar
* removed bobtoolz caulk selection button; filterbar one does the job better
* filterbar: + region set selected button; rightclick = region off
* filterbar: + hide selected button; rightclick = show hidden
* SelectionSystem option: prefer point entities in 2D views (def = yes)
* filterbar: indicate region, hide states by buttons states
* fix: region compiles (run build with region enabled = compile regioned part only)
* solid selection boxes by default (m_bNoStipple)
* always use stipple for stuff behind stuff in 3d (was dependent on m_bNoStipple)
* del unused ChooseSmallGridMajorColor ChooseSmallGridMinorColor preferences pipeline
* fix: Active View Name and Outline... Clipper... colors saving
* fix: ChooseCameraSelectedBrushColor changes the color (requires restart)
* fix: ChooseSelectedBrushColor preference saving (requires restart)
* fix rubberband selector appearence in 2D with 'show window outline' option enabled
* multiple projections layouts: activate a projection on zoom
* multiple projections layouts: added wnds updates to correctly indicate active projection (via wnd outline and projection name)
* draw projection name is independent from show coordinates option
* multiple projections layouts: grayscale axes in inactive views
* 'show coordinates' is disabled by default
* quick (hacky) method to render things, indicating viewport being active or not (axes, view name, wnd outline)
* quick method of rendering camera icon (w/o rerendering the scene) = great speedup for camera moves
* fix: center on selected cmd works in floating views layout
* projections are switchable in floating views layout
* defaulted 'mark active view by outline'
* shader editor lives on top of main window
* csg tool: 'active projection' exclusion method instead of axis selection
* csg tool: new 'selected faces' & 'cam direction' exclusion methods
* new active projection dependent commands MirrorSelectionHorizontally, MirrorSelectionVertically,
RotateSelectionClockwise, RotateSelectionAnticlockwise + toolbar buttons
* snap transform origin for rotate 90' commands, if one is not custom (is good to stay on grid)
* 2d camera icon in ZY, ZX views represents yaw aswell
* M3 camera direction control: disabled snapping
* M3 camera direction control: affect yaw instead of doing pitch > 90' in ZY, ZX views
* fix of: ctrl+m3 in 2d, release ctrl, then m3: m3 drag works like with ctrl pressed
* removed 2 buttons mouse option: was only affecting m3 camera control binds
* fix of: press any modifier (ctrl/shift/alt) + any mouse, release modifier, then mouse = chase mouse broken
* removed 'Right Button Activates Context Menu' preference
* brushExport plugin, prtview plugin, bobToolz::Polygon Builder, about, textures reset, messagebox windows live on top of main window
* removed 'Update views on camera move' option: camera icon updating is enough quick
* fix: bobToolz::split patch rows+columns - works if rows = 3 ( clos and rows were mixed up in general )
* entitySetColour, entityNormalizeColour are undoable
* bobToolz::splitPatch commands place result into parent entity (worldspawn or group one)
* bobToolz::mergePatches places result into last selected patch's parent entity
* bobToolz::mergePatches: remove left empty group entities
* SelectAllOfType works for group entities, whose brush(es) are selected (no parent node selection needed).
Algorithm is: get [ent inspector's keyName field(if visible) or classname]'s keyValues of selected ents ('no key' counts, as property, too);
Then select ents with according keyName+keyValues; Worldspawn is omitted;
Otherwise (nothing or worldspawn selected) select primitives, holding selected texture;
in 'Faces' component mode = select specifically faces, holding selected texture;
* SelectAllOfType selects child primitives of group entities
* ExpandSelectionToEntities works for worldspawn entity too
* fix: CameraFreeMoveUp, CameraFreeMoveDown shortcuts are editable
* prism, cone prefabs: increased precision
* fix: out of pivot rotating is active from start, no additional magic is needed for that
* fix: could lock (but not set) transform origin in non-pivoted mode
* arbitrary rotation dialog allows decimals
* fix: grid rendering with ToggleGridSnap off
* fix of: scale tool scale, locked to 1 for things w/o bbox with bigger grid (e.g. single misc_model)
(snapped drag start was = 0, scale func depends on initial click point: closer to center = more extreme scaling)
* fix: make detail / structural are undoable
* default autosave period: 5 -> 15 minutes
* texBro option: hide nonShaders in common folder; def = yes; are shown, if are in use
* fix: texBro & tags treeviews scroll focus follows folder selection; (text search shortcut is ctrl+f on windows)
* fix: detached tags menu appearence
* new icon
* load (aka 'search') tags on m1 dbl click
* QE tool in a component mode: perform drag w/o hitting any handle too
* fix Doom3 crash in FilterAreaportals filterbar button
* fix: mixed up 'Up' & 'Forward' mouse strafe options
* mouse strafe options: + old 'both' one with inverted forward, None
* fix: update projections on prev/nextleakspot
* use active projection for prev/nextleakspot tracking
* fix of: no redo available after ( nothing selected + M1 click ) in 2D
* fix: nudge left, right, up, down commands work in scale, rotate, clipper manipulator modes
* deprecated 'Disable system menu on popup windows' preference, was doing nothing
* preference: Nudge selected after duplication (def = no)
* preference: Left mouse click tunnel selector (def = yes)
* wrap long command lines in build menu -> customize
* map info dialog: + Total patches, Ingame entities, Group entities, Ingame group entities counts
* fix: map info dialog -> sort by count works
* fix of: minimize main wnd, close, start = cam, cons, texbro null size
* fix: do not unmaximize external shader editor on win
* fix: blank cursor in radiant after calling external shader editor on win
* fix shader editors stuff for non uindowses
* 'Shader Editor Command' preference is available on win (is used, if set; otherwise try default os action for file)
* fix: 'Shader Editor Command' preference allows selecting executable via dialog
* GDK_HAND2 cursor in clipper tool mode
* fix: clipper points have numeric labels
* '2d zoom in to mouse pointer' option works for alt + m2 zoom
* '3d zoom in to mouse pointer' option (def = yes)
* fix: correct selected entity and brush numbers display in 'Find brush' dialog
* prefer to display texture width and height in status bar over name (PANGO_ELLIPSIZE_START)
* fix: don't save empty group entities (but worldspawn)
* invertSelection inverts components selection in component modes
* regular gtk search in entity inspector -> entity class list
* fix: entities, converted to ( targeted + having model + not loaded b4 ) ones weren't selectable normally + rendered only while 0 0 0 was visible
* ExpandSelectionToEntities works, if only parent node is selected, too (via entity list)
* Select & normalize color commands work for group ents, if contained primitive is selected
* remove boolean key, if set via entity inspector checkbox to 0 (ex: light - sun checkbox: was _sun 0, if off)
* button to call color selector from ents inspector color entry
* explanatory text on initial engine path configuration
* don't show Global preferences by default, except first start
* activate {xyview, camera, texbro glwidget} on mouse button press and scroll, so {texbro treeview and console} hotkeys do not override global ones
* activate windows, containing xyview, camera, texbro on mouse scroll
* fix: autoapplying trigger texture on entity creation is undoable
* fix: texbro m1/2 x2 work, when some tag is loaded
* bold key and spawnflags names in entity inspector entity description
* fix: +CameraFreeMove* command, +shift, -CameraFreeMove*, -shift = still moving (reason: caps letter)
* search in shortcuts list
* edit shortcuts on m1 dbl click
* edit shortcuts fix: could highlight a few rows for editing
* texbro: toggle off hideUnused on loading a tag
* fix of: undo something, select tex in texbro, no redo available
* epsilon in resize brush selector to prevent perpendicular faces pickup
* clone group entity primitives to separate entity on cloneSelectedMakeUnique
* Focus on Selected option in Entity List (focus cam and center xy)
* entity inspector: connected entities walker (select target / targeting / both)(focus)
* activate key_press_handler before special_key_press_handler to allow CameraFree* commands, bound to special (gtk: !accelerator_is_valid) keys
* update workzone on partial deselecting too (was updating only on adding to selection)
* do not delete selected on entities creation, just deselect
* ExpandSelectionToEntities: do not select invisible nodes
* fix: snap translation amount on paste/move to camera commands instead of stuff's origin (to keep one with size (2*N + 1)*gridSize on grid)
* MapName build system variable (can use to make build menu entry to run map in a game)
* build->customize: list available build variables
* texture browser: gtk search in directories and tags trees
* fix: build menu->customize Cancel button cancels (was reloading menu from disk)
* build menu->customize Reset button (= reload menu from disk = editor start state)
* fix: laggy selectors, manipulators in mlook mode
* scale free->snapped mode: constrain to two axes, most perpendicular to view direction (i.e. works for two axes in 3d too)
* scale free->snapped mode: use min move delta for scale (was max = hard to scale down); fix ZY projection case
* fix: pointfile was considered as shown, when trying to load missing one
* entity inspector->EntityProperties treeview: Tab keypress = focus Key field
* 2x2 layout: allow gtk to handle separators positions; fixes: unmaximize wnd, maximize = horizontal separators > center
fixes: unmaximize wnd = not updated views glwidget positions on some systems
* fix: paint selector, selecting occluded faces
* camera->field of view option
* wider Texture Gamma preference range
* wad games->texbro treeview: do not group names, using underscore; fixes crash on loading parent; fixes mess if path contains underscore
* fix: do not quit freelook on autosaving
* entity creation menu has ability to be 'tearoff'
* wad games: fix TextureBrowser_ShowDirectory crash on loading common dir (can cfg to load .wad), on loading containing dir (do nothing)
* wad games: fix crash on selecting a shader (not a plain texture) in tex bro
* wad games: more reliable filterbar texturing defaults
* shader for 'caulk new brushes' and 'clipper uses caulk' options is optional via 'shader_caulk' option in .game
* fix: q1 mdl reader out of bounds reading crash
* fix: q1 mdl loading of MDL_FRAME_GROUP case
* fix: rightclick main wnd border, release in texbro glwidget == crash (unfreezepointer)
* texbro: search in currently shown textures
* ask for saving nonsaved map on project settings change
* func_detail to nongame group ents counter
* deiconify main wnd, unmaximize maximized view on app closing to save correct layout data
* close preferences dialog on ESC
* Enter = Ok in global and path settings dialogs
* print renderer stats in XY views too
* global 'show renderer stats' option, def = off
* ~10x faster opengl text rendering
* calculate farplane from g_MaxWorldCoord, g_MinWorldCoord (was const 32768)
* 1.0f nearplane
* numerous code fixes
* texbro search: SearchFromStart option (match start of texture name)
* texbro search: entry is activated/deactivated by mouse pointing
* texbro search: clear button
* renewed q1 gamepack ( by w_w )
* extradebug_quicker BUILD mode (defines _DEBUG_QUICKER = no slowing down debug renderables)
* draw bbox for having model + selected entities
* disabled depth write for qer_trans surfs and highlight (=any amount of layers is visible)
* 20x faster light radii rendering
* light radii are coloured and additive
* improved q1 pack (common textures, fix entities sizes)
* anisotropic textures filtering option (def = yes)
* GL_TRIANGLE_STRIP light radii spheres (2.5x faster)
* new very fast entity names rendering system
* render entity names in cam within < 512u dist or if selected
* fix: noninitialized lightradii, if light value is not set (example: lightjunior)
* light power is adjustable by mouse drag
* oranje names for group entities, having childrens selected (also no distance cull in cam for those)
* QuakeLive game pack
* fix: QNAN texture projection after scaling cuboid on Z axis (brush primitives + texture lock)
* preferences->display->entities->Names Display Distance (in cam) def = 512u
* always show selected/childSelected entity names (unselected is optional)
* fix: mouse texture grab/paint commands ignore filtered faces (caulk filter)
* fix name case sensitivity in shaders (non plain textures) loading during map/model loading
* all patch prefabs are created aligned to active projection
* preferences->display->entities->Names Display Ratio (2D): hide names, if view_size/bbox_size > value; def = 64
* surface inspector: renamed poorly named Axial button to Reset
* arbitrary brush texture projections in brush primitives map format: axial, from ortho view, from cam
* frame 2 frame time render stat
* renamed confusingly named command GroupSelection to RegroupSelection
* fix: changing clipper color via theme loading doesn't require restart
* fix: changing CameraSelectedBrushColor, SelectedBrushColor don't require restart
* -gamedetect command line option to enable game detection
* don't disable aero by default; -aero command line option disables one
* "Don't show" (during session) checkbox in Light Intensity dialog
* fix: show-grid toggle hides grid, when snap-to-grid is off too
* region mode: draw out of region part of grid in subtle style
* restrict unwanted angle(s) keys commits on moving generic, eclassmodel, miscmodel entities
* reverted angle(s), origin, scale entity keys save format from %f to %g
* fix uniform rotation operations for generic entities with angles key
* use more precise meth for rotating point entities with only angle rotated
* snap tiny inaccuracies in angle(s) and origin keys of point entities
* workaround: don't discard empty group ents, having origin key
* entity class convertion: prevent converting worldspawn; prevent converting point entity to empty group
* on worldspawn entity create/convert to one do most expected move-selected-primitives-to-worldspawn
* convert point entity to group one = placeholder brush at origin + remove origin key
* convert group entity to point one: set origin key to contained primitives center
* fix uniform rotation operations for eclassmodel, miscmodel entities
* scale miscmodel entities uniformly
* added func_detail to world and detail filters
* region->set_xy: using active projection, not just xy one; is subtractive (no region off before applying)
* new brush prefab: icosahedron
* refactored CSGTool, improved Hollow::diagonal algorithm stability
* fix scaling for doom3 brush format
* Pointfile function: try to also load .pts leak line file (q1), if .lin isn't found
* snap transform origin for flip commands
* change light intensity save format from %f to %g to prevent .99999 on transforms
* support 'stupid quake bug' (invert pitch in angles)(generic and miscmodel ents)(cfg: entities="quake" in .game)
* clipper: place 1st and 2nd points far, 3rd near to ease 3 points clipping
* fixed q1 entity definitions (negke)
* changed surface inspector behavior from 'set whole texture projection' to 'set modified value' (makes sense for multiple surfaces selected)
* BP: surface inspector and Tex* binds scale texture by its axes, not world axes
* BP: fix rotation of tex projection with scale S != scale T
* BP: fix ruining nonregular tex projections by surface inspector (for example after fit/seamless/arbitrary projection)
* jump over tex projection scale = 0 case, while modifying one (AP and BP)
* fixed and improved normal finding in patch texture autocap algorithm
* removed axis cycling in patch cap texture; using autocap
* patch cap texture: project, using brush texture projection math of current mapformat to make it seamless with brushes by default
* Surface inspector->Project functions work for curves (in AP map format too)
* place created simple patch mesh not in middle of bbox, but on edge to make result more usable
* prefs-interface-layout-single scrollable toolbar
* tweaked Human Radiant GTK theme: toolbar pixmap separators, more compact toolbar
* Human Radiant Dark GTK theme
* new texture lock algorithm for BP map format, supporting any affine transformations
* more robust texture lock algorithm for AP map format, locking what is possible to; also improves seamless face2face tex paste function
* experimental fix of rendering scene and evaluating brush/patch representation TWICE on every transform (literally after every mouse move fraction)
* entities converting: also create group entities from world primitives instead of "do not want to convert worldspawn entity" error
* fix: group dialog: prevent focusing on texbro->filter entry and console, if switching to ones by click on tabs (was blocking hotkeys)
* prefs->cam->Selected faces wireframe option (def = yes)
* Textured+Wireframe camera render mode
* render scene to FBO to get following options:
preferences->camera->MSAA (def = 8 samples)
preferences->orthographic->MSAA (def = 8 samples)
coloured camera POV icon w/o rerendering the scene
coloured rectangular selector box w/o rerendering the scene
* fallback to glCopyTexImage2D (NPoT), if FBO isn't available
* lazy cursor updates in clipper mode
* update cursor immediately on clipper mode toggles
* fixes and optimizations of entity names rendering; for instance: don't prerender textures for unneeded names
* selection system: fixes of: selecting point behind point (not perfectly precise distance)
selecting occluded objects and faces via direct and indirect hits
* select models from back in 2d
* entity inspector, entity list->'autofocus on selection' buttons: also do FocusAllViews() on clicking them
* focus on preferences treeview on 2nd+ call to make text search to work
* fixed WindowPositionTracker globally: minus many particular hacks, plus correct wnds positioning in Floating viewports layout
* fixed ToggleShown functionality: shown/hidden wnds states are saved and loaded correctly in Floating viewports layout
* also save/load XY and Cam viewports visibility states
* new preferences->layout icons
* fix: stop chaseMouseMotion on mouse button release
* draggable renderable transform origin for translate, rotate & scale manipulators
click w/o move = reset
move is constraintable to axis with shift pressed
* highlight manipulators' renderables on mouse hover
* mouse_moved_epsilon system (0.5% of viewport size) for m1, tunnel selectors, manipulators (except freelook) to make them more fail-safe
* fix FreezePointer in linux with custom input coordinate tranformation and in win10
* filterbar: removed barely used areaportal button, moved 'apply nodraw/nodrawnonsolid' functions to translucent button
* brush resize, face shear: select single face with angle, closest to view direction (or multiple ones with equal angles)
* "Entity Names = Targetnames" option:
also affects Entity List
moved from View->Show menu to prefs->display->entities
prompt about restart on change
* shortcuts list: search in the middle of strings too
* texbro->search entry: ESC = clear
* entity list+: search entry with start/any position modes:
mouse wheel, uparrow/downarrow = scroll through search results
ESC = clear
mwheel in empty entry = scroll through selected/child selected entities
* entity list: expand map's root node on dialog display for convenience
* "BrushAlwaysCaulk" option is saveable for brush types other than q3
* brush format is preference for [maptypes, brushtypes]: [mapq1, quake], [mapq2, quake2], [mapq3, quake3]:
preferences->Brush->Brush type: Axial projection, Brush primitives, Valve 220
* autodetect brush type on map opening
* brush face surfaceflags are optional on loading for flexibility
* 'Snap planes to integer grid' option is always off by default (is snapping 3 points, defining face plane, to integers)
* Valve220: use face projection by default
* Valve220: Project {axial, ortho, cam, from face} functions
* conversions between AP, BP and Valve220 brush types; conversions to Brush Primitives and Valve220 formats are lossless
* detect brush format and automatically convert to current one on map Import and Paste
* Valve220: fixed Reset function, implemented Rotate one
* Valve220: fix overwriting basis on brush clone/map import ( in Face( Face ) constructor )
* BP: fix: normalize shift values during import, arbitrary projections and face->fit
* Valve220: fix texture lock for scaling, fix for negative texdef.scale
* Valve220: fix patch.CapTexture (patch had invalid control points: define basis)
* Curve->Simple patch mesh: CapTexture() instead of NaturalTexture() for convinience
* increased Patch::Calculate_AvgNormal() robustness; affects Patch::CapTexture() & Patch::ProjectTexture()
* round AP and Valve220 rotation values to f.xx instead of int
* swap shift+pgup/pgdn to match SI behavior (up = +value, down = -value) & to improve ergonomics
* invert BP fake angle to synchronise shift+pgup/pgdn behavior with rotation by SI
* preferences->Camera->Selection filling option (filling highlighting), def=on
* fix: selected faces wire color is updated immediately on colour theme change
* fix/improvement of arrows, showing direction of entity connections; now are definitely visible in all orthogonal projections :)
* don't save .map and snapshots during .reg (region) compilations
* fix: don't exclude worldspawn node on region() functions, so newly created brushes are visible afterwards
* fix: region() functions work for entities, having model, which is instantiated multiple times in a scene
* warn on Map_RegionBrush with none selected
* fix: 'region set brush' is deleting ultimateselected only (is using one to get bounds)
* deselect components on any region() function: could be texturized or edited implicitly
* allow 'region set selection' in components mode
* Map_RegionXY: deselect anything (could leave stuff selected + invisible)
* Valve220: keep basis on 'paintTexture&Projection' (shift+m3); 'projectTexture' (ctrl+shift+m3) performs basis copy
* fix: reset hide button on Map_Free()
* deselect components on HideSelected(): could be texturized or edited implicitly
* fix AP texture lock for faces with 45 degrees angle
* support scale 0 in BP Texdef_transformLocked (is usable, while scaling faces in component mode by 0)
* support scale 0 in AP Texdef_transformLocked
* BP to AP brush type conversion: one is lossless, when it is possible
* Valve220 to AP brush type conversion: one is lossless, when it is possible
* texture locking during vertex and edge manipulations
* fix unwanted brush face texture transformations on brush resizing with texture lock on
* close Map Info dialog by ESC
* fix: reread values from SI on FitTexture command
* change default Map Info window position to centered
* statusbar: del "R:" info (rotate increment from SI)
+current map format info (F:AP/BP/220)
+explanatory tooltip, describing shown infos
* increase precision of camera mouse sensitivity setting from int to float to make it adapted for new hardware/software
* change mouse sensitivity handling by factor of 3 (old default 3 == new default 9)
* fix: consider rotation value for Valve220 arbitrary projections
* disable MSAA in Texture Browser, even if forced via driver
* rotate rotation manipulator representation during manipulation
* new manipulator, applying skew transform
* restyle manipulators icons in GtkRadiant 1.5 way
* transform manipulator: also perform translation, if grabbed bbox
* fix crash, if renaming tag w/o shaders assigned
* transform manipulator: add scale transformation; bbox resizing style
* transform manipulator: draw arrowheads, while some line is selected for skew
* Valve220 texture lock: catch QNAN, if projection direction is parallel to face
* BP to AP, BP to 220, 220 to AP format conversions, Valve220 texture vertex lock: handle degenerate BP basis case
* Valve220: optimize ST coords calculation (rotation value is irrelevant)
* move path settings to separate preferences group to simplify finding one
* prefs->game->paths: +Extra Resource Path option
* point entities are understood as miscmodels, if <model attribute is present in xml .ent definition
* <model key= is not hardcoded to 'model' anymore, can use 'mdl'(q1) or w/e
* add func_detail* to world and detail filters
* entity based structural/detail filters for entities="quake" in .game
* entity inspector -> clear all: keep origin key
* fix accidental negative rotation by rotate tool in camera, caused by low precision
* transform manipulator: add rotate transformation with handles in corner points
* turn SI->project texture radiobuttons to label and 3 buttons to save clicks
* miscmodel filter: simplify and support miscmodels, defined by new way (xml .ent)
* do 'project from face' in face2face seamless function for parallel faces
* toggle transform origin lock by clicking it
* represent locked transform origin with special colours
* support q1 liquids filtering with entities="quake" in .game
* Entity Inspector->smartedit angle(s), direction fields: add "set from camera view direction" button
* Entity Inspector->smartedit->color chooser sets actual key, was always _color
* Entity Inspector->smartedit: enable array, target, targetname, skin attribute types
* Entity Inspector->smartedit: enable texture attribute type, add full shader path autocompletion
* fix lags, caused by texture entries autocompletion
* fix and improve light power adjusting by mouse drag
* texbro tree: display only wad names + full paths as tooltips
* texbro tree: do not try to load root of texture directories group
* texbro: show all used textures on 'flush and reload shaders'
* Valve220: fix uninitialized texture buffer basis
* fix: FBO creation was random
* disable MSAA with samples = 0, even if more is forced via driver
* fix filter structural filtering point entities for q1
* introduce globalWarningStream()
* fix RadiantSelectionSystem::getSelectionAABB() for PlaneSelectables
* orange console warnings
* new robust (working well in camera too) algorithm of indirect faces selection for brushes, patches, doom3 lights, transform tool
* select only plane of planeselectables in camera (since it's not easy to select multiple ones on purpose anyway)
* build system: prevent empty commands execution
* build monitoring: determine if pending stack got monitorable commands, use non monitorable path, if not
* preferences->Build->Dump non Monitored Builds Log (default = no)
* catch degenerate cases in texture vertex lock (ex: verts edit to noncontributing face, then back)
* brush creation in camera; alt = modify height
* entity based structural/detail filters depend on brushtypes="quake" in .game to make detail surfaceflags usable for quake 1
* lower alt+m2 (2d zoom) sensitivity
* support mouse_moved_epsilon system in camera freelook
* preferences->Camera->Strafe Speed slider
* camera strafe: m1 one is disableable by mode 'none'
do not block strafe by pressed shift in up/forward modes
enable forward strafe with only shift pressed in 'both' modes (no ctrl is required)
* remove hack, making freelook move speed fps dependent and harsh move start
* preferences->Camera->Scroll Move Speed slider
* change freelook move speed units to game units; expand range; simplify
* print speed values on change by CameraSpeedDec/CameraSpeedInc commands to console
* preferences->Camera->Time to Max Speed slider (camera key moves acceleration)
* fix backslashes in opened by cmd line map path = fix duplicates in recent maps list
* check move amount (56 pixels) in M2 toggle freelook or keep strafemode condition to allow fast strafe moves
* texbro: show tags frame on M2 release after small or zero move to enable (m2 drag = scroll pan) with tags on
* change GDK_KP_Home, GDK_KP_Page_Down, GDK_KP_End binds to GDK_KP_7, GDK_KP_3, GDK_KP_1: works under Windows at least
* fix mixed up ViewFront and ViewSide commands, NextView menu entry typo
* preferences->Selection->Selector size (pixels)
* turn off 64u deep selection of components in QE tool
* fix qer_alphafunc equal/greater/less/lequal alphatest modes (was always 'gequal')
* clipper tool total rewrite; works in 3d viewport
* fix: update BrushClipPlane rendering on selection change
* clipper points are draggable right after been dropped
* preferences->Clipper->"Reset Flipped State" (on cut done and on manipulator changed), "Reset Points on Split", "2 Points in 2D Views"
* wysiwyg lights selection (was bbox based)
* fix: update BrushClipPlane rendering on undo
* snap Clipper points to brush planes, edges and vertices (in 3d camera)
* Valve220: transform basis in special way with texture lock off
* 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
* 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
* 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
* 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
* 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
* 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
* use bounding box for misc_model transformations
* UV Tool::skew: snap lines to vertices; change snapping measure to distance
* UV Tool: measure snapping distance in screenspace
* fix QComboBox popup leaking shortcuts
* shader editor: Q3 shader syntax highlighting
search entry: down/up, enter/shift+enter cycle through results
fix PgUp, PgDown, ctrl + scroll (font size adjustment)
copy, cut binds w/o selection operate on current line
alt + up/down: move text up/down
ctrl + D: duplicate line/selection
display color3f as foreground color
url to current keyword description in Shader Manual
syntax completion
shader templates in completion after { 1st shader brace
complete texture paths from File System textures/, env/, models/ folders
* shader editor: highlight current line
* shader editor: lines numbering
* Run Engine After Compile function: make 'Engine to Run' & 'Engine Arguments' customizable in preferences
* installer of map developer's files (common shaders/textures/w/e is included in gamepack)
* brush.cone result respects original brush bounds and is current projection dependent
* support multiple Extra Resource Paths
* bobToolz: new Find Duplicates function: finds & selects visible duplicate brushes in entire map
* fix equally named builds execution
* fix automatic target/names resolving after doing map 'Save as' or unnamed map 'Save'
* preferences.Selection.Create brushes in 3D (by m1 drag)
* light entity radius: support negative intensity display and adjustment (keep sign while adjusting)
* fix: do not modify light intensity on transformations besides light radius transformation
* light radiuses: don't render biggest radius, make them less occluding in 3D
* fix surface inspector updates on patch texturing changes, on UV Tool edits
* add prefs->Build->Region Box Shader (shader to use on the box generated around region)
secret radiant features:
can alter in .game: common_shaders_name="Common" common_shaders_dir="common/"
can alter q3map2 being used: by editing build_menu.xml: <var name="q3map2">...
-global-Key Value and -gamename.game-Key Value options to set config settings from the command line
examples:
-global-gamefile q4.game //start with q4 game mode
-q4.game-CamHeight 944 //set CamHeight to 944 in q4 local.pref
QA
Q: how to add mod's entities?
A: copy YourMod.def or YourMod.ent file to Radiant/gamepacks/YourGame.game/YourBaseGameName/ (or /YourModName, if configured to a mod via preferences)
Q: how to move brushes into group entity?
A: select brushes to move, select target entity brush, 'Move Primitives to Entity' command
Q: how to remove brushes from group entity?
A: select brushes, entities creation menu->worldspawn (right mouse button click to ungroup whole entity(ies))
Q: how to copy group entity to separate one?
A: 3 ways: expand selection to whole entity, space OR select, ctrl+c, ctrl+v (/shift+v) OR select, cloneSelectedMakeUnique
Q: how to copy entity brushes to the same entity?
A: select, space
Q: what are tags?
A: thing to group textures and load them quickly
tex browser menu->Tags Gui
optionally: plugins->shaderplug->create tag file
Q: where do i grab entities manual?
A: expand notes tab in entity inspector
Q: where do editor settings live?
A: radiant/settings folder; they are portable; delete folder to use global OS settings
Q: how to convert .map to different map format?
A: 1.choose prefs.brush.new map brush type 2.menu.file.new map 3. menu.file.import the map OR ctrl+c it beforehand, ctrl+v
Q: how to open .bsp?
A: menu.file.import -> select .bsp