Nomad Change Log


file: new internal file format, .nom instead of glb.lz4 (compressed lz4), should be faster

material: fix emissive channel
material: add intensity slider for emissive channel
material: ignore alpha channel for texture preview (except for color slot)

texture: mipmap saving fixed
texture: correctly save metalness if roughness is not present (and vice-versa)

dynTopo: try to keep sharp edges intact when decimating
dynTopo: non manifold triangles should stop appearing if the surface is manifold
dynTopo: generate less intersected triangles

stroke: fix offset issue
stroke: add small falloff preview

symmetry: multiple radial now supported (/!\ use low value)
symmetry: gizmo now supports radial and multiple plane symmetry

decimation: reduce memory peak usage (can avoid crashes in some cases)
matrix: fix dynTopo, DelLayer and Layer behaviour if the object has skew or non uniform scale
curve: fix spline closed repeat curve node positioning
layer: painting could lose quality when loading/saving frequently (glb export was fine)
mask: fix potential extract crash with shell enabled and smoothness at 0
voxel: try to keep consistent flip culling parameter if the base voxelised mesh was flipped inside-out
color: vertex color are now packed with rgbm instead of rgb10 bit (less banding, especially on the dark)
triplanar: fix masking symmetry
postprocess: color grading now shows the unselected channel in the overlay widget
pressure: add smoothing average option



stroke: connected topology now considers mask as unconnected topology
delLayer: fix alpha being ignore with painting
delLayer: force non accumulate mode, which give much better alpha stability

gizmo: remove world button instead add a reset align to the pivot mode
gizmo: add pin mode (pivot stays still when you switch between objects)
curve: align feature for repeater curve
curve: add scale control for repeater curve
array: add fit option to insert objects instead of appending them

scene: when adding new lights or cameras, put them them in their own respective group
interface: fix bug when a slider is interacted while a help popup is opened
decimate: quality should be consistent no matter the mesh coordinates scale
interface: fix duplicate cancel button
gltf: fix texture not being exported correctly
baking: handle UVs outside 0-1 range
heightmap: improve render export quality when debug heightmap option is enabled



Beta can usually be tested at nomad - WebAssembly

gltf: fix export



scene: add an option to inject new node on the gizmo position
scene: scale and skew ignored when adding a node on the gizmo position

baking: fix overall quality
baking: add opacity baking (from mask data)

light: add contextual panel for faster tweaking
light: fix temperature colorspace
repeat: fix curve saving in some case
repeat: prevent gizmo and repeater widgets being both visible at the same time
primitive: prevent gizmo and viewport widgets being both visible at the same time
uv: extra viewing options
cylinder: fix radius button
box: fix density not being adjusted when scaling on 1 dimension
interface: fix left handed broken popup (gizmo angle, etc)
matcap: fix import



stylus: fix stylus not working for light/primitive editing when stylus sculpt only option is used
spot: intensity slider was missing from contextual popup

shadow: objects with no shadow casting are now ignored from shadow map maximum range precision
shadow: adjust shadow map resolution depending on the number of shadows (min 512, max 1024)

paint: add roughness and metalness slot for stroke painting
paint: material preset can now be selected, cloned a bit more easily (for now the texture are not saved, only color rough and metalness)

uv: debug channel improvements and bug fixes
material: opacity texture now supported for refraction and subsurface, it will be used as dithering
multires: if max frame sampling is set to 0 or disabled, the mesh wasn’t render to its highest level
history: fix crash when undoing lot of operations with dynamic topology with layer operations
camera: update snap cube with more options (tap twice on the same face will flip the camera, small external rectangle will refocus the camera)



obj: fix vertex color space selector
stroke: add randomize option
interface: split stroke options into sub menu
save: saving new file was wrongly opening a project popup
layer: fix layer being corrupted when sculpting with offset greater than one



primitive: popup menu with topology control
primitive: fix undo state not being recorded in some cases

randomize: symmetry supported
randomize: fix falloff for random samples

dynTopo: improve performance for global remesh
dynTopo: fix many issues with undo crashes
dynTopo: global remesh now supports non uniform scale correctly
dynTopo: reorder triangles when converting a mesh into dynTopo (better performance)

reproject: reprojection now reads color, roughness and metalness texture data
baking: texture baking now reads color, roughness, metalness, opacity and emissive texture data
material: texture transform are now synchronised by default

stroke: skip the first sculpting operation when resuming a brush stroke (snap radius on)
stroke: expose sampling radius for position and normal (Filter sub menu)
stroke: add depth masking option (Filter sub menu)
stroke: add keep sharp edges (Filter sub menu)
move: add silhouette option

resources: add replace button for images resources
resources: tool preset can now have custom icon

mask: switch from 8bit to 16bit (avoid step artefact with high poly and masking)
extract: improve border smoothing
extract: possibility to smoothing everything, not just the border
extract: add edge loop on the border of the extraction for better uniform density
extract: add thickness uniform checkbox, to decide whether the mask should modulate the thickness or not

triplanar: use face interpolation instead of vertex interpolation for low res painting
triplanar: plane solo mode now snaps the camera automatically

