Commit Graph

301 Commits

Author SHA1 Message Date
Garux 4b5390e6cf remove sleep code and all references 2017-11-11 12:22:30 +03:00
Garux 4511d1b5b1 * deselect components on HideSelected(): could be texturized or edited implicitly 2017-11-11 11:58:33 +03:00
Garux 3426be50bf * fix: reset hide button on Map_Free() 2017-11-11 11:52:08 +03:00
Garux 1658f27ee6 * Valve220: keep basis on 'paintTexture&Projection' (shift+m3); 'projectTexture' (ctrl+shift+m3) performs basis copy 2017-11-10 14:56:35 +03:00
Garux 618d31bc96 * 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)
2017-11-05 22:58:59 +03:00
Garux bd28ec81f7 * View->Show->Entity Connections option 2017-10-27 23:32:29 +03:00
Garux 9b2109a5ee * don't save .map and snapshots during .reg (region) compilations 2017-10-27 10:48:13 +03:00
Garux 3d3592c1f0 * preferences->Camera->Colorize selection option (filling highlighting), def=on
* fix: selected faces wire color is updated immediately on colour theme change
2017-10-27 10:47:15 +03:00
Garux 5761c6006b GtkSpinButtons are numeric only in SI, arbitrary rotation dialog, preferences
SI: fit: fewer trailing zeros
SI: rotate: page_increment = 45 (activatable by scroll click on arrows; RMB = min/max)
2017-10-19 21:51:22 +03:00
Garux 9c415afaae * 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
2017-10-19 13:11:44 +03:00
Garux 2adf7f8a4f improve textureProjectionSetSelected -rotation output in BP mode 2017-10-19 10:15:59 +03:00
Garux c152cf02a4 * round AP and Valve220 rotation values to f.xx instead of int 2017-10-19 00:27:46 +03:00
Garux 62a5122ff8 rename TEXDEFTYPEID_HALFLIFE -> TEXDEFTYPEID_VALVE for consistency 2017-10-18 23:35:56 +03:00
Garux 4ecd635bfc * increased Patch::Calculate_AvgNormal() robustness; affects Patch::CapTexture() & Patch::ProjectTexture() 2017-10-18 15:02:55 +03:00
Garux 097c1e8fc5 * Valve220: fix patch.CapTexture (patch had invalid control points: define basis)
* Curve->Simple patch mesh: CapTexture() instead of NaturalTexture() for convinience
2017-10-02 20:44:36 +03:00
Garux f4149f1549 * 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
2017-10-02 18:11:43 +03:00
Garux 65e6d4a560 del douplicated code in seamless texturing->line 2017-09-17 11:52:23 +03:00
Garux 0b3f42ffbc * "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
2017-09-16 16:37:39 +03:00
Garux 4e4b8e1407 * 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
2017-09-03 22:48:46 +03:00
Garux 20e9bc9dfe * shortcuts list: search in the middle of strings too 2017-08-26 18:49:03 +03:00
Garux caf093f827 * "Entity Names = Targetnames" option:
also affects Entity List
		moved from View->Show menu to prefs->display->entities
		prompt about restart on change
2017-08-20 16:42:18 +03:00
Garux 56997e1c66 * brush resize, face shear: select single face with angle, closest to view direction (or multiple ones with equal angles) 2017-08-12 18:40:50 +03:00
Garux 93be572ca3 * filterbar: removed barely used areaportal button, moved 'apply nodraw/nodrawnonsolid' functions to translucent button 2017-08-08 20:45:21 +03:00
Garux 31cef208e0 Radiant:
misc...
	* 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
2017-08-02 16:26:21 +03:00
Garux a28b531d84 Radiant:
misc...
	* 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
2017-08-02 09:54:33 +03:00
Garux 3f1c97ebeb Radiant:
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
2017-08-02 09:53:56 +03:00
Garux 6eee961fcc Radiant:
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
2017-08-02 09:53:07 +03:00
Garux e14027e117 Radiant:
misc...
	* 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
2017-08-02 09:52:30 +03:00
Garux 2e3529798d Radiant:
misc...
	* prefs->cam->Selected faces wireframe option (def = yes)
	* Textured+Wireframe camera render mode
2017-08-02 09:51:41 +03:00
Garux 6a85a08c18 Radiant:
misc...
	* 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)
2017-08-02 09:51:08 +03:00
Garux c3d11bca70 Radiant:
misc...
	* experimental fix of rendering scene and evaluating brush/patch representation TWICE on every transform (literally after every mouse move fraction)
2017-08-02 09:48:29 +03:00
Garux 6fa612373e Radiant:
misc...
	* 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
2017-08-02 09:48:12 +03:00
Garux fb7c979d42 Radiant:
misc...
	* place created simple patch mesh not in middle of bbox, but on edge to make result more usable
	* prefs-interface-layout-single scrollable toolbar
