Garux
5977a04550
* unzoom from mouse pointer in 2D and 3D
2020-06-13 20:58:10 +03:00
Garux
cc1f7ecd76
* new filter: Point Entities (nongroup entities besides misc_models and lights)
2020-06-12 20:41:27 +03:00
Garux
1c93ac30cf
centerize gtk theme wnd
2020-06-12 20:24:04 +03:00
Garux
35309c8c6c
fix Gdk-CRITICAL **: IA__gdk_window_get_window_type: assertion 'GDK_IS_WINDOW (window)' failed
2020-06-05 23:49:04 +03:00
Garux
3e7ee32ded
make extension_equal() check case insensitive in Unix
...
allows most of file types with non lowercase extension
known issue: textures with non lowercase extension in loose folders are visible now, but they aren't loaded, because it leads to fopen( filename.lowercase_extension )
2020-06-05 21:11:26 +03:00
Garux
4fdb720123
fix Gtk-CRITICAL **: gtk_widget_grab_default: assertion 'gtk_widget_get_can_default (widget)' failed
2020-06-05 21:04:18 +03:00
Garux
e11341f8f6
fix Gtk-CRITICAL **: gtk_window_realize_icon: assertion 'info->icon_pixmap == NULL' failed
2020-06-05 21:03:10 +03:00
Garux
e357564ff8
remove more of deprecated Gtk stuff
2020-06-05 20:40:12 +03:00
Garux
d46aaf514d
refactor and fix filterbar
2020-05-28 09:11:59 +03:00
Garux
95809d79f5
use GtkToolItem in toolbars
2020-05-27 08:18:22 +03:00
Garux
495e90e6a9
gtk_notebook_set_page -> gtk_notebook_set_current_page
...
gtk_container_children -> gtk_container_get_children
gtk_notebook_set_page -> gtk_notebook_set_current_page
gtk_widget_hide_all -> gtk_widget_hide
gtk_check_menu_item_set_state -> gtk_check_menu_item_set_active
gtk_radio_menu_item_group -> gtk_radio_menu_item_get_group
2020-05-23 22:54:26 +03:00
Garux
dac8fd48a3
gtk_timeout_add -> g_timeout_add
...
gtk_timeout_remove -> g_source_remove
2020-05-22 01:29:08 +03:00
Garux
0ba68e1a29
gtk_toolbar_set_orientation -> gtk_orientable_set_orientation
2020-05-22 01:16:05 +03:00
Garux
2e71534766
gtk_tooltips_set_tip -> gtk_widget_set_tooltip_text
2020-05-22 01:16:04 +03:00
Garux
64e0c125e8
replace gtk_toolbar_append_space()
2020-05-22 01:16:02 +03:00
Garux
f6bf97f27e
gtk_spin_button_get_value_as_float -> gtk_spin_button_get_value
2020-05-22 01:16:01 +03:00
Garux
ded059f817
GTK_COMBO_BOX -> GTK_COMBO_BOX_TEXT
2020-05-22 01:15:54 +03:00
Garux
ab7eb468ec
gtk_widget_set_usize -> gtk_widget_set_size_request
...
-2 in gtk_widget_set_usize() means 'don't change given dimension'
-2 in gtk_widget_set_size_request() = early quit function w/o an effect, thus change to -1
2020-05-21 16:27:33 +03:00
Garux
62603d25fb
don't check equality to gboolean FALSE and TRUE
2020-05-21 16:27:31 +03:00
Garux
70cf8c4bdd
gtk_widget_ref/gtk_widget_unref -> g_object_ref/g_object_unref
2020-05-21 16:27:28 +03:00
Garux
e8998ab4a8
replace gtk_radio_button_group()
2020-05-21 16:27:26 +03:00
Garux
9d34fca65c
gtk_entry_set_editable -> gtk_editable_set_editable
2020-05-21 16:27:20 +03:00
Garux
620fbffea7
only #include <gdk/gdk.h> <gdk/gdkwin32.h> <gdk/gdkx.h> <gdk/gdkkeysyms.h>
2020-05-21 16:27:19 +03:00
Garux
0140da6e72
only #include <gtk/gtk.h>
2020-05-21 16:27:17 +03:00
Garux
cd529b4fb0
replace gtk_signal_connect, GTK_OBJECT, GTK_SIGNAL_FUNC, gtk_object_set_data, gtk_object_get_data
2020-05-21 16:27:15 +03:00
Garux
4f8e6e7ee5
fix the rest of errors with CFLAGS+="-DGSEAL_ENABLE" except accel_label->accel_string required hack
2020-05-21 16:27:14 +03:00
Garux
50e1af1a16
update GtkWidget allocation access method
2020-05-21 16:27:03 +03:00
Garux
d214be3911
update GtkColorSelectionDialog use
2020-05-21 16:24:52 +03:00
Garux
065862627e
update GtkAdjustment data access methods
2020-05-21 16:24:50 +03:00
Garux
12263f74d1
use gtk_widget_get_window() instead of widget->window
2020-05-21 16:24:40 +03:00
Garux
ff33df7d45
replace GTK_WIDGET_VISIBLE -> gtk_widget_get_visible()
2020-05-19 23:46:54 +03:00
Garux
112f66fb06
remove deprecated GTK_WIDGET_SET_FLAGS GTK_WIDGET_UNSET_FLAGS use
2020-05-19 22:08:00 +03:00
Garux
e1a145c234
remove excess (GdkModifierType) casts
2020-05-19 21:40:52 +03:00
Garux
0831e0966d
Replace GDK_<keyname> with GDK_KEY_<keyname>
2020-05-19 21:15:11 +03:00
Garux
a0a47640b0
* new rendering system for volatile text
...
(symbols rendered to atlas texture)
deliver position via glRasterPos + glGet GL_CURRENT_RASTER_POSITION to avoid adding calculations of screen coords in many spots
solves problem: pango 1.44 switch freetype->harfbuzz = bitmap fonts aren't available, in particular no gdk_gl_font_use_pango_font()
text is rendered from font bottom (was from baseline)(latter is wanted less often)
wgl bitmap<->pango sizes do not match, thus realign all text positions, increase default font size
make 2D axes labels, view type text, sizing info adaptive to font size
#24
fixes #42
2020-05-14 07:51:34 +03:00
Garux
fa2a179fd5
fix memory leaks in texture browser::tags functions
2020-05-05 23:36:48 +03:00
Garux
ef2fdfa127
make bestPlaneDirect, bestPlaneIndirect const
2020-05-05 19:49:01 +03:00
Garux
002f45d6d9
minor refactoring
2020-05-05 12:32:44 +03:00
Garux
13f877b7db
forward path slashes entered in surface inspector, find/replace dialog::replace
2020-05-05 12:31:53 +03:00
Garux
d48ce73d01
reset texture browser origin on directory loading
2020-05-04 20:52:48 +03:00
Garux
7ae79b263d
minor refactoring
2020-04-28 08:30:25 +03:00
Garux
06cd1e98ff
* Model Browser: default bind '/'
...
m1 = assign model to selected entity nodes (shift + e to select nodes of group entities)
m1x2 = insert "misc_model" with given model
m1 drag = rotate model
Preferences.Model Browser: list of * separated folderToLoad/depth values, e.g. *models/mapobjects/99*maps/1*; */99* loads root
2020-04-26 07:28:23 +03:00
Garux
d26669d041
try to fix MAC compilation #40 : probably more elegant 'environ' variable access
2020-04-04 21:46:39 +03:00
Garux
a7de623115
try to fix MAC compilation #40 : workaround ambiguous 'environ' global variable availability
2020-04-04 21:09:36 +03:00
Garux
56ecc1b0a5
reduce texwindow.h inclusions
2020-04-04 19:39:57 +03:00
Garux
5fb3d587a4
use std::next instead of std::advance
2020-03-19 03:07:19 +03:00
Garux
7acdf92d50
* QE tool mouse move: highlight PlaneSelectables with alt/ctrl+alt, components in component modes
...
improve bestPlaneIndirect pickup (resolve, when corner is closest)
support 2d in class DragPlanes::bestPlaneIndirect
2020-03-19 00:00:28 +03:00
Garux
a4b61f88e5
* shortcuts list: add Reset All button (defaults all shortcuts)
2020-03-10 08:30:15 +03:00
Garux
b122d19ec7
* shortcuts list: add Reset button (defaults selected shortcut)
2020-03-10 06:57:08 +03:00
Garux
e301fce02e
simplify command_list_dialog codes
2020-03-10 05:38:50 +03:00
Garux
64e2eebfb3
rewrite GlobalShortcuts_foreach() to use functor semantics
2020-03-09 23:06:45 +03:00
Garux
e25f67ca29
use struct for ShortcutValue, add accelerator_default value
2020-03-09 20:34:39 +03:00
Garux
380d5547c5
use GlobalSelectionSystem().foreachSelected instead of GlobalSceneGraph().traverse in alt+m1 PlaneSelectable pickup
2020-03-09 06:34:28 +03:00
Garux
e7b8e36db6
* DragExtrudeFaces: process with selected faces only, i.e. w/o objects selection
2020-03-09 05:53:14 +03:00
Garux
6e88e7b746
* DragExtrudeFaces: diagonal extruded brushes joints if extruding multiple faces per brush
2020-03-08 17:23:02 +03:00
Garux
d664d15f17
* improved CSGTool::Hollow::diagonal algorithm (reliable for complex brushes complete extrude, handle simple brushes deep partial extrude)
2020-03-04 04:01:20 +03:00
Thomas Debesse
9f29864f50
lessen code duplication
2020-03-03 02:24:36 +03:00
Thomas Debesse
66e6781c9b
use Instance_isSelected() function
2020-03-03 02:00:15 +03:00
Thomas Debesse
1acf0bb221
* alt + m1 2D view face vertex manipulator: use 'faces on the only best plane' pickup strategy
2020-03-03 01:57:56 +03:00
Thomas Debesse
edb9abc546
use xdg-open to open url on Linux
2020-03-01 20:08:55 +03:00
Garux
4b2f9d6080
* open/save dialogs: use current file path, name, focus it, if present
...
brushexport plugin: case insensitive extension check
2020-03-01 19:38:27 +03:00
Garux
658819cfac
support https in help menu
2020-02-29 05:12:38 +03:00
Garux
097a662814
* preferences->Grid->Max grid coordinate: how much big grid to render (visual aid for games with small world)
...
known minor issues:
preference change to smaller value doesn't trigger 2d view origin, scale constraints evaluation (ok after doing manually)
preference change during region mode resets grid region size
2020-02-27 21:03:04 +03:00
Garux
9304e9bfa5
bigger default grid spacing
2020-02-25 19:21:14 +03:00
Garux
94a6cc9cda
lower default camera fov
2020-02-25 19:01:48 +03:00
Garux
abcc47ad64
more csg tool refactoring
2020-02-24 21:44:20 +03:00
Garux
53676dcf31
* csg tool: +faces face specification mode (only process selected faces)
...
* csg tool: also process unselected brushes with selected faces
2020-02-24 21:43:27 +03:00
Thomas Debesse
07a06b5b89
* ctrl + alt + m1: extrude pointed faces of selected brushes and selected faces inside/outside
...
* improve alt + m1 resizing camera for slanted faces
2020-02-22 04:14:45 +03:00
wongit
df7d260538
fix for spawnflags toolstips now showing when bits are skipped
...
(undefined)
2020-02-21 22:03:20 +00:00
Garux
37ae7f0794
* support Quake3 and Quake in -gamedetect (autodetects by availability of "baseq3/pak0.pk3" and "id1/pak0.pak" in folders prior to radiant's)
2020-01-28 19:38:03 +03:00
Garux
34e9b522b7
* shader editor: support files with crlf line feeds in linux
...
preserve line feeds on saving
indicate 'modified' state by save button and window name
view shaders from packs too (read only)
refactor
2019-11-09 15:13:59 +03:00
Garux
bad1a965c0
fix shader editor text length and offset in linux
2019-11-06 13:02:24 +03:00
Garux
b9d846ac32
build menu.customize: clear ... placeholder string on the "editing-started" signal
2019-11-03 23:51:22 +03:00
Garux
e849c95216
* build menu.customize: ctrl + c / ctrl + insert = copy, ctrl + v / shift + insert = paste build presets and command lines
2019-10-09 15:05:13 +03:00
Garux
4809f1a27a
* build menu.customize: show placeholder string in entries for creation of new ones
2019-10-08 23:42:13 +03:00
Garux
05d7db4e3e
don't append excess slash to g_qeglobals.m_userGamePath
2019-09-12 20:21:24 +03:00
Garux
a834981d53
binds... * shift + }/{: CameraModeNext/Prev
2019-09-08 18:28:48 +03:00
Garux
4ebfc1dcac
refactor template class LatchedValue use
...
make m_sGameFile LatchedValue
fix odd prompt to restart after game change via global preferences dialog + OK in local preferences
sort games list alphabetically by .game file name
2019-09-07 23:04:10 +03:00
Garux
1a18246a1f
* suggest to automatically restart editor on change of preferences, which require this
...
* suggest to restart after selected game preference change
import of https://gitlab.com/xonotic/netradiant/merge_requests/141 e2f605b12f
2019-09-06 11:22:28 +03:00
Garux
6c9870f941
* workaround gamma bug in 2D views and texture browser with fresh nvidia drivers
2019-08-31 12:22:47 +03:00
Garux
6e42edd1cb
* calculate fov against max of 3D viewport width, height for consistency
2019-08-31 11:30:29 +03:00
Garux
3bb51ba6b9
* fix invisible radiant with floating 3D camera window hidden in non floating layout
2019-08-30 12:30:16 +03:00
Garux
fb773e2bcb
tweak XYWnd code
2019-08-30 00:54:53 +03:00
Garux
1e0f7ba781
tweak VIEWTYPE related code
2019-08-29 00:41:40 +03:00
Garux
15cf9d0b55
* focus all 2D views on map load, selection by q3map2, NextLeakSpot, selection by brush/entity number
2019-08-24 01:12:01 +03:00
Garux
446e1148a5
* prevent runouts of 2D views from grid area
2019-08-23 23:38:29 +03:00
Garux
154b5f3619
shorten XYWnd::ZoomIn() / Out logic
...
fix odd wxywnd updates on zoom out of scale bounds
2019-08-23 20:32:28 +03:00
Garux
4e82cdf2f4
shorten code
2019-08-23 19:21:39 +03:00
Garux
da7c72547b
remove MIN use
2019-08-23 14:57:34 +03:00
Garux
49d1c98d81
* disable overlay front buffer rendering hack in 3D camera and completely in 64bit builds
...
* render 2D crosshair, as overlay, update it during manipulations
* fix active 2D view outline rendering in 2x2 layout
2019-08-23 13:06:16 +03:00
Garux
9c908392b9
fix warnings and error
2019-07-06 14:35:20 +03:00
Garux
04b4f5fb1d
simplify TextureBrowser Texture_Draw()
2019-07-05 19:30:43 +03:00
Garux
58b786d6e6
* fix face centroids of small faces at big coordinates in 64 bit
...
(explicitly cast to double, which likely happens implicitly in 32 bit)
2019-07-05 19:27:00 +03:00
Garux
2426697f65
UV Tool: add patch support
...
patch controls move modifiers: shift = only move along the axis with the biggest move, ctrl = snap hard to grid and povit lines
fix a couple of Patch::Calculate_AvgNormal() and Patch::NaturalTexture() problems
2019-06-10 15:17:57 +03:00
Garux
684187c4ec
fix clipping whole brush by clipper after 3ce07bb310
...
fix rotate manipulator selection after aa99f4d254
2019-06-01 19:25:01 +03:00
Garux
aa99f4d254
* UV Tool (edit texture alignment of selected face) modifiers:
...
pivot control point and lines: ctrl = snap hard to face vertices and grid
grid density controls: shift = change density of both axes synchronously, ctrl = power of two grid
scale lines: shift = scale axes synchronously, ctrl = snap hard to vertices
alt + m1 on grid = skew texture (is possible alright in BP and Valve220 map formats, not in AP); ctrl = snap hard to edges
texture move: shift = only move along the axis with the biggest move, ctrl = snap grid lines hard to vertices and pivot
rotate: shift = rotate with step of 15 degrees, ctrl = snap hard to edges
2019-05-19 10:30:44 +03:00
Garux
3ce07bb310
change points order in plane3_for_points( const BasicVector3<Element>& p0, const BasicVector3<Element>& p1, const BasicVector3<Element>& p2 )
...
to be consistent over the related code
to omit points swap there and there
2019-05-01 12:38:58 +03:00
Garux
71c63fbdc6
* fix alt + m1 indirect faces picking, when object is partially or fully out of camera view
...
refactor math functions
2019-04-28 20:54:29 +03:00
Garux
b9a43074f0
fix wrong alpha after negative float to byte conversion in RenderableCamWorkzone
2019-04-24 01:08:51 +03:00
Garux
8d1015c7c8
make RenderTextLabel OpenGLRenderable
...
render CamDrawSize in uniform way
2019-04-23 14:02:13 +03:00
Garux
58eb6e61d2
simplify RENDER_TEXT logic
...
class RenderTextLabel for text rendering
* consider texture alpha channel during rendering of shaders with qer_trans
2019-04-23 11:31:52 +03:00
Garux
4bc399fe56
optimize RenderableCamWorkzone
2019-04-17 13:57:59 +03:00
Garux
f45f759b43
* bigger components handles
...
* render occluded brush vertices differently
disable NV_DRIVER_BUG workaround
remove RenderableWireframe::glColorPointer call
2019-04-16 00:07:50 +03:00
Garux
eff4d4224c
use hardcoded opengl font names in windows only
2019-04-12 20:54:23 +03:00
Garux
bfc66aa6af
* prevent resizing brushes to zero volume by faces drag, try to stop at minimal configuration
2019-04-04 17:34:08 +03:00
Garux
2ef794539c
* fix sloped brushes evaluation at big coordinates (aka disappearing faces and brushes)
...
add windingTestInfinity() to bruteforce test maxWorldCoord's multiplier, lending reliable winding infinity
experimental Winding_createInfinite() percision improvements, borrowed from q3map2's BaseWindingForPlaneAccu()
2019-04-02 00:17:26 +03:00
Garux
429eae54de
* fix precision of brush vertex editing and wrap merge
2019-04-01 23:50:35 +03:00
Garux
213b680a3c
* region XY: only deselect excluded objects for convenience
2019-03-24 23:05:14 +03:00
Garux
12d010446b
* Brush->AutoCaulk Selected (F4); camera must be there, where legit player respawn could be, i.e. close to selection and not inside of a brush
2019-03-23 19:10:41 +03:00
Garux
fd0f0e0a6f
minor optimization
2019-03-19 16:45:26 +03:00
Garux
0aa711ef74
better move amount measurement logic for m2 = texbro scroll or tags condition
2019-03-14 21:19:15 +03:00
Garux
645d33be37
* special mWheel scrolling mode during orbiting in camera (alt + m2)
2019-03-14 21:10:02 +03:00
Garux
57b374417d
shorten brushexport command name
...
increase offset in commandlist.txt
2019-03-13 19:58:21 +03:00
Garux
502c0f8bc1
* all plugins commands are bindable
...
support detachable menus in submenus of plugins menus
user_shortcuts_init() and user_shortcuts_save() are moved to not the most convenient spot, as init has to happen after plugins init and before menus creation
2019-03-13 19:45:51 +03:00
Garux
51ee1dcccb
more undo levels
2019-03-08 19:57:19 +03:00
Garux
dabcad5088
* Shortcuts edit: fix "already assigned" check
...
rebase shortcuts logic on 'key is lower, modifiers are allowed in struct Accelerator' idea
2019-03-08 19:31:51 +03:00
Garux
a1abcd8c83
* bindable commands TextureProjectAxial/Ortho/Cam, using default texdef, unlike surface inspector buttons
2019-03-08 12:52:19 +03:00
Garux
b3154d301e
fix shaking XYWnd::XY_DrawAxis position
2019-03-07 23:48:48 +03:00
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