Many of you will know of Goxel, a voxel editing program that can handle AoS maps, or be used for modelling.
Late last year, while myself and Influx were mapping, I decided to fork the source code and begin making some updates to it as we encountered things we wanted to change. I had been releasing these directly into the Voxel Cartography Discord, and having made a tiny recent fix I realised that I should (A) start using GitHub’s release feature to share them, and (B) advertise it outside of our small server.
🆕 FPV/First person camera ('#' hotkey toggle)
Full control over it is in the Camera category; toggle button for it, with settings such as fly speed, FOV, and manually being able to set the coordinates.
Arrow keys for direction.
Page Up/Down for vertical movement.
Right (or middle mouse) click and hold for "looking" (bare in mind you can't look and move at the same time for now).
🆕 FOV setting for regular camera (separate to FOV for FPV)
🔀 Rotational camera has a higher default FOV as part of making the transition to FPV less jarring; hopefully not too much of a problem - if it is, let me know. Can alter it yourself now anyway
🆕 Importing now adds the voxels into a new layer; this new layer is named after the file
🔀 kvx no longer has bounding box on import
🆕 Colour picker in tools panel is now the full colour picker from the popup (also reminder that holding CTRL while using a block adding tool briefly toggles to the colour picker for easy access!)
🛠️ Colour picker correctly steals mouse inputs, thus no longer draws underneath its popup while picking
🔀 Heightmap and colourmaps now export using .bmp, so they can be fed right into "bildramer's heightmap converter" (still need to specify .bmp in the file name)
🆕 Width/height/depth of brush
🆕 Added hotkey settings for brush modes (add/sub/paint are U/I/O) and planes (<> for move it up/down, / for visibility). Can change in settings.
🆕 Height/colourmap export (file > export)
🔀 Layer pane display always visible on the right
🛠️ ByteBit's AoS .vxl file fix
Can find me in the Voxel Cartography Discord - I will check here a bit but it’s easier to reach me there or in aloha’s aos-mapmaking channel. I doubt I’ll put much more time into it (only came on to fix a tiny issue with it, previous update was last December). Hopefully it’ll be useful to some of you mappers out there.
Half a year or so passes!
Two weeks ago I re-setup my dev environment for goxel and continued with more wishlist items we put together. I’ve now put out two versions that I’d love to get into more hands and test more thoroughly.
Here’s the major headlines…
Goxel 13
My fork was wildly out of date compared to the main branch, so it was long since time to bring the latest and greatest into my fork.
New UI - imgui was updated to the latest, and a new UI was added
Rect Select (tool) - can select based on screen coordinates rather than a selection box; click and drag = a selection
Rotation around an origin (part of move tool) - rotating is now around a definable origin rather than an arbitrary middle-of-map origin, making rotations far more user friendly
.gox import - adds its layers into the current working file
Camera angle quick select - the new ‘cube’ in the upper right can be clicked to move the camera to various preset angles for the top/side/diagonals
Colour inherit brush settings
Inside the brush/shape tool, you have an extra bar in the ‘color’ section:
User = use the user selected colour from the GUI
Inherit = ignore the user selected colour, and instead take the nearest colour beneath the cursor
Add = add the user colour to the inherited colour
Mid = find the midpoint between the user selected colour and the inherited colour
Doodad placer tool
Import an external file (kvx/kv6/text at the moment), it’ll show a preview you can manipulate, click to add it into the current layer!
Previously you’d either have to use VOXED for this, or File > Import > [format] > (imports to new layer) > (move tool it into position) > (merge down if wanted)… which was a painful user experience. Now all that is done in one click.
It also has a history section filled with buttons representing files imported during this session, for quick access:
Non 90-degree rotations
Previously, you’d have to use an external tool like Magicavoxel to do this; now it can be done in goxel!
Move tool’s rotations are still 90 deg, as that is non-destructive in nature
Move tool has a new “Rotation (Destructive)” menu, with ‘Degrees X’/Y/Z and an apply button. Provide an angle in degrees, press apply and it’ll rotate the current layer that much (or at least try!). Can undo if necessary, and is a destructive operation as non-90 deg rotations are by nature destructive at low voxel resolutions
Doodad placer tool’s rotation buttons rotates by 12.5 degrees each button press. This is not destructive as it is a temporary volume that is cached and only “exists” once you click to place
Other features
Select layer of block under cursor hotkey - hover over a voxel and press the apostrophe ’ key (configurable in settings). This will switch your ‘active’ layer to be the layer that voxel belongs to
Selection tool shift to move - when using the selection tool, you manipulate a box to create a selection area. There’s two modes to it - RESIZE and MOVE that were inside a combo box. This is still available, but holding the shift key will temporarily switch you to MOVE, allowing you to move your bounding box rather than resize it in an easier way than having to use the combo
Selection tool ‘select entire layer’ button - quick way to select the entire layer content
App default tweaks - shadows disabled, blocks not so shiny and grid opacity reduced by default. Disabling shadows should help performance
Excellent editor, I’m already using it.
Of the minuses, I have not yet understood how to easily create complex terrain of earthly hills. I simply draw lines around the areas and move them up one level. The line maker is a bad tool, it misses random blocks of the line being drawn. It definitely needs to be fixed. And secondly, I wanted to have a custom palette, otherwise it’s not convenient to constantly click with an eyedropper.
Complex terrain is always a tricky one! Using colour alpha and the painting tool in goxel is an option but you may need to chop your terrain layer into several smaller ones in order to keep it performant.
The other option is to export your terrain as a heightmap, create a colourmap in your favourite image editor as a bmp, and then re-combine them into a vxl using Bildramer’s tool. Image editors have great tools for creating textures and such, so that’s the most versatile option.
Line maker - interesting. I’ll play about and see.
I’d definitely try using the brush with ‘1’ for the Z height, and then potentially trying out the ‘plane’ tool. The ‘/’ hotkey will enable the plane and ‘<’ and ‘>’ will raise/lower it. You can then change the snapping settings on the brush settings to make you only snap onto the plane and not the mesh. Makes building up terrain layer by layer much easier.
As for colour palettes, it looks like you can import colour palettes from gimp, but there are palettes built into the editor as well, the palette icon on the left has a dropdown, maybe one of those can help. If you’re in the brush tool, you can hold CTRL to temporarily switch to colour picker and click to grab. Can also hold SHIFT and the brush becomes a line tool temporarily as well. Perhaps those two will help.
Placer and Selection tool - both now have “Copy to placer” and “Move via placer” buttons after a selection has been made.
“Copy to placer” keeps the original voxels and selection box in place.
“Move via placer” copies the blocks within the selection, then wipes the selection and its box, ready to be placed elsewhere any number of times by the placer.
This change effectively provides a “move selection” mechanic, which has been saught after for a long time. Also means if you create something in one part of the map, you don’t necessarily need to export and reimport in order to use it in other places - can just copy the selection while keeping the original in place.
Massive performance gains for brushes (placing/painting etc) on large volumes thanks to some investigation and intervention by the original creator of goxel through an issue on the original repo (https://github.com/guillaumechereau/goxel/issues/414) Snap panel is now docked to top when a tool uses snapping Placer tool now displays the rotation in each angle in degrees and there’s a reset button
Also includes all the stuff from the 0_2h pre-releases:
Noise! The colour panel now includes noise with some parameters. Works with painting and placement “Reset” button in fuzzy select that removes selection, and renamed “Clear” to “Delete blocks” for clarity. Moved this button too Magica voxel format correctly appears in the menus again Layers pane re-pinned to right Bundled a bunch of scripts I had posted in Goxel Scripts into the application by default Import > colormap (applies to current layer, all the way down z) Import > hmap + cmap (select two bmps one after another, aka the bildramer program)
Placer fix - I broke it with 0_2i’s changes to show the rotation in the placer, can now successfully open it
Camera speed defaults to something far lower, and the near clip plane is 10x smaller (meaning you don’t see ugly terrain clipping when in confined spaces)
More tools show the ‘snap on’ menu at the top (extrude and selection, as both use snap)
“Alpha” component of colours is no longer 0 - 1 with 0.1 increments, but changed to “Opacity %” with 0-100 in integer increments and have fixed rounding. This means the thing no longer gets stuck and it’s more fine-grained
Plane tool now has the grid color picker and the reworked “Opacity %” hooked into it so that it’s easier to alter the plane’s color/opacity
FPS is now displayed in a fixed position in the bottom left, which might help show if/when performance dips
Filters! Goxel main branch introduced floating windows known as “filters” which are like scripts, but can have a UI and are made internally with C rather than being very limited Javascript:
“Colors - H/S/L/C for layer” = change hue/lightness/saturation/contrast of the current layer (from main repo)
“Translation - Mirror” = a more advanced flip, can be of the entire map or of the current layer (from main repo)
“Translation - Wrap” = shove the current layer across image boundaries and let it wrap across (from main repo)
“Bulk - Fill upwards by color” = goes from map bottom, filling with voxels until it reaches a block (useful for large .obj imported pieces)
“Bulk - Remove by color” = removes all blocks from layer of specific color (useful for removing vxl default blocks)
Scripts - have binned all of my previously made scripts as they are no longer needed and are now filters!
Layers have marker colours - highlight various layers by changing their marker!
Layers panel entries now 30% shorter, e.g. can fit 31 rather than 22 layers in view on a 1080p screen
Ambient light defaulted to 1.0 (from 0.3)
Occlusion defaulted to 0.6 (from 0.4)
Clone layers don’t immediately update on change if they’re hidden; and gets the copy when showing again
Linux/mac builds auto generating (@utf-4096), and the debug build working on linux again, which will come in handy
Filter - “Transform - Squash”, condense layer heights by a %
Filter - “Generation - Genland”, borrowing from Tom Dobrowolski’s generation code and Ken Silverman’s noise and other pieces. Many configurable options available in here (with more likely to come) - with thanks to @utf-4096 for the seed/wipe layer options
Filter - “Generation - Doodad placement” analyses heights of terrain/image, and with a list of doodads imported into the filter, can randomly place these around on the currently active layer. Forests in a click!
Export panel - (@utf-4096) long unused/unloved, but it now remembers where you exported last and can re-export there with one click! Information on how this can be auto-reloaded into a live Ace of Spades server can be found in a guide on our discord.
“Export” > “gox (visible layers only)” - as described - doesn’t include hidden layers in the export, very useful if collaboratively working on a map!
Placer tool - ‘Flip’ options added
Brush line tool
When using shift to toggle to line mode, it displays the distance in x/y/z from start to end point inside the help text in the top bar
Holding alt during this will lock the Z level of the line (may change a bit in future)
0_2m
Non-windows builds are now broken, only the exe shall be released.
Filter - “Simple Shadows”, which just does a straight-down shadow of objects from other visible layers, onto the current layer
Filter - “Coords”, which spits out coords of the selection box into the console
Some actions now contribute to the history undo/redo when they didn’t before (various fuzzy selection actions for the mostpart)
Fuzzy select now has an “Entire layer” checkbox which switches out the default neighbour-based selection with a check across the entire of the current layer
Fuzzy select’s “fill” option now respects the noise settings
Label size push/pop for more control over label width (should help when making/updating popups)
Camera - new type that emulates a player, with gravity and collisions. Move (WASD), jump (space), crouch (ctrl), noclip fly state (hold alt) Fill tool - uses current colour settings to floodfill an area. Best used in conjunction with plane snapping Palette - completely reworked; can add/remove palettes, add/remove colours to/from palettes, globally saved “Palette - usage from layers” filter - can acquire colours from the map into your palette Colour history bar - each time a colour is used/picked, it is added to a 20 colour history at the top of the screen next to the snap settings. It remembers the noise settings used too. Persisted into the .gox file. Right click on a colour in the bar to remove it Placer - richer history UI (preview of model, floating panel, sorting, remove entries etc), and is persisted as part of .gox Placer - per-place random rotation/flip settings to add variation on each placement Placer - configurable colour replacement (random or fixed) - bit like greenscreen, replace a provided colour with something that changes each placement, great for repeated map objects Placer - import model dialog is now a multi-file dialog Brush - Added “Origin at base” checkbox will shift the origin of the operation so that it starts at the cursor and goes upwards rather than both up and down centrally Colours - noise texture scaled up (512 vs old 16-block tiling) for less repetitive noise Layers - new / duplicate layers insert under the current layer; layer add/remove keeps selection sensible Layers - delete no longer triggers on hitting ‘d’, history correctly updated before delete so you can undo Camera - FPV: movement no longer stalls during mouselook Line tool - removed; hold shift during brushes instead
Box select > Move selection - once a box is drawn, hold alt and drag a face to move the contents of the box
Filters > Generation - Terrain Coloring. This will take the blocks on your current layer and apply a genland-esque coloring/lighting solution to it, with lots of parameters for you to experiment with
View > Wrap, this creates a temporary visual of how your image ‘wraps’ at the edges by creating a temporary/point-in-time clone of it and placing 8 of them at each border/corner to show how edges blend with each other. Untick and retick ‘wrap’ box to re-acquire latest blocks
Layer > Opacity - control how opaque a layer is when visible
Layer > Volume snap - turning this off allows you to see the layer but exclude it from ‘volume’ based snapping (espcially useful when twinned with opacity)
Placer > Scaling - so you can shrink/expand the size of objects easily before placing
F11 to toggle fullscreen
Export as > Kv6
Brush/Shape - using **ctrl+**shift for color picking retains alpha of previous color
Image > Crop to image box
Filters > Translation - Rotate. Clockwise/anti-clockwise 90 degree bulk rotation of all layers
Extrude now honours noise settings so that extruded blocks can be noisy
Open recent now opens the most recently edited file on load of program
Fuzzy selection > Fill - it used to sometimes fill with white regardless of what color you had selected
Filters > Simple shadows - had broken with some recent changes, now works again
[various filters like wrap/translate] - fix performance issues that arose after the operation finished (they can still be quite slow to actually perform)
There has been many updates.
2p, 2q, 2r, 2s, 3a, 3b, 3c, 3d, 3e, 3f - with ~140 distinct patchnote entries!
A few highlights:
Major UI overhaul - left bar has been ripped out and put into other places; “Image” wide and “Layer” wide operations moved into dedicated menus up top, tools/layers/palette/imagebox have dedicated show/hide buttons in the top right, most other windows are still openable via ‘View’ menu
Nested layers - you can now have parent-child relationships between layers! Group things, move groups, show/hide groups etc
Procedural map filters - biomes, buildings, hedges/roads, water layer, imprint, explosions, noise/reduce-colors, sun shadows, layer split based on non-connected structures
Image/Layer > Translate - move all blocks (within a layer or whole image) by an amount
Filters > Utilities > Color average - select some colours and it’ll give you in-between colors
View > Grid - yes/no replaced with grid strength; grid colour auto white/black from block lightness and renamed existing “Grid color” to “Plane color”
Colour picking via Ctrl+Click now works when within most tools
Fill tool - can use texture/palette options
Saved files added to recent / most recent
Surface paint on explicitly turns off block face align / origin at base / auto-plane
Default background colour set to sky-like #939E9EFF
Palette / reduce_colors analysis uses visible layers only
Ctrl+click exits brush palette mode
Dithering seed reset on new brush strokes
Fix palette overflow and new palette colours now correctly get their RGB tooltips
Fix segfault when a group is selected during placer operation
Fix fuzzy select mask mode buttons not reflecting the initial mode it’s in
0_3e
Plan > Imprint filter - place blocks somewhere above the map, and choose a layer to “imprint” those block into; useful to create trenches, as you can place e.g. 3-high, 3-wide trenches in the sky on a plane, and then have it nicely apply onto non-flat terrain underneath
Image/Layer > Noise - apply noise uniformly across an entire layer or entire image
Image/Layer > Reduce colors - use a couple of forms of quantization to reduce the number of colours used
Where there used to be “In new layer” and “Replace current layer” (with the former creating a child if a layer was already selected), there’s now three options - “New layer”, “New child”, “Replace current” so that it’s more explicit
Camera > Player mode - the bottom of the image box is now a walkable surface
View > Wrap Preview wipes on new map load
Fuzzy select now forces volume snapping (previously it used whatever you had but only volume snap makes sense for fuzzy select)
Attempting to open an already opened filter will centre it rather than close it
Recent files are now ordered based on opening files rather than saving them
Fix recent file load failure
Fix (some) imgui id warnings
vox (trenchblocks) now works correctly with non standard sized maps, uses an updated vox format, the 3D point/zone in the metadata now correctly positions the zones rather than using the top z block like 2D points/zones do, and can now place these spawn areas on empty columns
0_3d
Plan > Explosions - destructively simulate explosions from a target plan layer (with dots/shapes for where to put them) onto a chosen terrain/other layer
Cameras > Smoothing - enable input smoothing for mouse and keyboard controls for nicer flythroughs
Cameras > Fly cam - holding right ctrl will lock your Z level, allowing you to look down while not moving down (this is also smoothed by the setting mentioned above)
Smoothing tool “paint mode” - more changes to be made here, but a rudimentary colour smoother when you are in ‘paint’ mode rather than add/subtract
Smoothing tool “3d mode” - to compliment 2d mode, 3d mode restricts changes vertically, allowing to smooth tunnel floors/ceilings
Smoothing tool now handles empty columns with either a cutoff or by inventing voxel shapes in the void
Move tool - scale controls per axis have been copied from the placer to here
Genland filter will keep its parameters between close/opens of the window
Previously, any voxel with <127 alpha was not rendered, it is now rendered - should be clearer
View > Wrap preview - this now creates a one-shot mesh of the current image, resulting in far better performance
Placer multi import now previews all files correctly and doesn’t weirdly merge them into one volume
Imgui error beneath last layer if it was a parent to other layers
Fix filter windows appearing strangely offscreen - they will now restore in screen centre
Fix Water Layer fiter’s colour bleed setting post-layers-update
0_3c
“In-use colors” palette - populates based on colors present in the entire image (regardless of layer)
“Palette” brush mode - shift+click on palette colours puts the brush in this mode, which allows you to multi-select colours, at which point the brush randomly applies those colours
“Reduce colors” filter - in Image/Layer menus, reduces the color count by quantization
Effects > Generate > Biomes - Triplefox’s random map generator that was part of pyspades, ported with his blessing
Fuzzy select now has “Hollow” - select a filled shape, and hollow it out by deleting innards
Fuzzy select’s “Expand selection” is now “Expand/shrink selection”, shrink will reduce the selection mask inwards
Genland - ‘river meander’ parameter added
“Merge layer down” in the layers panel has an updated icon
Trenchblocks vox - fix duplicate colours appearing in palette
“Export as” in box select was not working
Correct options available for “Import as” and “Export as” in box select and placer
Fix crash for having no layer selected re: fuzzy select/rect select
0_3b
Smooth tool - averages surroundings and can introduce some noise while doing so
Trenchblocks game-specific .vox export - uses values from the Trenchblocks metadata we already have, to add the required blocks, this is likely to shift/change as time goes on
Metadata versioning - should be able to re-seed the metadata templates based on Goxel version, so if you do want to make changes to metadata templates in your appdata files, make a differently named copy first
0_3a
Time for a major release! 0_2s → 0_3a.
This update radically alters the UI and layer functionality within Goxel, adding a new cursor/pointer tool for selecting layers, moving items into menus, several new buttons and options, and the ability to nest layers.
As this is a radical change, it would be advised to make backups of ongoing map files and to save often/to versioned files; please report any issues to me!
Layer nesting - “it’s turtles all the way down!”
You can now group layers, move as a group, show/hide as a group, focus a group…
“Focus” functionality, which solo’s that layer without touching overall visibility settings, Shift+Focus button also moves your viewport to the layer; the TAB and Shift+TAB hotkeys are added to perform this too
Arrow keys no longer rotate the viewport, they instead allow navigation up/down layers and expand/collapse layers
Cursor tool - see unlocked layers as selectable objects, move them around easily, deselect all layers by clicking into space
UI shuffle - a lot of things have moved!
“Filters” are now mostly under the “Effects” menu
“View” menu has far more options, and replaces the now removed left bar
“Image” and “Layer” menus acquire some old filter functionality
Layers panel can be resized and is docked better, main viewport now only renders up to the left edge of it
Ability to show/hide all UI, and view cube/camera preset buttons
Brush > Auto-plane - on start of drag, a plane is made based on the direction of the face of the block
Effects > Utils > Layer splitting - use floodfills to separate your current layer (or entire image) into many child layers with parents as a starting point
Effects > Generate > Buildings - use a flat plan of coloured filled rectangles to place the basics of buildings with windows, rooms/floors and a roof!
Effects > Lighting > Shadow from sun - we already have a completely vertical shadow tool, well now we have an angular one! Borrowing from work done on shadows in the terrain coloring effect
Image box show/hide is remembered between sessions (more to come)
Layer selection from cursor (apostrophe) functionality is now on release of ’ rather than on key press; while holding ’ you see a highlight of the bounding box of layers in the main view to make selection easier
Metadata - added world-space labels, and now correctly seeds the userdata folder with the two initial templates
Fill tool - can now also paint blocks in 3d via floodfill like regular paint buckets do in image editors
Copy as new layer - in various places where cut was the only option previously (box/rect/fuzzy select)
Terrain coloring should only paint voxels, in a few cases it was adding some
Layer selection from cursor (apostrophe) struggles to acquire the correct layer have been resolved
GitHub builds for win/linux/osx are fixed thanks to @mgerhardy
Various brush/inherit brush performance improvements, especially in light of having many more layers than we had before; more to be done here
0_2s
“Clone stamp” tool - use colouring from one part of your map, in another like a brush; hold ctrl click to set source, then brush away! Wall mode allows you to copy sideways as opposed to vertically
Brush “texture mode” - use textures as the paint! Can add your own in the appdata folder for it
Filters > “Plan - Hedges” - takes blocks on your current layer and creates a ‘hedges’ new layer with some random variation
Filters > “Plan - Roads” - similar to above but creates a road on a new layer
Filters > “Generation - Water layer” - creates a 1 block high water like texture at the bottom of your map; some presets given. If you have a base layer of terrain coloured how you want, use colour bleed to add a bit of a transition between water and land
Camera preset buttons - always visible in top right, has the three modes we’re used to + a “top down” one which toggles to orthographic and places you above your map
Brush “Block face align” - when enabled, the ‘z’ of the brush is facing you, making especially wall painting easier
Brush “Surface paint” - ignores Z of brush and instead paints solely based on X/Y and affects voxels exposed to the sky that it finds
Extrude tool - should now be faster!
Extrude tool “Color threshold” - can extrude based on colours of the surface rather than the entire surface
Extrude tool “Color inheritance” - extruding through blocks of another colour can optionally acquire the colour they passed through
[ and ] hotkeys - used to affect brush X/Y/Z size; now only affects X/Y, but holding shift will affect all three
Filters > “Generation - Genland” - some parameters have been simplified/removed, and height will cap at image box height rather than doing a weird type of wrapping vertically
Fuzzy select tool - now has the option to “expand selection” by a distance in all directions
Camera fly/player modes - ‘speed’ no longer shared, each have their own setting
Lines - various fixes to line drawing (holding shift while in the brush)
Float field dragging - last patch I mentioned a fix for 1dp, well now there’s a fix for 2dp as well
Camera mode switching - going between fly and orbit used to move the camera backwards a lot, now stays in place correctly
Camera orbit mode - correctly rotates on right click, had some strange offset
"Surface mode" added to clone stamp tool
Plan hedges/roads filter - given ‘exact placement’ checkbox; before this (exact placement: enabled), the position of the blocks on your current layer are directly used as where to generate the hedges/roads. Exact placement disabled, it looks at the x/y of the blocks in your layer, and go from max z down to the chosen layer, and then act on that. TLDR; Draw your plans on planes above the map! Now the plans don’t necessarily need updating if you alter the terrain shape beneath, as it’ll just use the top Z
0_2r
Several performance improvements, the biggest of which comes from how the brush size affects the number of voxel operations. Try out the things that used to feel laggy to you with brushes and tell me if they still are!
Filter > “Utility - .vxl color permeation” - helpful when wanting to subtract from terrain imported by .vxl - what it does is bit hard to describe, see below
Filter > “Translation - Mirror” - used to only mirror the entire layer, now has extra options for just mirroring one map half onto the other in x/y/z directions
Brush “dithering” - extends outwards from brush shape in a random pattern as a form of frosted glass/dithering type effect, useful for painting terrain
Brush antialias - changed from a checkbox that applies a 1 radius “blur” to being an integer field where 0 = disabled, 1 = existing antialias and 2+ applies a wider blur
Brush “blend mode” - “add” and “mid” options were binned, while “User” and “Inherit” were changed into…
Brush “Inherit from block(s) below” checkbox - replaces the “User” (unticked) / “Inherit” (ticked) options previously in blend mode
Placer > Rotation - the text label with the overall rotation has been replaced by x/y/z .5 step float inputs, allowing for direct input of an angle rather than relying on buttons/an increment to get the angle you want
Box selection > “Export as” - can now export from the box select tool like you can from the placer
Box selection content - this is an attempted fix for scenarios where ‘cut to new layer’ or ‘copy to placer’ etc appear to acquire blocks that are outside of the box; let me know if it still occurs
Float field dragging with low step - I was finding fields that can be incremented by .1 can sometimes get stuck during a click drag, have made a change to not get stuck
Various missing glyphs in the font file - things like ~ and ; in labels were being rendered out as ?, these should now render properly
0_2q
Filters > “Metadata” - allows for custom data to be edited and shown on the map, and exported to json. Uses json templates as starters, more on this below.
Import > “image plane” - renamed to “image reference”
Import > “image volume” - performs the image reference import, converts it to volume, and moves volume to bottom of image in one step
Tools > “Fill” - changed its default key to N as the previous key F was already being used for fuzzy select; N is nice and close to the plane hotkeys
Import > hmap, cmap, hmap + cmap - the rotation/flipping issues are resolved! Exports/imports are now the correct way up to how you’d expect them to be
Placer history - fix occasional mismatch between preview and the file it would load in
Import > “cmap” - fix blocks appearing out of thin air. This was caused by a png image plane with semi transparent pixels being converted into a volume - voxels with <127 alpha were not being rendered, but the colourmap import made them fully visible again. Have fixed at both the ‘to volume’ stage and the colourmap import stage
Filters > “Transform - Squash” - should no longer move the volume’s position to the origin as it did previously
0_2p
Placer - model can now be scaled on individual axes and by custom percentages
Placer export - can now use kvx alongside the existing txt export
Placer rotation - can set a number for how much each button press rotates the model, default 22.5
Selection - holding alt to move blocks now uses temp layer and merges in on release of drag (no overriding of blocks during drag)
Selection - holding alt to move blocks now correctly pushes history so it can be undone
Extrude - now honours noise settings so that extruded blocks can be noisy
MagicaVoxel export - now supports >256 by splitting into multiple objects
Open recent - shows a new 512x512 map if it fails to open the file marked as last edited
hmap + cmap import - it forgot the hmap path first time of asking (more work on hmap/cmap import coming, #30 )