Commit Graph

1448 Commits

Author SHA1 Message Date
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 fb4c1beb49 * fix FreezePointer in linux with custom input coordinate tranformation and in win10 2017-08-08 18:30:55 +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 62ccd942e5 Radiant:
misc...
	* oranje names for group entities, having childrens selected (also no distance cull in cam for those)
2017-08-02 09:38:53 +03:00
Garux 6a7758012d Radiant:
misc...
	* fix: noninitialized lightradii, if light value is not set (example: lightjunior)
	* light power is adjustable by mouse drag
2017-08-02 09:37:10 +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 bec8719fe1 Radiant:
misc...
	* GL_TRIANGLE_STRIP light radii spheres (2.5x faster)
2017-08-02 09:34: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 93ca259313 Q3map2:
* 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
2017-08-02 09:16:57 +03:00
Garux ed4c8c2044 Q3map2:
* 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)
2017-08-02 09:16:24 +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