curve: add twist option
curve: add spiral option
repeat: curve repeater respects instance count value even with custom radiuses

gizmo: mask transform supported with multiple mesh
postprocess: add presets
interface: fix performance issue with drop shadows
shape: 2d shape drawn on screen can be edited after the end of the stroke
voxel: fix 64bit version (when resolution is high, usually greater than 1625)
render: fix transparent export (black border)
join: keep uv even if one of the joined object has no uvs
camera: flip the camera according to the scene center instead of the camera pivot
history: fix some undo and redos crashes
inspector: debug uv mode button renamed as inspector with a bit more control
snap: cube icon were partially rendered depending on screen size
decimate: fix crash happening with uv mesh and non uniform scale and with parts without uvs
gltf: fix some issues when loading the legacy glb.lz4 format
instance: when joining multiple instances, keep the layers synchronised
remesh: add Instant Meshes quad remesher
images: greyscale images were sometime incorrectly loaded



trim: fix crashes
repeat: fix performance when validating many instances
bake: fix baking for objects with big bounding boxes



twist: fix spiral mode along with closed tube
twist: fix curve twist gizmo UI handler being sometimes blocked

boolean: add polygonal boolean
boolean: trim tool has now a proper boolean option

curve: Improve curve fitting algorithm to generate less points when hand-drawing curves
decimate: improve quality (easier removal of long thin triangle)

snap: use scene pivot only if the scene scene is visible on screen
snap: flip wasn’t working properly in some cases

postprocess: add dithering option (should be disabled when rendering an image with lot of flat color and no shading)
dynTopo: fix crashes when using dynTopo with connected topology and lock stroke mode
layer: fix trim or voxel remeshing duplicating too many layers when filling holes
render: fix incorrect fov during when rendering with non screen ratio
silhouette: view mode now works properly is the mesh is transformed
interface: improve performance when display many resources (alphas, textures)
depthMasking: fix top and bottom area filtering
project: fix saveAs new automatic renaming to not override existing project



tool: fixes trim and split
misc: other minor fixes



split: fix line split
autosave: fix corruption when auto saving during a background operation (decimate, voxel remesh)
shortcut: fix conflicts between sub and camera shortcuts
repeat: fix curve repeat with twist (1 handler mode)

insert: fix insertion orientation if underlying matrix is flipped
insert: fix insertion orientation if underlying material has inverse culling enabled

tube: fix snapping sometimes being ignored when editing a tube
tube: improve gizmo orientation when using snap



stylus: fix pencil being off pointer when sculpting
pivot: improve pivot of tube and curve repeat node when using the snap option
bake: fix crash if object is instance
reproject: fix crash if object is instance



file: fix boolean operation corrupting mesh (issue only revealed when reloading the project)
file: detect obj and stl even if the file extension is missing

tube: add per point profile
tube: fix snapping option when creating a new tube
tube: improve snap alignment (profile view aligned with gizmo)
tube: add profile presets

curve: fix bspline broken sampling around the end points
repeat: prevent negative radius (negative scale)
gizmo: Move To Origin option now centers the current gizmo pivot instead of geometric center
hole: edit world space value instead of radius ratio
mask: world space thickness slider



render: fix DOF focus update on tap
gesture: tube editing with finger was possible even it shouldn’t
grid: improve grid antialiasing
profile: fix curve preview issue with preset replace feature
profile: move folder button wasn’t always working


1.85 (Next Release)

Beta can usually be tested at nomad - WebAssembly

dyntopo: add an option to take the brush falloff and alpha into account

facegroup: add facegroup tool
hide: add hide tool
paint: add vertex transparency support

light: replace shadow softness option with size (point, spot) and angle (directional) option
light: point lights will automatically cast screenspace shadow even if shadowmap option is on
light: add environment light (directional with automatic color, intensity and orientation)
light: fix crash when deleting a light

primitive: all primitives now have UVs
primitive: replace linear subdivision checkbox with a slider to allow more control (more subtle round borders)

misc: improve overall brush behaviour when non uniform scale, skew or inverse culling is present
misc: add sonar pen support

obj: export folder only if textures are present
ply: add ply import and export

lathe: display orange vertical line when curve is selected
tube: profile viewport UX improved

file: improve tiff support
ios: import button now supports folder selection

smudge: improve tool quality
render: fix fov and camera position being tweaked during render export
interface: reset tool orders will reset custom tools according to their name
mask: interacting with extraction slider will show a preview of the output
matcap: added a lock rotation option for matcap (prevent three-fingers gesture rotation)
move: add background radius option
layer: fix longstanding bug where layers could be corrupted when using the keep top details option
split: fix line shape
gizmo: fix reset pivot mask button being always disabled
heightmap: fix black screen when tone mapping is disabled
background: gradient option
stroke: fix snap radius option
symmetry: flip object now works with multires object (enabling material culling instead of flipping faces)

gesture: more control for three-finger gestures. In case of conflict, UI order matters. But light gesture is only active in PBR or Matcap+Lock off.
So by default:

  • Matcap+lock on mode, radius/intensity gestures active
  • PBR mode, radius/light gestures active