Commit Graph

76 Commits

Author SHA1 Message Date
Patrick Wulfert f6b6c8b360 Add mouse wheel fine-tuning for numeric settings inputs
Allow adjusting values with the mouse wheel while hovering the number input next to each slider.
2026-04-06 20:37:53 +02:00
CNCKitchen 027c57a6a9 fix(preview): smooth shading for all masked surfaces
- Remove flat-shaded MeshLambertMaterial overlay that was covering the
  custom shader output on user-masked faces (root cause of static shading)
- Pass smooth interpolated normal (vSmoothNormal) to fragment shader and
  blend toward it on masked faces so they get smooth view-dependent
  lighting instead of flat per-face shading
- Brighten user-mask color to warm orange (0.85, 0.40, 0.15) for better
  visibility of lighting variation on masked surfaces
- Shader now handles all mask visualization consistently: exclude mode
  (orange), include-only mode (orange for unselected), and angle mask
  (grey) all receive identical smooth shading
2026-04-06 16:10:50 +02:00
CNCKitchen 5eb8264f78 feat(preview): mask-type-dependent falloff tinting and uniform shading
- Track whether each boundary is from user masking or angle masking
  via a new boundaryMaskTypeAttr vertex attribute (0=user, 1=angle)
- Pass vUserMask and vMaskType varyings to the fragment shader
- Use consistent teal base color for all surfaces so lighting is
  uniform across masked and textured areas (fixes dark halo artifact)
- Tint the falloff gradient warm red-orange near user-painted masks
  and neutral grey near angle-masked boundaries