2017-08-02 09:47:35 +03:00
Garux da43652df1 Radiant:
binds...
	* ctrl + shift + m3/drag: project tex from face in tex clipboard to brushes(BP format) and curves

misc...
	* 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)
2017-08-02 09:47:05 +03:00
Garux b0c4caa9d1 Radiant:
binds...
	* m3: apply texture name and alignment to selected primitives and faces
	cleaning
2017-08-02 09:46:24 +03:00
Garux a102c41b48 Radiant:
misc...
	* 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)
2017-08-02 09:45:26 +03:00
Garux 492f00b729 Radiant:
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
2017-08-02 09:44:51 +03:00
Garux 0139fa9de6 Radiant:
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
2017-08-02 09:44:13 +03:00
Garux 335dcb2fa8 Radiant:
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
2017-08-02 09:43:35 +03:00
Garux 9613511560 Radiant:
binds...
	* 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

misc...
	* -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
	texbro tags button png icon
2017-08-02 09:42:58 +03:00
Garux 7e36f12449 Radiant:
binds...
	* Tab + mWheel in freelook: offset focus distance with dist2origin/8 step; exponentially, if moving far away

menus...
	* Misc->Colors->Themes->Blender/Dark color theme
misc...
	* 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
2017-08-02 09:42:08 +03:00
Garux 7bb36b774c Radiant:
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
2017-08-02 09:41:22 +03:00
Garux 8ca384165b Radiant:
misc...
	* fix name case sensitivity in shaders (non plain textures) loading during map/model loading
	* all patch prefabs are created aligned to active projection
2017-08-02 09:40:29 +03:00
Garux 697d2714d6 Radiant:
binds...
	* ctrl + e: ExpandSelectionToPrimitives (select group entities w/o parent node)
	* ctrl + m3 texture painting by drag
misc...
	* 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)
2017-08-02 09:39:45 +03:00
Garux 43d4204697 Radiant:
misc...
	* new very fast entity names rendering system
	* render entity names in cam within < 512u dist or if selected
2017-08-02 09:36:47 +03:00
Garux 1df30a3b8c Radiant:
misc...
	* 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
	* anisotropic textures filtering option (def = yes)
2017-08-02 09:33:51 +03:00
Garux bc5dcc1699 Radiant:
misc...
	* extradebug_quicker BUILD mode (defines _DEBUG_QUICKER = no slowing down debug renderables)
	* draw bbox for having model + selected entities
2017-08-02 09:32:49 +03:00
Garux 969b901abe Radiant:
misc...
	* texbro search: SearchFromStart option (match start of texture name)
	* texbro search: entry is activated/deactivated by mouse pointing
	* texbro search: clear button
2017-08-02 09:26:22 +03:00
Garux e3fd576624 Q3map2:
code fixes

Radiant:

binds...
	* m1x2 on clipper point = do clip
menus...
	* misc->colors->opengl font selector
misc...
	* calculate farplane from g_MaxWorldCoord, g_MinWorldCoord (was const 32768)
	* 1.0f nearplane
	* numerous code fixes
2017-08-02 09:25:58 +03:00
Garux 65ca31fd44 Radiant:
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
2017-08-02 09:25:04 +03:00
Garux cba5583d23 Radiant:
binds...
	* m1 + shift drag: snapped modes of manipulators:
		scale free: scale two axes synchronously
	* 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)

misc...
	* 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
2017-08-02 09:24:32 +03:00
Garux 471fca65b6 Radiant:
binds...
	* ctrl + shift + v: MoveToCamera (translate selection to camera origin)
	* m2 in entities creation menu: change classname

misc...
	* do not delete selected on entities creation, just deselect
	* ExpandSelectionToEntities: do not select invisible nodes
	* fix: keep stuff on grid after paste/move to camera commands, if stuff's size is (2*N + 1)*gridSize
	* 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)
2017-08-02 09:23:14 +03:00
Garux 4dcf76ef34 Radiant:
binds...
	* m2x2 in camera: entities creation menu
2017-08-02 09:22:40 +03:00
Garux c92c662abb Radiant:
binds...
	* Tab in freelook: smooth turn around selected, while focusing on one

misc...
	* 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)
2017-08-02 09:22:10 +03:00
Garux dfce2da577 Q3map2:
disable fastnormalize for light: was increasing dirt from arealights, lighting with acute angle

Radiant:

