Nomad Change Log

1.60

ios: allow more memory usage for M1 iPad Pro
ios: improve drag n drop support (object file only)

primitive: fix radius icon for cylinder and tube being disabled (if lathe tool was used)
mask: fix accumulate behaviour when it is disabled
insert: allow sculpting on cloned object (if the base object is not a primitive)
project: add “Export selection only” to internal “Save as”
light: modal popup for editing parameters
layer: add extract feature
tube: fix radius being clamped (slider only)

21 Likes

1.61

background: fix reference image color issue

7 Likes

1.62

uv: improve experimental support (enable in Debug menu, unwrapper in Topology … menu)
clay: add flatten offset parameter

layer: fix extract feature (keep transform)
eyedrop: fix color issue with background
render: fix render bug when adding a point light (jaggy shadows, etc)
heightmap: improve quality of heightmap debug feature (banding)
gesture: add three finger vertial drag to edit radius
split: add front vertex option (fix mask behavior as well)
gizmo: fix rotation on primitive with non uniform scale

voxel: add sharp edges option
voxel: remesher is now using less memory and is a bit faster

primitive: fix cylinder radius handler not being positioned correctly
primitive: no transparency for mirrored mesh when using the View tool

render: use cubemap for environment instead of octahedral (less artefact on sharp background)
render: improve refraction support when depth of field is enabled

file: support multiple file loading when importing from Nomad
file: fix random crashes when importing image files
file: keep objects separate instead of merging them when loading/saving obj files

26 Likes

1.63

ios: fix startup crash on iOS 12 and 13

uv: collapse small edges automatically so that uv unwrap has more chance of succeeding

interface: keep dot and circle colors when sculpting
outline: fix artefacts when using outline on a mesh with hidden masked areas
trim: fix rare crash when using plane trimming
voxel: fix crash when saving a file just after a voxel remesh in certain condition
heightmap: fix color space

8 Likes

1.64

voxel: fix remesh

8 Likes

1.65

ios: fix open with feature when Nomad is not yet opened
android: import popup can now load multiple files

light: fix fourth light being ignored
render: fix rendering bug when adding a light in certain conditions
primitive: fix crash when validating mirrored box and sphere if Debug Primitive UVs is activated
insert: fix rotation interaction when the object has custom gizmo and is not centered
texture: support read-only (no editing) textures from obj (procreate) and glTF
flatten: add experimental options

file: fix crash when saving model with UVs
file: fix material library being emptied out in some rare occurence
file: fix glb loading potentially corrupted from 1.62 and 1.63

21 Likes

1.66

ios: fix app language not being respected in some special case
ios: add touchpad and mouse scroll support
android: add mouse scroll support
android: can now import bigger file

scene: add scene hierarchy
scene: lights and cameras exposed as scene node
scene: add instancing
scene: add Repeat nodes: mirror, radial, array, curve
scene: repeat nodes replaces the previous system for primitive mirroring, and can be used for any mesh

textures: roughness and metalness textures are correctly saved when imported from Procreate
textures: obj can export textures and mtl files if the model has previously imported textures
textures: improve specular glossiness texture support when importing glTF or glb
textures: fix colorspace when importing PNG images with gAMA 1.0 attribute
textures: use the alpha channel of the color texture as transparency
textures: unlit mode now use color and alpha textures
textures: matcap mode now use alpha and normal textures
textures: support gltf uv transform
textures: support gltf texture sampler

shadow: fix shadows being non consistent when using the perspective camera
shadow: fix artefact when a light was currently selected
shadow: add softness slider
shadow: add contact shadow
shadow: add experimental screenspace shadow as an alternative to shadowmaps (spot, directional, point)

render: allow multiselection material editing
render: add subsurface scattering material
render: add reflectance slider per material (f0 specular for non-metallic materials)
render: add experimental ssgi (screen-space global illumination)
render: less banding when rendering screenshot with transparent background
render: less banding on dark tones
render: synchronise environment exposure when switching between them
render: add a neutral tone mapping and use tweak the ACES one
render: add pixel art postprocess
render: add scanline postprocess
render: add Object-ID color shading mode

