Garux
6d080c01e0
turn FaceTexdef_importTokens / exportTokens: bad texdef assertions to console warning, as in practice it does more annoyance, than use, for end user
2019-03-07 16:14:36 +03:00
Garux
7a2084b405
fix: set color for RENDER_TEXT
2019-03-07 15:45:55 +03:00
Garux
4382b5f6d9
* 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
2019-03-07 11:29:59 +03:00
Garux
af720a7f32
remove convhull_3d.h
2019-02-28 00:00:54 +03:00
Garux
1628abfd0f
calm down -Wdelete-non-virtual-dtor warnings
...
remove -Wno-non-virtual-dtor from makefile (what does it do anyway? -Wdelete-non-virtual-dtor is part of -Wall)
2019-02-26 19:08:47 +03:00
Garux
2dd78b7b97
fix use after free in RenderableCamWorkzone
...
somehow it was grabbed by ogl too late here, if sizing info wasn't rendering
2019-02-23 00:01:12 +03:00
Garux
d2dceca361
fix constness
2019-02-22 23:56:17 +03:00
Garux
7c2d05f399
fix 'might be considered always true' warning
2019-02-22 23:53:39 +03:00
Garux
07d3008b96
calm down fall through warnings
2019-02-22 23:50:10 +03:00
Garux
eb95c73416
Winding_Draw fix use after scope
2019-02-22 23:44:51 +03:00
Garux
74a3da969c
* ctrl + r: clone stuff and repeat recent transforms; clipper tool toggle resets transforms stack
2019-01-18 15:00:06 +03:00
Garux
7bcb57562f
preserve brush detail state during vertex manipulations
2019-01-17 00:00:14 +03:00
Garux
b7bfa11b55
* entity inspector::smartEdit: display real key names
...
* entity inspector::smartEdit: show tooltips with extended names and descriptions for keys and flags
2019-01-11 21:25:31 +03:00
Garux
fb53d5094a
some more sensible gui default sizes
2019-01-11 18:35:37 +03:00
Garux
e7fbe45319
build monitoring: change timeout value back to 25, as 8 results in radiant, taking one cpu thread for some reason
...
buffered stream is quick enough anyway
2019-01-07 19:26:17 +03:00
Garux
168e085d8e
* "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
2018-12-26 16:20:43 +03:00
Garux
90d272e0a8
fix commit 9186d18353 , handle 'no vertices selected' case properly
2018-12-25 22:50:18 +03:00
Garux
4dc9b18f70
* fix brush shader names handling by bobtoolz (was writting empty shader name = crash on map save, at least "textures/" is expected)
...
complain about patch and brush shader names harder
2018-12-24 23:44:57 +03:00
Garux
9186d18353
optimize vertices reselection during vertex manipulations
2018-12-24 00:08:55 +03:00
Garux
ab0f376d4a
* lower Winding_Clip ON_EPSILON to play with weird brushes w/o error
2018-12-23 23:46:22 +03:00
Garux
2f867c99d9
* fix crashy assertions on vertices/edges selection (also = during vertex manipulations)
...
by removing not needed anymore update_move_planepts_vertex code
* disable points snapping to .125 grid during edge manipulation (already disabled for vertex mode)
2018-12-23 23:44:13 +03:00
Garux
13481405ac
improve workaround of slow fontconfig start
2018-12-21 11:48:34 +03:00
Garux
bcbbde0b35
remove debug prints
2018-12-13 19:31:23 +03:00
Garux
9eff327c70
refactor brush transform evaluation code to reduce amount of unneeded evaluations to 0
...
improvable: don't evaluateBRep on shader changed, perhaps more
fix: brush vertex manip: no vertexModeFree() after identity transform (mouse forth and back / rotate dialog 0 / insertion w/o move) = selects vertices on undo
fix: brush vertex manip: tex vertex lock: broken for 220
use brush::vertexmode code to delete selected brush components
2018-12-13 19:13:26 +03:00
Garux
868ff8fe50
* insert brush vertices in vertex mode by clicking with no ones selected
2018-12-11 13:19:07 +03:00
Garux
9a2886e624
add build tool skeleton; does nothing, button is hidden
2018-12-10 23:01:09 +03:00
Garux
907c0b1265
minus Brush_textureChanged(); call, faces are getting deselected anyway
2018-12-10 21:08:52 +03:00
Garux
51c798fd9c
* 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
2018-12-10 21:00:33 +03:00
Garux
3f3230ed2a
remove debug prints
2018-12-10 17:51:41 +03:00
Garux
435c41b73b
* new vertex editing mode, preserving non modified vertices (=adding/removing faces automatically)
...
with debug prints
2018-12-10 17:50:40 +03:00
Garux
389030e05d
fix cached brush face centroid tracking
2018-12-05 15:19:12 +03:00
Garux
70167de13b
switch CSG_build_hull to https://github.com/akuukka/quickhull lib, feels robust enough
...
use -std=c++11
2018-12-01 15:43:26 +03:00
Garux
058ae2697e
use original brush for CSG_DeleteComponents result and try to for CSG_WrapMerge to preserve selection on undo
2018-11-24 01:49:58 +03:00
Garux
adc6adf50e
delete duplicate code, enable search in find/replace dialog in selected in component mode
2018-11-23 16:50:27 +03:00
Garux
1ae93ef20c
also merge clipper points on CSGWrapMerge command
2018-11-15 01:02:37 +03:00
Garux
a88202f6c1
CSG_build_hull: use bruteforce, when is reasonable (double facehoof)
2018-11-15 00:16:39 +03:00
Garux
d83d5977b7
* fix: update component modes toolbar buttons on entering clipper mode
2018-11-14 22:38:00 +03:00
Garux
c611be157a
* also filter "textures/common/donotenter" by Botclips filter
2018-11-01 02:24:12 +03:00
Garux
29998d8e8f
* improve rotation manipulations consistency in camera
2018-10-31 11:23:08 +03:00
Garux
c49be81280
use TranslateFreeXY_Z in 2d in DragManipulator & ClipManipulator
2018-10-30 13:29:12 +03:00
Garux
8508ee720e
* XY + Z style of transform manipulator translations
2018-10-30 12:31:04 +03:00
Garux
74f2f5a5b4
* improve skew manipulation consistency in camera
2018-10-30 11:32:32 +03:00
Garux
b6fd6e803f
* 3d camera clipper: move points in XY + Z style with shift, ctrl, alt; snap to grid with ctrl
2018-10-30 01:04:34 +03:00
Garux
736f89026f
use convhull_3d for quicker hull calculation
2018-10-22 18:36:38 +03:00
Garux
70254905c8
fix: crash in CSG::BrushDeleteSelected (again(likely-))
2018-10-22 16:09:11 +03:00
Garux
053df17a35
binds... * clipper::enter, shift+enter, doubleclick: merge brushes and components with clipper points, if no cut occured
2018-10-22 13:58:36 +03:00
Garux
07bc303c2d
* arbitrary rotation dialog fix: also handle extra precision of values on execution by button press
2018-10-21 23:01:12 +03:00
Garux
2836989099
binds... * z, backspace (DeleteSelection): also delete selected components (vertices/edges/faces) of brush in a component mode
2018-10-18 20:14:29 +03:00
Garux
0f7af6aaa4
binds... * shift + u: new uniform CSG wrap merge algorithm, merging selected brushes and/or components
2018-10-16 01:20:09 +03:00
Garux
2a3ca3a44f
binds... * alt + m2 in camera: orbit around clicked point
2018-10-07 02:20:29 +03:00
Garux
9c91f4fa78
binds... * alt + m1 in camera: new resizing mode for brushes, curves and doom3 lights with direct and indirect selection methods
2018-10-06 02:31:05 +03:00
Garux
cf885ea4ea
use OpenGLRenderable to draw camera workzone for proper sorting and smoother states management
2018-09-25 20:50:04 +03:00
Garux
2d35f656f9
* represent grid by 3d camera workzone
2018-09-24 20:35:57 +03:00
Garux
cdd1676a59
minus inclusion, a bit of correctness in FBO_fallback
2018-08-29 00:12:00 +03:00
Garux
e7fec22b52
* rewrite and fix 2d background image feature; fix bug on intels (glPushAttrib)
2018-08-28 23:58:02 +03:00
Garux
1f4143ece2
* render size info in 3d camera
2018-08-28 16:06:47 +03:00
Garux
82ff22882d
* render workzone in 3d camera
2018-08-20 23:33:33 +03:00
Garux
601ca95fbf
simplify XYWnd::PaintSizeInfo slightly
2018-08-19 19:57:02 +03:00
Garux
afdf2a76e0
make Scene_BoundsSelected lazily evaluatable
2018-08-19 16:40:48 +03:00
Garux
c5f2279f4a
* render direction arrow for group entities, having angle/angles key set or having angle/angles/direction attribute in .ent
...
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?
2018-08-16 20:00:58 +03:00
Garux
3706e1131a
binds...
...
* 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
fix void NormalizeColor( Vector3& color )
fix: reset texture clipboard texdef on selection in texbro (was only resetting scales)
2018-08-11 23:36:50 +03:00
Garux
7908a2b593
simplify TextureBrowser_GetSelectedShader, TextureBrowser_SetSelectedShader usage
...
assuming, that we have only TextureBrowser
2018-08-03 17:32:57 +03:00
Garux
94e01fdb0a
camera 2 points clipper: use likely more worthy split plane, if current axial one does not intersect selection bounds
2018-08-02 09:42:29 +03:00
Garux
461410f1a9
* fix automatic connection names resolving of cloned entities
...
issue was:
create entity 1, clone to 2,3; connect 1-2, 2-3 = 1-3 connected; 2-3, 1-2/3-2 2-1 = ok; create all ones via menu/clone-make-unique/ctrl+c +v = ok
clone-make-unique is broken, when operating with cloned entities, connected 3-2, 2-1 (ctrl+c +v too)
2018-07-27 20:21:42 +03:00
Garux
cc997fd5a1
* fix clone, clone-make-unique, select all of type, expand selection to entities/primitives for maps w/o worldspawn
2018-07-27 19:11:53 +03:00
Garux
5c48131eba
* rectangular selector gestures, enabling select, deselect and toggle behaviors
2018-07-23 16:25:32 +03:00
Garux
6ce87c04ac
* update Texture Quality (mip level) preference without restart
2018-07-10 12:49:23 +03:00
Garux
c3a110bf2c
fix old mipmaps code: tex size could be = 0
2018-07-10 01:13:47 +03:00
Garux
f83dc2e891
* use external textures mipmaps generation, draw NPoT textures correctly
2018-07-10 00:54:35 +03:00
Garux
d6389acf21
fix TranslateFreeXY_Z usage for entities with non identity origin
2018-06-30 12:40:29 +03:00
Garux
ac87395f6c
* preferences->Clipper->On DoubleClick do: clip or split (def = split)
2018-06-24 22:50:15 +03:00
Garux
962df6a60e
remove duplicated ViewEntityInfo command
2018-06-24 21:34:09 +03:00
Garux
ed151906bd
* bindable commands EntityMovePrimitivesToLast, EntityMovePrimitivesToFirst, EntityUngroup, EntityUngroupPrimitives
2018-06-24 21:25:53 +03:00
Garux
645c2f479c
comment out Scene_parentSelected() codes
2018-06-24 19:24:16 +03:00
Garux
f0057a86f4
* bindable commands FitTextureWidth, FitTextureHeight, FitTextureWidthOnly, FitTextureHeightOnly
2018-06-24 13:14:54 +03:00
Garux
59c05fa390
fix coincident UndoableCommand name "patchCreateCaps"
2018-06-24 12:16:08 +03:00
Garux
9f6a467e1e
* handle degenerate cases of 2 points clipper in camera (points on the line of view direction)
2018-06-17 17:05:58 +03:00
Garux
5a78874f9b
* selector size: bump default 8->12
...
clipper's one = user preference + 4
hardcode for pivoted manipulators to 8 (since their size is constant)
2018-06-10 23:37:45 +03:00
Garux
78c97a6625
* disable clipper cut action on doubleclick, if click has set second point
2018-06-10 01:44:01 +03:00
Garux
b5e9d98bc7
status_grid tooltip_markup
2018-06-09 22:51:26 +03:00
Garux
367e13e880
* map objects counts statusbar icons
...
* omit textures/ prefix in texture clipboard status
2018-06-09 22:04:23 +03:00
Garux
fd1e14864a
* enable entity->killconnect for game type="q1"
2018-06-09 00:47:16 +03:00
Garux
f51000c0d0
3d cam: DragNewBrush: improve big grid handling
2018-06-08 21:30:38 +03:00
Garux
aff5c8093e
* 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
2018-06-08 21:05:47 +03:00
Garux
2f38cfb4a3
* default (QE) tool: new translation styles: "XY plane + Z with Alt", "View plane + Forward with Alt" (prefs->Selection->Move style in 3D)
2018-06-04 19:22:07 +03:00
Garux
c0b6f2169a
* statusbar: show selected brushes/patches/entities counts, if anything is selected; total, if not
2018-06-01 02:23:07 +03:00
Garux
24c02facb2
refactor status text, status labels
2018-05-31 16:16:47 +03:00
Garux
6b8a1980af
* add statusbar->patches count
2018-05-31 12:38:43 +03:00
Garux
4a59d83139
simplify void NormalizeColor( Vector3& color )
2018-05-24 23:16:59 +03:00
Garux
bf6e29d9c6
* remove entity->ungroup command: change classname to worldspawn does equal job; 'create worldspawn' click ungroups selected primitives only
2018-05-24 22:56:46 +03:00
Garux
66197713a5
simplify ParentSelectedBrushesToEntityWalker
...
add comments to EntitySetClassnameSelected
2018-05-24 21:37:39 +03:00
Garux
17a7e2f413
* replace reGroup command with simpler to use Move Primitives to Entity one (select primitives to move, select target entity primitive, go)
...
fix crashes in Entity_ungroupSelected, Entity_connectSelected
rename entity commands uniformly for simpler search in the list
2018-05-24 18:21:38 +03:00
Garux
6f8a0668a3
add and use VolumeTest/View.getViewDir()
2018-05-18 01:55:20 +03:00
Garux
4542d9da3c
* Valve220: transform basis in special way with texture lock off
2018-05-16 16:40:54 +03:00
Garux
ae1bd2c066
matrix4_for_normal_transform, matrix4_transformed_normal, plane3_transformed_affine_full functions
2018-05-16 14:16:43 +03:00
Garux
e1bc4a8ba9
fix quaternion_for_unit_vectors, quaternion_normalised
...
RotateFree got lower (realistic) sensitivity
2018-05-16 02:59:18 +03:00
Garux
0a4d325f85
fix slow mass (de)selection in clipper mode
2018-05-15 02:55:05 +03:00
Garux
a18a5d7c9b
* snap Clipper points to brush planes, edges and vertices (in 3d camera)
2018-05-15 02:43:10 +03:00
Garux
813cd70fd3
add vector3_max_abs_component_index, vector3_min_abs_component_index functions
2018-05-14 22:35:31 +03:00
Garux
af9850510f
prevent cursor change GDK_BLANK_CURSOR->g_clipper_cursor during freelook
2018-05-14 13:36:44 +03:00
Garux
b2a911c9b1
* fix: update BrushClipPlane rendering on undo
2018-05-14 12:54:02 +03:00
Garux
05ea23c623
reimplement: * m1x2 on clipper point = do clip
2018-05-11 18:01:10 +03:00
Garux
a42709f80a
reimplement: * ctrl + m1: quick clipper mode (quits one after split done) (in 2d)
2018-05-11 02:27:52 +03:00
Garux
522cac75dc
* preferences->Clipper->"Reset Flipped State" (on cut done and on manipulator changed), "Reset Points on Split", "2 Points in 2D Views"
2018-05-10 02:31:08 +03:00
Garux
8339ebfb23
remove code
2018-05-09 02:01:21 +03:00
Garux
7088653115
* clipper tool total rewrite; works in 3d viewport
...
* fix: update BrushClipPlane rendering on selection change
* clipper points are draggable right after been dropped
2018-05-09 00:24:02 +03:00
Garux
b06c551866
* fix qer_alphafunc equal/greater/less/lequal alphatest modes (was always 'gequal')
2018-05-04 11:30:23 +03:00
Garux
9930b8842b
make rectangular selector minimal size independent on g_SELECT_EPSILON, allow any non zero size
2018-05-04 11:02:04 +03:00
Garux
050c0559be
* turn off 64u deep selection of components in QE tool
2018-04-29 21:02:16 +03:00
Garux
412e6cc60a
shorten RadiantWindowObserver.ModifierFlags m_state code
2018-04-29 19:56:50 +03:00
Garux
1d4f115517
* preferences->Selection->Selector size (pixels)
2018-04-29 19:12:42 +03:00
Garux
9114385dda
* fix mixed up ViewFront and ViewSide commands, NextView menu entry typo
2018-04-28 22:10:07 +03:00
Garux
1e58fb2d7d
* 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
2018-04-28 21:33:12 +03:00
Garux
7c5d79da6b
* texbro: show tags frame on M2 release after small or zero move to enable (m2 drag = scroll pan) with tags on
2018-04-28 20:18:06 +03:00
Garux
10c2b9bbd2
* check move amount (56 pixels) in M2 toggle freelook or keep strafemode condition to allow fast strafe moves
2018-04-26 19:23:35 +03:00
Garux
16c00ac54c
* fix backslashes in opened by cmd line map path = fix duplicates in recent maps list
2018-04-21 23:26:40 +03:00
Garux
460df292ff
* preferences->Camera->Time to Max Speed slider (camera key moves acceleration)
2018-04-21 02:17:52 +03:00
Garux
600963629c
* 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
2018-04-21 01:13:08 +03:00
Garux
065505b71b
* remove hack, making freelook move speed fps dependent and harsh move start
2018-04-20 23:17:23 +03:00
Garux
a3201f1954
* 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)
2018-04-20 16:38:20 +03:00
Garux
0cae576d5e
* preferences->Camera->Strafe Speed slider
2018-04-20 13:59:49 +03:00
Garux
446ab50511
really support mouse_moved_epsilon system in camera freelook
...
use FreezePointer chain for freelook selections/manipulaions instead of extra gtk motion handler (fixes one step latency in window observer aswell)
2018-04-17 14:26:49 +03:00
Garux
93aef246ea
* support mouse_moved_epsilon system in camera freelook + refactor RadiantWindowObserver
2018-04-14 23:12:53 +03:00
Garux
d636107f68
* lower alt+m2 (2d zoom) sensitivity
2018-04-14 18:12:52 +03:00
Garux
3ae4188e3d
simplify planeselectables if( camera ) check
2018-04-13 00:14:32 +03:00
Garux
652de9bb8f
* entity based structural/detail filters depend on brushtypes="quake" in .game to make detail surfaceflags usable for quake 1
2018-04-10 20:51:41 +03:00
Garux
417051921e
DragNewBrush: when no testselestion: offset based on gridsize to handle big grid
2018-04-10 18:02:34 +03:00
Garux
1eff801967
new algorithm for DragNewBrush Transform in camera
2018-04-06 23:27:46 +03:00
Garux
48d75b777d
* brush creation in camera; alt = modify height
2018-04-06 12:26:06 +03:00
Garux
b078ec3ad0
small cleaning
2018-04-04 13:34:12 +03:00
Garux
304d4760c4
* catch degenerate cases in texture vertex lock (ex: verts edit to noncontributing face, then back)
2018-04-04 12:02:53 +03:00
Garux
21db492d73
* build monitoring: determine if pending stack got monitorable commands, use non monitorable path, if not
...
* preferences->Build->Dump non Monitored Builds Log (default = no)
2018-03-30 01:47:28 +03:00
Garux
b9dca3b000
* build system: prevent empty commands execution
2018-03-30 00:34:50 +03:00
Garux
8fbc462525
* select only plane of planeselectables in camera (since it's not easy to select multiple ones on purpose anyway)
2018-03-29 00:53:43 +03:00
Garux
75852ff0a1
robust algorithm for DragPlanes selection (Patch, Doom3Light)
2018-03-28 14:38:32 +03:00
Garux
73605bf94b
robust algorithm for indirect Brush faces selection
2018-03-27 01:15:16 +03:00
Garux
ed50787ee8
even more robust algorithm for Transform manipulator bbox faces pickup
2018-03-26 20:35:09 +03:00
Garux
fce4ba0d67
new more robust algorithm for Transform manipulator bbox faces pickup
2018-03-26 19:05:03 +03:00
Garux
3222052652
fix and improve Transform manipulator bbox faces pickup
2018-03-21 22:48:10 +03:00
Garux
3da4012f1e
add required message_flush calls
2018-03-21 20:59:30 +03:00
Garux
fd656d274a
* orange console warnings
2018-03-21 16:07:40 +03:00
Garux
cf580963c2
more globalWarningStream() globalErrorStream() use
2018-03-21 16:06:22 +03:00
Garux
b1e2f26124
use globalWarningStream()
2018-03-21 04:21:07 +03:00
Garux
54a98ed5e8
* fix RadiantSelectionSystem::getSelectionAABB() for PlaneSelectables
2018-03-21 03:03:41 +03:00
Garux
45a38ae48e
* introduce globalWarningStream()
2018-03-15 01:18:16 +03:00
Garux
5bf0dd5243
q3map2: * buffered broadcast xml stream to dramatically increase compilation monitoring speed
2018-03-13 22:51:30 +03:00
Garux
0bf509dc1a
* fix: FBO creation was random
...
* disable MSAA with samples = 0, even if more is forced via driver
2018-03-05 13:48:48 +03:00
Garux
552d0ac083
bind * shift + n: brush texture reset + patch texture cap
2018-03-04 17:37:28 +03:00
Garux
2859ea7e9c
* Valve220: fix uninitialized texture buffer basis
2018-03-04 13:52:34 +03:00
Garux
658cbe45ba
* menu Brush->Copy/PasteFaceTexture: show contextual Copy/Paste commands (dependant on faces selected)
2018-03-04 12:46:45 +03:00
Garux
357beaa46d
* texbro: show all used textures on 'flush and reload shaders'
2018-03-03 15:05:30 +03:00
Garux
ef94020d67
* texbro tree: display only wad names + full paths as tooltips
...
* texbro tree: do not try to load root of texture directories group
2018-03-03 13:08:18 +03:00
Garux
1d3094de94
use static boolean TextureBrowser::wads, clean the code
2018-03-02 19:19:29 +03:00
Garux
565f7fc6db
* 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
2018-03-01 04:01:18 +03:00
Garux
286f784ecf
* Entity Inspector->smartedit->color chooser sets actual key, was always _color
2018-02-28 13:15:05 +03:00
Garux
5b226482b8
* Entity Inspector->smartedit angle(s), direction fields: add "set from camera view direction" button
2018-02-24 14:08:41 +03:00
Garux
eae7ac024a
clean namedentity, forward declarations, ostream_write
2018-02-22 18:56:53 +03:00
Garux
327fa13d54
add killconnect command only for mGameType=nexuiz (.game type="nexuiz"); was confusing bindlist readers
2018-02-21 17:15:10 +03:00
Garux
81cc314ff5
* support q1 liquids filtering with entities="quake" in .game
2018-02-21 14:58:41 +03:00
Garux
ad68a7232d
* toggle transform origin lock by clicking it
...
* represent locked transform origin with special colours
2018-02-21 12:49:10 +03:00
Garux
062df0bc5f
fix AP texlock, handle scale 0 in different way
2018-02-20 16:08:44 +03:00
Garux
c878333c7b
* m2 in Surface Inspector->fit width/height = fit width/height, keep height/width
2018-02-19 17:28:05 +03:00
Garux
c1b9b17635
* do 'project from face' in face2face seamless function for parallel faces
2018-02-19 13:09:10 +03:00
Garux
1b673b1a76
refactored EntityClass usage to only store being a miscmodel in miscmodel_is bool + set it on setting classname
...
* miscmodel filter: simplify and support miscmodels, defined by new way (xml .ent)
2018-02-19 00:40:51 +03:00
Garux
feedf4919e
consider func_detail* in Map Info dialog
2018-02-18 20:56:18 +03:00
Garux
024e6bd667
fix possible typo in LoadMapFile primitives count report
2018-02-18 20:22:09 +03:00
Garux
86a8aec283
* turn SI->project texture radiobuttons to label and 3 buttons to save clicks
2018-02-18 18:52:44 +03:00
Garux
6ac153f2f0
3 decimals precision for SI->fit hopefully will be enough
2018-02-18 16:08:19 +03:00
Garux
9b6e1e3b9e
transform manipulator: add selected renderable lines last to get highlighted ones rendered on top in 2d
2018-02-18 16:03:16 +03:00
Garux
faae287567
* transform manipulator: add rotate transformation with handles in corner points
2018-02-16 13:47:58 +03:00
Garux
63afbecab6
* fix accidental negative rotation by rotate tool in camera, caused by low precision
2018-02-15 13:13:44 +03:00
Garux
22cba3641a
import c359b728f6
...
Try ~/.{prefix} on Apple OS X if /Library/Application Support/{prefix+1} fails.
2018-02-07 22:43:13 +03:00
Garux
1f31e94aca
undo 'numeric GtkSpinButtons in SI, arbitrary rotation dialog' (aint flexible enough for input)
2018-02-04 20:56:45 +03:00
Garux
f91df90d58
remove const_cast hack and memory leak in 'load doubleclicked texture's directory'
2018-02-04 19:38:08 +03:00
Garux
339d078bc6
fix/improve camera near_z usage
2018-02-04 16:55:25 +03:00
Garux
c22187907e
* entity inspector -> clear all: keep origin key
2018-02-03 09:03:59 +03:00
Garux
b8f2cffa3f
reformat gtktheme.cpp
2018-02-03 00:27:09 +03:00
Garux
a5865dce55
* entity based structural/detail filters for entities="quake" in .game
2018-02-01 13:34:58 +03:00
Garux
f9157a6993
* 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
2018-01-31 23:14:30 +03:00
Garux
387c4c0846
* prefs->game->paths: +Extra Resource Path option
2018-01-30 16:02:07 +03:00
Garux
d747bd6111
* move path settings to separate preferences group to simplify finding one
2018-01-28 18:08:57 +03:00
Garux
4a6c809e7d
* Valve220: optimize ST coords calculation (rotation value is irrelevant)
2018-01-24 13:01:47 +03:00
Garux
cb2886cd97
* BP to AP, BP to 220, 220 to AP format conversions, Valve220 texture vertex lock: handle degenerate BP basis case
2018-01-24 00:13:35 +03:00
Garux
16ee5cc8c8
* Valve220 texture lock: catch QNAN, if projection direction is parallel to face
2018-01-23 04:52:34 +03:00
Garux
fc7c69df97
* transform manipulator: draw arrowheads, while some line is selected for skew
2018-01-19 20:56:31 +03:00
Garux
31c1b27853
* transform manipulator: add scale transformation; bbox resizing style
2018-01-18 23:40:47 +03:00
Garux
ad0f9ea6cc
make m_bFaceFill aka "Colorize selection" saveable
2018-01-17 08:58:54 +03:00
Garux
78db33ff4a
* fix crash, if renaming tag w/o shaders assigned
2018-01-16 14:40:16 +03:00
Garux
98937beb75
* transform manipulator: also perform translation, if grabbed bbox
2018-01-11 21:01:40 +03:00
Garux
d3b1bfaefa
* restyle manipulators icons in GtkRadiant 1.5 way
2018-01-11 15:20:55 +03:00
Garux
14ee12354d
* new manipulator, applying skew transform
2018-01-11 14:20:05 +03:00
Garux
fadace9d69
more clear preference name to expose its effect better
2018-01-05 14:41:02 +03:00
Garux
fd04e52a06
* disable MSAA in Texture Browser, even if forced via driver
2017-12-20 15:57:44 +03:00
Garux
55a36d5543
* fix: consider rotation value for Valve220 arbitrary projections
2017-12-19 16:11:17 +03:00
Garux
5c0859be8d
* 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)
2017-12-16 10:28:38 +03:00
Garux
aeaeb2a3e6
* statusbar: del "R:" info (rotate increment from SI)
...
+current map format info (F:AP/BP/220)
+explanatory tooltip, describing shown infos
2017-12-15 15:58:52 +03:00
Garux
fd7429d45f
* change default Map Info window position to centered
2017-12-15 13:47:01 +03:00
Garux
2417ac196c
* fix: reread values from SI on FitTexture command
2017-12-15 03:59:10 +03:00
Garux
b4d81fac21
* close Map Info dialog by ESC
2017-12-15 03:24:42 +03:00
Garux
9f1690ed64
* fix unwanted brush face texture transformations on brush resizing with texture lock on
2017-12-11 16:53:01 +03:00
Garux
723a615110
* texture locking during vertex and edge manipulations
2017-12-06 13:57:40 +03:00
Garux
533b842a00
* Valve220 to AP brush type conversion: one is lossless, when it is possible
2017-12-05 16:08:19 +03:00
Garux
9b644b4680
* BP to AP brush type conversion: one is lossless, when it is possible
2017-12-05 15:49:15 +03:00
Garux
7103ac23de
* support scale 0 in AP Texdef_transformLocked
2017-12-05 14:39:14 +03:00
Garux
0e29985090
* support scale 0 in BP Texdef_transformLocked (is usable, while scaling faces in component mode by 0)
2017-12-04 21:42:03 +03:00
Garux
382ce2e691
* fix AP texture lock for faces with 45 degrees angle
2017-12-04 21:18:53 +03:00
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