Garux / netradiant-custom

The open-source, cross-platform level editor for id Tech based games.
https://garux.github.io/NRC/
Other
299 stars 52 forks source link

Feature request: GtkRadiant config #61

Closed themuffinator closed 3 years ago

themuffinator commented 3 years ago

Hi, after 20+ years using Q3/Gtk Radiant I'm trying to make the jump to this. The problem is that after so many years, I'm very much used to Gtk's controls and find myself stumbling about in Net trying to do what I normally can in Gtk.

I think it would attract a lot of attention from the many folks like me still stuck in Gtk to make the move over to Net if there was a config/preset option to make it behave more similar to Gtk. Working with func_groups and viewport navigation seem to be the two biggest barriers for me at the moment.

Garux commented 3 years ago

Code logic behind these controls is pretty sophisticated, also having it as it is allows having a lot of extra controls.
So there is no plan to support 1:1 Gtk 1.4 controls, unless some cool coders will join the project to implement this.
I think getting used to slightly alternated controls is a matter or creating one map anyway.
Some out of these are optional, e.g. M2 strafemode is disableable via prefs.cam.strafemode.

themuffinator commented 3 years ago

Thanks for the insight. There are clearly a lot of advancements in Net-custom and I'm excited to start taking advantage of them. A few questions/requests if you have the time:

  1. Is there a way to replicate Gtk's ctrl+alt+mouse1 function to select all brushes of a brush entity in the viewport? I know it's possible to select one brush then shift+E but the former is faster and works better in certain situations.

  2. func_group: any way to bind a key to create func_group out of selected brushes? A fast alternative to right clicking -> func ->func_group.

  3. Are there control options binding a key to move the view a few units up/down?

  4. One feature that is a major convenience (at least to me) is the angles button set on the entities modifier menu - it allowed you to simply click an angle to set the angle key to it - is there a way to enable that in Net?

  5. On the topic of angles, if I create half a CTF map, duplicate and either rotate or mirror to create the opposing base, any entities included still retain their original angle key values instead of adjusting according to the rotate/flip function - which means they need to be manually fixed, especially misc_models. Is this something that could be addressed?

themuffinator commented 3 years ago

Also: That auto-caulk feature is a dream come true!

Garux commented 3 years ago
  1. There is no. ctrl+alt+mouse1 does extrusion btw. I think m1, ctrl+e is quick enough. In certain situations, e.g. overlapping brushes, mouse bind is less practical. The situation, when current way is worse, is e.g. primitive selected and wish to add a group to selection.
  2. M2 on filter func_groups toolbar button
  3. May be searched in menu.edit.shortcuts, also m2 drag in 3D does this.
  4. You can rotate entity direction by any rotation means, so dedicated buttons are not needed.
  5. Is false, see 4. As for flip, it is not rotation, modification of angles by scaling is questionable, especially considering, that scaling modifies scale of miscmodels. Basically both behaviors might be wanted depending on use scenario. For miscmodels you'd more likely want negative scale support.
The-Gig commented 3 years ago

Also: That auto-caulk feature is a dream come true!

Auto-caulk feature? Sounds interesting, can you tell me about it?

themuffinator commented 3 years ago

That's great @Garux, thanks again and keep up the good work!

@The-Gig: select all then F4 to auto-caulk any fully occluded faces, including faces outside the level (if there are no leaks). No more obsessing over caulk jobs!

Garux commented 3 years ago

Autocaulk processes selection. It wraps it by temporal box and puts respawn, where the camera is. So camera position matters and leaks are irrelevant.

themuffinator commented 3 years ago

Strange, I tried it on a map with a leak and it did not caulk outer faces, then I loaded it again, fixed the leak and it did outer faces.

Garux commented 3 years ago

Ah right, this is needed for outer faces, though they are culled on compilation anyway.