binds...
	* QE tool: alt + m1 drag in primitives mode:
		click face = clicked faces shear
	* m3 in texbro: select texture w/o applying to selection
	* `: XYFocusOnSelected
	* ctrl + shift + e: Select Connected Entities
misc...
	* 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)
2017-08-02 09:21:32 +03:00
Garux 461d008daa Q3map2:
* 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)
2017-08-02 09:20:56 +03:00
Garux 2ab47003e0 Radiant:
misc...
	* 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)
2017-08-02 09:19:53 +03:00
Garux 0261afc6df Q3map2:
* -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)
2017-08-02 09:19:22 +03:00
Garux dd7f4f1689 Radiant:
binds...
	* ctrl + shift + m1 (in texbro): open shader in external editor
misc...
	* 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)
2017-08-02 09:18:45 +03:00
Garux 87d5b6efe5 menus...
* view->show: +Entity Names = Targetnames (option to draw targetnames, not classnames; def = no)
2017-08-02 09:17:58 +03:00
Garux 804c20949d Q3map2:
* _setmaxstdio(2048) for windows
	* game_qfusion update

Radiant:

misc...
	* 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
2017-08-02 09:15:41 +03:00
Garux 89c4e25e26 Radiant:
misc...
	* 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)
2017-08-02 09:15:07 +03:00
Garux 2455e50d72 Radiant:
misc...
	* fix: mixed up 'Up' & 'Forward' mouse strafe options
	* mouse strafe options: old 'both' one with inverted forward, None


	fix: QE tool: alt + m1 + ctrl drag : verts weren't snapped (since not component mode)
	fix: QE tool face drag + ctrl: no snap
	fix: ctrl snap on drag + shift constrain to axis: excess snap on not dragged axis //some coord e-17
2017-08-02 09:14:33 +03:00
Garux d079351041 Radiant:
binds...
	* QE tool: alt + m1 drag in primitives mode:
		click on vertex location = quick vertices drag (unlimited selection depth)
		click outside = brush faces shear
misc...
	* load (aka 'search') tags on m1 dbl click
	* fix Doom3 crash in FilterAreaportals filterbar button
2017-08-02 09:13:52 +03:00
Garux 0709fce07d Radiant:
binds...
	* 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

misc...
	* QE tool in a component mode: perform drag w/o hitting any handle too
2017-08-02 09:13:12 +03:00
Garux f79ac495d0 Radiant:
misc...
	* fix: texBro & tags treeviews scroll focus follows folder selection; (text search shortcut is ctrl+f on windows)
	* fix: detached tags menu appearence
	* new icon
2017-08-02 09:12:17 +03:00
Garux 3a78d90201 Radiant:
binds...
	* 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 axes with non zero drag synchronously (i.e. two visible ones in projection views)
misc...
	* 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
2017-08-02 09:10:43 +03:00
Garux c845c5cd8f Radiant:
binds...
	* Tab: focus camera on selected

menus...
	* Modify->Nudge:+ Nudge +Z, Nudge -Z

misc...
	* improvement of: Scale tool: now scales bbox by gridsize increment
	* 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
2017-08-02 09:09:58 +03:00
Garux 322b0c2ee4 Radiant:
misc...
	* 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
2017-08-02 09:09:20 +03:00
Garux de5fcea336 Radiant:
binds...
	* ctrl+tab (nextview cmd) = center on selected in 4 views layout

misc...
	* 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'
2017-08-02 09:08:43 +03:00
Garux 5a8c27d93c menus...
* 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

misc...
	* 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: greyscale 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)
2017-08-02 09:07:44 +03:00
Garux cac514541c Radiant:
binds...
	* F12: maximize main wnd view under cursor
	* ctrl + t: patch thicken
menus...
	* simplified curve menu
misc...
	* 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
2017-08-02 09:06:50 +03:00
Garux e7c45da823 Q3map2:
* code fixes
	* packer: !FAIL! msg for missing ingame resources, ~fail for the rest
	* bumped stack size to 4Mb to fix crash for huge skies, using old shaders with fairly useless q3map_surfacelight + q3map_lightsubdivide < 999 combo


Radiant:

binds...
	* F5: run first in the list or recently invoked build option
	* F11: fullscreen

misc...
	* opening *.map, sent via cmd line: enabled for non win32 too
	* 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
2017-08-02 09:06:17 +03:00
Garux 0d5ebb17b2 Q3map2:
fix compilation on linux
	* packer: pack actual loaded bsp instead of one, found in vfs

Radiant:

binds...
	* 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

misc...
	* 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)
2017-08-02 09:04:48 +03:00
Garux fa294e4215 Q3map2:
* do not delete q3map2_*.shader on minimap generation


Radiant:

misc...
	* fix: crash in CSG::BrushDeleteSelected
	* fix: crash in Brush::windingForClipPlane
	* disabled snapping of transform/pivot origin
2017-08-02 09:04:00 +03:00
Garux e8686a54bf Radiant:
binds...
swap paint and rect selectors:
	* 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)
2017-08-02 09:03:25 +03:00
Garux fab6205991 Radiant:
binds...
	* M1 click: tunnel selector
	* shift + m2 drag: paint objects selection
	* ctrl + m1: select brush face
	* ctrl + m2 drag: paint faces selection
	* shift + m2: tunnel selector
	* shift + m1 drag: rectangular toggle selector
	* ctrl + m2: tunnel face selector
	* ctrl + m1 drag: rectangular selector of brush faces
	* alt + m2 drag: 2d zoom in/out
	* ctrl + m2: quick clipper mode (quits one after split done)
2017-08-02 09:02:58 +03:00
Garux 09b97bb415 ctrl+m2=clipper 2017-08-02 09:02:12 +03:00
Garux 4616fea08c ctrl=face selector m2=cycle 2017-08-02 09:01:50 +03:00
Garux 91f0982380 m1 selector more 2017-08-02 09:01:31 +03:00
Garux f93b3f6184 m1 selector 2017-08-02 09:00:52 +03:00
Garux 173f350be7 Q3map2:
* fix crash with nonpthreads xmllib + multithreading + output to system console
	* number of code fixes
Radiant:

misc...
	* fix: clone group ent / map import / saving map as : group ents name labels at 0,0,0;
	* number of code fixes
2017-08-02 09:00:11 +03:00
Garux 3ec33465b1 Radiant:
misc...
	* 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'
2017-08-02 08:43:59 +03:00
Garux a62c7302d3 Radiant:
misc...
	* texbro: disable alpha transparency by def; isn't good in half of cases
	* find/replace: tooltip helper note about search mode
	* 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
2017-08-01 14:28:28 +03:00
Garux dce6730b39 Radiant:
misc...
	* 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
2017-08-01 14:27:03 +03:00
Garux 7ca59bef0a Radiant:
misc...
	* CSG Tool
	* fix: texbro: blured stipple with green and red borders
2017-08-01 14:26:18 +03:00
Garux 6592d65469 Radiant:
misc...
	* made shaderplug msg to look not like error (but barely noticeable)
	* removed Texdef_FitTexture copypasted code
	* 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
2017-08-01 14:25:41 +03:00
Garux 9d6e27e4e3 Radiant:
misc...
	* fix: texbro m2 drag in 2x2 layout
	* fix: crash in (texbro + freezePointer)
	* fix: all sorts of problems with freezePointer drags near widget borders
2017-08-01 14:25:00 +03:00
Garux b017c473e8 Radiant:
menus...
	* help+: Blendmodes cheatsheet
misc...
	* fix treemodel Clang compilation
	* 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-)
2017-08-01 14:23:38 +03:00
Garux f6b9708d07 Radiant:
binds...
	* tex bro: left double click loads directory, containing active shader + focuses on it
		right double click loads 'common' directory
misc...
	* 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)
2017-08-01 14:07:22 +03:00
Garux 86023af46c Radiant:
misc...
	* 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
	* 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)
2017-08-01 14:06:41 +03:00
Garux 2de8ee725b Radiant:
misc...
	* 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
	* tex bro: menubar = toolbar
2017-08-01 14:06:00 +03:00
Garux dfc3e9c2a5 more antialiased png icons 2017-08-01 14:05:06 +03:00
Garux 6f51c7f28d Radiant:
misc...
	* 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
2017-08-01 14:03:16 +03:00
Garux 23d2497f12 Radiant:
binds...
	* texbro: left double click loads directory, containing active shader
	* texbro: left triple click loads 'common' directory
misc...
	* 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
2017-08-01 14:00:58 +03:00
Garux a59855266c Radiant:
binds...
	* douplicated basic shortcuts: arrows - camera freemove, ESC - deSelect, backSpace - delete

menus...
	* modify+: snap to grid (ctrl+g)

misc...
	* fixed warning on import (q3map2_type not found)
	* patch thicken
	* removed douplicate accelerators registering
	* 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
2017-08-01 14:00:12 +03:00
Garux f8b2b1f25e Q3map2:
* 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


Radiant:
misc...
	* _setmaxstdio(2048): tested max pk3s count: 1021
	* curve: deform (randomize Z points coord at given amount)
2017-08-01 13:59:31 +03:00
Garux fe73dd74d0 Q3map2:
* fix: number of problems, found by Visual Studio's static code analyser
		(76ea7385dd)

Radiant:

misc...
	* 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)
2017-08-01 13:58:52 +03:00
Garux 0fb65a91c7 Q3map2:
* -brightness 0..alot, def 1: mimics q3map_lightmapBrightness, but globally + affects vertexlight
	* -contrast -255..255, def 0: lighting contrast
	* packer improvements

Radiant:

binds...
	* entity inspector: Tab enters Key field, toggles between key/value fields; Del deletes keys; Esc quits

misc...
	* improved mwheel 2d zoom by Neumond
	* +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)
2017-08-01 13:57:26 +03:00
Garux eef3995202 Q3map2:
* -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
2017-08-01 13:51:52 +03:00