VMFSketch

VMFSketch a1-hotfix1

William Bundy

L1: Registered
Apr 1, 2017
3
22
VMFSketch - A Rapid Prototyping Tool for vmf-Based Editors

hammer 2017-04-01 09-47-04-28.png VMFSketch 2017-04-01 09-46-58-61.png
VMFSketch is a rapid prototyping tool for maps made with Valve's Source Engine.

Quickly sketch a floor plan, add walls and ramps, then open in Hammer.

To install: simply unzip the download to a folder. VMFSketch is currently Windows-only.

You can press F1 in-app to view a visual layout of the controls.
Controls:
WASD: move around.

1, 2: Decrease/increase grid size, respectively
Decreasing the grid size makes the grid denser,
increasing it makes it sparser.

Q: go to normal mode
Click on a brush to select it, ctrl-click to select multiple.
You can drag a rectangle to select multiple brushes.

E: go to edit mode
You can click and drag to create rectangular brushes.
Click on a brush to select it, ctrl-click to select multiple.
Once selected, the green handles let you resize brushes.

R, Shift-R: rotate selected brushes 90 degrees clockwise
or counterclocwise, respectively.

F, Shift-F: flip selected brushes horizontally or vertically,
respectively.

C, V: Copy, paste; just like normal, but without holding control.

X: Cut, copying selected brushes.

Shift-X, Delete: Delete selected brushes.

T: go to vertex mode
In vertex mode, the red handles let you modify the vertices
of brushes individually. This is a safe operation; VMFSketch
will not generate invalid solids. The blue handle lets you specify the
low side for sloped brushes.

G, Shift-G: Move up or down a layer, respectively. Switching layers
this way moves selected brushes too.

Alpha 1 notes:
  • As far as I know, there aren't any crash bugs
  • Creating slopes on angled surfaces can mess up brush alignment. This seems to be an artifact of vertex to plane exporting. (likely to do with the corners selected to export)
  • There is no undo. Sorry. This is #1 priority for the next version.
  • For expedience, this version uses scancodes for keyboard shortcuts, which could cause some weirdness depending on the keyboard you use. Subsequent versions will have ways to remap keys.
  • Layers are always edited as if they're at X,Y=0,0, which leads to a distracting ghosting effect.
  • This version uses the Nuklear UI toolkit, which has been very good overall, but has a few issues. Text editing is barebones, property sliders are relatively inflexible, and window management is a giant pain. Subsequent versions will address these.
  • I release this as "alpha" software not because of the quality (which I'd like to think is decent; if not good then reasonably robust), but because of the feature set. VMFSketch is a 2D tool, which makes some things easier, but the trade off is that 3D is very hard to visualize and manipulate. I have plans to improve this in later versions, and add more features in general, such as layer rotations, individual brush heights, paths/rect carving, autolighting, autosealing, auto spawn placement, and entity editing.
 
Last edited:

I dinne ken

Has currently had enough
aa
Apr 16, 2016
324
432
If this is actually a really awesome thing that you've made then you've published it on the wrong day. I'm afraid I will be bamboozled if I download it.
 

William Bundy

L1: Registered
Apr 1, 2017
3
22
I'm playing the Sean Barrett game (stb_voxel_render.h) of releasing quality software on the one day nobody expects it.
 

William Bundy

L1: Registered
Apr 1, 2017
3
22
Changes for Alpha 1 Hotfix 1:
  1. Fixed a bug where brush editing could become unresponsive to input. (It was an issue where the UI and editor were fighting for input)
  2. Fixed a bug where text input would deactivate if the mouse was moved away. You can always click in the editor or press return to deactivate the current text input widget. (Note: things like WASD panning controls will still submit to both text input and the editor if the mouse is over the editor while a text input widget is selected. This might seem a little weird but it hasn't been a noticeable problem for me.)
  3. Layers now export their names and id's to the visgroups in the vmf. Instead of "Layer0" through "LayerN", you'll be able to see stuff like "Floors - 0", "Walls - 1", "Stairs - 2", "FloorsB - 3" etc.
  4. Updated the readme with some controls I forgot: while holding space for panning mode, pressing F will recenter and unzoom the camera, and pressing G will reset the grid to 64hu.

Read the rest of this update entry...