draw condition relies on entity.getKeyValue, which also provides default values; thus removed default "0" for all group entities in .def loader
mind to add entity.getOnlySpecifiedKeyValue func or perform by visitor?
* 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
* 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
misc...
* 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
binds...
* 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
misc...
* 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
FBO overlay fixes
misc...
* 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
binds...
* doubleClick/Enter in Entity inspector Class list = convert entities
* ctrl during creating brush = cube brush
misc...
* 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
improved view_cubiclipping.png
misc...
* 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 point entities keys
* workaround: don't discard empty group ents, having origin key
* entity class convertion: prevent converting worldspawn; prevent converting point entity to empty group
menus...
* view->show->Entity boxes (always show bbox for ents with model)
misc...
FBO support
* preferences->display->entities->Names Display Ratio (2D): hide names, if view_size/bbox_size > value; def = 64
misc...
* fix name case sensitivity in shaders (non plain textures) loading during map/model loading
* all patch prefabs are created aligned to active projection
menus...
* Shortcuts item moved from Help to Edit
misc...
* 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
* fix: parsing of /* */ comments, having * or / inside
Radiant:
misc...
encapsulate RETURN_FALSE_IF_FAIL macros with do while 0: minus warnings
* 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)
* -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
Radiant:
binds...
* alt + m1 click/drag in component modes: select objects
misc...
* fix: 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)
* allow search shortcut (ctr+f in win) in entity inspector -> entity class list
* fix: don't save empty group entities (but worldspawn)