2026-04-06 14:34:36 +02:00
CNCKitchen 2e674f67b2 fix(preview): set boundary falloff to 0 at boundary vertices
Boundary vertices (shared between masked and unmasked faces) were
skipped during falloff computation, keeping their falloffAttr at 1.0.
This created a ring of full-intensity texture at the mask border before
the falloff gradient started. Now these vertices correctly get factor 0
(distance to boundary = 0), matching the export behavior.
2026-04-06 14:23:44 +02:00
CNCKitchen 47cc55e5ce fix(i18n): add missing trailing commas in boundary falloff translations (EN, DE) 2026-04-06 14:16:44 +02:00
CNCKitchen e2c90ba7a6 feat(i18n): add Italian translations for Boundary Falloff 2026-04-06 14:07:10 +02:00
CNCKitchen da4cf54e41 Merge branch 'pr/LightDestory/6' into develop 2026-04-06 13:51:21 +02:00
CNCKitchen 9ed626aebb perf: skip boundary falloff computation during active masking 2026-04-06 13:42:28 +02:00
CNCKitchen f39b4b088b Merge branch 'pr/AndrewSink/1' into develop
# Conflicts:
#	js/i18n.js
#	js/main.js
#	js/previewMaterial.js
2026-04-06 13:39:58 +02:00
CNCKitchen 65106482c1 resolved merge issue 2026-04-06 13:23:11 +02:00
CNCKitchen d99c97fb24 feat: update README and add GitHub links in header and license section 2026-04-05 13:45:16 +02:00
Alessio Tudisco bb18296dae refactor: improve italian translation 2026-04-05 01:35:27 +02:00
Alessio Tudisco c3c8f56181 feat: dynamic language loading and dropdown list 2026-04-05 00:56:59 +02:00
Alessio Tudisco cfa9c34962 feat: add italian language 2026-04-05 00:36:12 +02:00
CNCKitchen dcbdf344ac feat: add imprint and privacy policy modal with translations 2026-04-04 13:38:15 +02:00
CNCKitchen 1c58ebcc80 feat: added a precision mode for masking 2026-04-03 14:11:40 +02:00
CNCKitchen 3c94df4504 feat: update max triangle limit to 750K and enhance triangle bounding radius calculations 2026-04-03 09:18:44 +02:00
CNCKitchen 7289c2cabc feat: add texture aspect correction for non-square textures in UV mapping 2026-04-02 17:23:24 +02:00
CNCKitchen ccf77c988a feat: increase triangle safety cap to 20M and enhance progress reporting during subdivision 2026-04-02 15:14:53 +02:00
CNCKitchen 6ad91f9707 feat: add dismiss button for store call-to-action and style updates 2026-04-02 10:28:37 +02:00
CNCKitchen 80f597141c feat: enhance pinch-to-zoom with two-finger pan support for touch devices 2026-04-01 15:04:47 +02:00
CNCKitchen fd6eae9fb5 feat: implement custom pivot marker and pinch-to-zoom support for touch devices 2026-04-01 13:46:43 +02:00
CNCKitchen 5b6049bb1e refactor: simplify canvas filter support check 2026-04-01 11:15:35 +02:00
CNCKitchen bc5c4625fc texture smoothing on mac 2026-04-01 10:59:23 +02:00
CNCKitchen f7187bc1df Add new texture images: stripes.png, stripes_02.png, woodgrain_02.jpg, and woodgrain_03.jpg
- Added stripes.png and stripes_02.png with metadata from Adobe Photoshop.
- Included two new woodgrain textures (woodgrain_02.jpg and woodgrain_03.jpg) for enhanced visual variety.
2026-03-31 20:26:25 +02:00
CNCKitchen 88ab1747e7 feat: add texture smoothing feature and update translations for UI consistency 2026-03-31 17:25:24 +02:00
CNCKitchen 76eb1c7998 feat: support loading multiple model formats (.stl, .obj, .3mf) and update UI accordingly 2026-03-28 16:30:41 +01:00
CNCKitchen a41b500bf2 feat: add cap angle control for cylindrical mapping and update UV calculations 2026-03-28 16:00:17 +01:00
CNCKitchen b0d25f4006 rebranding to BumpMesh 2026-03-27 09:38:59 +01:00
CNCKitchen fb6e4d232c feat: implement raycast-based orbit pivot for cursor-centric rotation 2026-03-26 11:05:29 +01:00
CNCKitchen b0da4d2922 Merge branch 'main' of https://github.com/CNCKitchen/stlTexturizer 2026-03-26 10:42:34 +01:00
CNCKitchen fca353a142 feat: implement cursor-centric zoom functionality in viewer 2026-03-26 10:42:29 +01:00
CNCKitchen 558a2301db Refactor code structure for improved readability and maintainability 2026-03-25 15:34:30 +01:00
CNCKitchen 656371c3e3 Refactor code structure for improved readability and maintainability 2026-03-25 13:48:33 +01:00
CNCKitchen 475945a799 Refactor code structure for improved readability and maintainability 2026-03-25 08:03:22 +01:00
CNCKitchen 0cff3f8d10 feat: update store call-to-action with new support options and styling 2026-03-23 09:26:01 +01:00
Andrew Sink ad39191a9f reduce preview edges 2026-03-21 10:50:18 -04:00
Andrew Sink 27306ed596 add boundary falloff 2026-03-21 10:20:31 -04:00
CNCKitchen 11de141fb0 feat: add additional disclaimer and liability information to license and UI translations 2026-03-21 11:42:30 +01:00
CNCKitchen 87ad3bcecf feat: implement "Place on Face" feature with UI integration and translations 2026-03-21 11:01:49 +01:00
CNCKitchen 6723dcb7b0 Refactor surface masking and exclusion features
- Renamed "Surface Mask" section to "Mask Angles" for clarity in index.html.
- Updated translation keys and tooltips to reflect the new terminology in i18n.js.
- Removed the erase toggle button from the exclusion panel and implemented Shift key functionality to toggle erase mode in main.js.
- Adjusted brush radius handling to improve user experience and updated related UI elements in index.html.
- Enhanced the subdivision process to track original face IDs for better masking accuracy in subdivision.js.
- Added CSS styles for new UI elements and improved layout in style.css.
2026-03-21 09:42:08 +01:00
CNCKitchen a5cb0e5671 feat: update normal handling to use area-weighted buffer normals for improved surface rendering 2026-03-20 23:30:56 +01:00
CNCKitchen b35140cd78 feat: enhance displacement preview with face normal and mask attributes for improved rendering 2026-03-20 22:47:34 +01:00
CNCKitchen 9c50ab83b1 feat: update bucket threshold and enhance mesh info display in UI 2026-03-20 19:47:04 +01:00
CNCKitchen 60e6ee9201 feat: add license popup with terms and conditions, including UI integration and translations 2026-03-20 18:05:44 +01:00
CNCKitchen 30b3e3a257 feat: enhance canvas handling with dynamic dimensions and cover-scaling for image presets 2026-03-20 17:21:16 +01:00
CNCKitchen 981a72af4d Added a 3D Preview 2026-03-19 21:00:33 +01:00
CNCKitchen 43a09e8b14 feat: add seam band width control and integrate with displacement logic for improved blending 2026-03-19 20:12:54 +01:00
CNCKitchen 14987b8587 feat: add symmetric displacement feature with UI integration and update displacement logic 2026-03-19 14:52:21 +01:00
CNCKitchen e555a479fb feat: improve cubic mapping handling for better texture consistency on seams 2026-03-19 14:04:12 +01:00