matcap: add new matcap (from blender CC0 call for content)
matcap: improve quality for a few matcaps (banding removal, jpg artefacts, etc)
matcap: keep higher quality for 16 bit matcaps (~10/11 bits precision in practice)

mask: no need to hold shortcut to trigger sharp and blurring shortcuts (simply tap on masked area)
mask: hold finger to trigger lasso masking

tool: add new tool (lasso selection)
smooth: hold to lasso select multiple objects

undo: stylus is ignored when dealing with multi-touch gesture (accidental undo)
undo: long press 2 fingers to undo continuously
redo: long press 3 fingers to redo continuously

layer: channel masking can now be used with layers (e.g. paint only roughness, etc)
layer: fix missing history recording when entering factor manual input

gizmo: fix camera-plane translation not working incorrectly
gizmo: allow value dragging in gizmo menu

transform: improve the snap feature
transform: control are now optimised with snapping in mind

matrix: if the object has skew/shear, it will be displayed in the matrix menu
matrix: no more automatic baking when using shear/skew or non uniform scale with the gizmo
matrix: note that sculpting with mirroring might not work as expected if the object has shear/skew

file: more robust triangulation if obj model has ngon
file: more robust obj loader (merge obj group if they share the same material)
file: gltf can now export layer normals and it respect smooth shaded attribute
file: gltf export unlit attribute

interface: localised in 14 languages (to keep english, go in Nomad About menu)
interface: hex color input is always in srgb (preview and internal usage for material is in linear)
interface: add key binding customization
interface: many small improvements

stroke: screen project supports pen pressure
stroke: add alpha rotation option (and option to lock brush rotation)

trim: protect masked area if flip mode is activated
preset: add reload option for tool preset
dyntopo: fix global remesh polygon distribution (if mesh was not previously in dyntopo mode)
hdr: fix hdr processing giving incorrect results on certain devices
primitive: tap on handlers for manual input
voxel: use much less memory to avoid crashes

63 Likes

1.67

ios: fix traditional chinese being ignored

voxel: fix voxel when remeshing multiple mesh inside a hierarchy
voxel: fix intersection mode (all objects hidden)

project: save/load custom pivot
tube: missing last division in y (lathe as well)
triplanar: two sided wasn’t forced on the planes
gizmo: auto positioned pivot if the mesh has masking
symmetry: fix crash when displaying the symmetry and deleting the last mesh on the scene
scene: long press will only move the pressed item, unless the long press occurs on the primary selected item

18 Likes

1.68

ios: fix traditional chinese being ignored (again…)

file: fix critical bug (crash at loading when nomad files are dropped inside the Nomad folder)

mask: mask extract now retains material and symmetry pivot
mask: fix pivot position when using extraction
mask: extraction retains UVs

interface: gizmo and transform clone/instance button can now be held
interface: offset menu panel if the side toolbar requires a second column (gizmo pivot, snap angle, etc)

voxel: fix remeshing inside hierarchy
voxel: remeshing output had sometimes the faces flipped
uv: switch from half float to quantised 16bit integer (better quality)
layer: extraction retains UVs

13 Likes

1.69

ios: better support with multitouch and pointer hovering (mouse, trackpad, pencil)

file: fix glTF export with skew in transform

view: hierarchy line view tool setting now respected
keyboard: fix bug with unrecognized key (scancode based)
subsurface: fix bug when a far away light is pointing away from the mesh
render: fix broken shadows
mask: extract bug when the mesh has non uniform scale or skew

texture: bake from another hires mesh (color, roughness, metalness, normal map)
texture: can import texture (material menu)

voxel: fix result when main object has non uniform scale or skew
smudge: fix behaviour when main object has non uniform scale or skew

gizmo: masking pivot now saved (and should be retained when undoing)
gizmo: smooth normals are now updated correctly using gizmo with vertex mode

21 Likes

1.70

files: fix obj export (textures)

6 Likes

1.71

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

22 Likes

1.72

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

25 Likes

1.73

Beta can usually be tested at nomad - WebAssembly

gltf: fix export

9 Likes

1.74

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

13 Likes

1.75

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)

15 Likes

1.76

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

13 Likes

1.77

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

35 Likes

1.78

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

18 Likes

1.79

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

25 Likes