Commit graph

  • 1ee38c966c Far out stays steady: the grid's lines worked out from small numbers (its square's middle a whole number of kilometres from the world's, found in doubles; where on it from there), so far from the origin they no longer turn grainy and shake; the sun's shadow maps snap to their texels in doubles; packaging reads the version from project.json main v0.8.1 Nexoniarz 2026-10-21 17:41:25 +02:00
  • ee56ed4005 0.8.1: project.json holds the version, the links, who made it and what it's built on (CMake reads it into fry_project.h and Windows' file details, which had stayed at 0.5.0); the About box lists the creators, the Help menu the website, reporting a problem and the newest version. Steadier far out: the grid's line sizes go by each pixel (not the focus, which jumps between the ground and the sky as you fly, popping every set at once), the far plane doesn't follow that focus when flying, and a wheel notch is at most twice as far as the nearest thing; the site's 0.8.1 Nexoniarz 2026-10-21 17:30:43 +02:00
  • b2fc0437bc The grid worked out for each pixel (as in Blender): one square on its plane, every set of lines showing everywhere their lines are far enough apart on the screen (no patch round the middle, no pieces smearing or fading as you move), a pixel or so wide and smooth, the axes in the colour of the world's axis they run along; in every renderer (drawGrid: a sprite marked by its colour's alpha) Nexoniarz 2026-10-21 17:18:13 +02:00
  • 9d9557117a Close up no longer falls apart: how near the nearest thing is goes by each object's box (not a ball round it: inside a big or long flat one's ball it came to nothing, the near plane with it, and surfaces fought each other in blocks, jittering, the sky and grid gone), the near plane a quarter of the way to it; reference pictures count too. Grid lines meet exactly where their pieces join (no crawling dots): a streak's ends each face the eye, each its own width; pieces a quarter further from the eye each. The depth pre-pass waited on before the scene uses it; the same depth in both (invariant) Nexoniarz 2026-10-21 17:08:13 +02:00
  • d313a9452a Camera: fly or orbit (View > Camera, Shift+C, kept): orbiting turns round what you look at on a right drag and the wheel zooms; the hints follow it; the site's 0.8 (getting round, smoother); fry_where for trying it v0.8.0 Nexoniarz 2026-10-21 10:02:04 +02:00
  • 415f8fa352 Fly camera (as in games, Unreal, Unity): right drag turns it where it stands, WASD (Q / E down, up) while held and the arrows any time move where it looks, the wheel goes forward and back (never creeping to a stop), Shift + wheel sets how fast every way of moving goes (kept), Alt + right drag orbits round what's picked; it keeps track of what it looks at (the near plane and shade in corners go by what's nearest). Close up in Rendered no longer turns into a pattern: the shade in corners reaches a share of the view (its +1 a share of the reach in the engine). The grid made again: four sets of lines, each line's look only from how far apart it and its like are on the screen (no jumps as the view moves or the steps change, no gaps, soft edges), pieces short near the eye. F3 and Escape close the command search (the engine takes Escape first). fry_hold / fry_mouse / fry_orbit target for trying it Nexoniarz 2026-10-21 09:53:22 +02:00
  • de749dba11 Getting round: the wheel closes in on what's under the mouse (an object, the ground; the sky: on that way), the whole camera with it, so far from everything it no longer creeps at a spot in the air; arrow keys move along the ground, Page Up / Down up and down (a flat view: closer, further), Shift faster; fry_hold and fry_wheel to try them; crash dumps and a.out out of the repository and ignored Nexoniarz 2026-10-21 09:19:13 +02:00
  • 9a7ed67d80 Smoother: dragging smoothing, rounding or the shading angle in Properties no longer stalls (the angle only re-lights it; rounded and smoothed shapes made on another thread, the newest wanted next, nothing waited on); the picking tree in the object's own space (moving it doesn't make it again; made with the shape on that thread); the grid drawn in pieces, each a pixel wide where it is and fading where its lines crowd together (no crawling towards the horizon), a hair towards the eye so it doesn't fight the ground in Rendered; the near plane further out (less flicker far off); fry_bench to time frames; app.h one declaration a line Nexoniarz 2026-10-21 09:10:13 +02:00
  • 3c819146af 0.8.0: version, README and site (what's new, three icons); the new commands in the menus too (history, select similar/loop/ring, spin, crease, slide, mirror editing, measure, workspaces, text, search), with your own keys shown; plug-in tools finger-sized on phones Nexoniarz 2026-10-21 08:56:51 +02:00
  • ad6a7c072b Select similar on whole objects too (the others of the same shape: every bolt); Shift+G was only shown, now it's a key Nexoniarz 2026-10-21 08:53:59 +02:00
  • 830876a18e app.cpp split: the App class declared in app.h, what it does in app.cpp (document, files, keys, main), app_model, app_paint, app_print, app_view, app_panels, app_scripts (done by a script: the bodies moved as they were); the print check's wall thickness kept while moving; two clang warnings Nexoniarz 2026-10-21 08:51:21 +02:00
  • 1cda87b19a Speed: the shown shape, its model, picking tree and edges are made again only when the shape changes (a key of its points, faces and touches), not each time it's moved; big smoothed or cut shapes made on another thread (what was there stays till it's ready) Nexoniarz 2026-10-21 08:45:35 +02:00
  • 93c65638d8 Lighter undo: a step keeps the objects without their shapes, the shapes (points, faces, painting layout) shared with the steps where they're the same (compared, not trusted to a version) Nexoniarz 2026-10-21 08:42:03 +02:00
  • 9918d9a770 Fuzz test (tests/fuzz_test.cpp): random shapes through random edits and combines, broken scene and model files; in check and CI. Fixed what it found: Manifold given repeated or non-finite points (crash; the BSP takes those now), a damaged file's non-finite numbers (now 0), extruding both sides of a plane (NaN) Nexoniarz 2026-10-21 08:38:39 +02:00
  • b95e436d10 Combining with Manifold (exact; closed shapes): faces come back whole, flat neighbours from the two shapes joined; the BSP still for open shapes; libraries pinned static (BUILD_SHARED_LIBS off before any); tests for touching, flush and itself Nexoniarz 2026-10-21 08:28:43 +02:00
  • 5394eeb3d8 Editable cuts: Object > Cut out, editable: the cutters stay objects (see-through red), moved or changed and the hole follows; they go with what they cut when it's moved; Apply makes one or all for good; saved; exported and printed with the cut made; tests Nexoniarz 2026-10-21 08:21:28 +02:00
  • f9ba30ab3d Make copies: along a path (the last picked: a drawn shape's outline, a line, a ring), spread evenly by length, turned as it turns (or not); fry::pathOf / alongPath; tests Nexoniarz 2026-10-21 08:14:16 +02:00
  • b9b6932d0e Plug-in mouse tools (fry.tool{name, help, click(at, normal, object)}): listed in the Toolbox, a click in the view calls it (one undo); Stamp comes as an example; the Plug-ins window: look for one, make your own copy of one that comes with Fry3DX Nexoniarz 2026-10-21 08:10:24 +02:00
  • e0831563b7 Painting both sides (mirrored across the object's own Y, as sculpting) and a stencil (drag round an area: paint only inside it); a layer's see-through in its menu too; fry_stencil Nexoniarz 2026-10-21 08:06:22 +02:00
  • 2f68430354 Reference pictures: 'only in its own view' (out of the way in 3D and the other views); saved Nexoniarz 2026-10-21 08:02:12 +02:00
  • ee7abc2b1f Drawing a shape: each line's length by the mouse; type a length and Enter for exactly that; Shift holds it to 15 degree steps Nexoniarz 2026-10-21 08:00:42 +02:00
  • ab554f277f Crease (Shift+E): picked edges stay sharp when the shape's smoothed (carried through each level and the mirror; saved); shown in magenta; tests Nexoniarz 2026-10-21 07:58:43 +02:00
  • 67866ed0fb Print: a slice preview (one layer as the printer makes it, any layer height); fry_print layer N; tests Nexoniarz 2026-10-21 07:53:54 +02:00
  • 14e35cceb1 Print: walls thinner than the least (0.8 mm, set it) shown in yellow, the thinnest told; measured once per shape and size, not each move; tests Nexoniarz 2026-10-21 07:51:07 +02:00
  • 4f32540d62 Exact sizes: Dimensions typed in Properties (keeping proportions if asked); moving snaps to points, edges' or faces' middles near the mouse; Measure in the Model tab too (command search: measure) Nexoniarz 2026-10-21 07:47:44 +02:00
  • e6b3ffeda9 An empty scene says how to start (add, draw, search, pies, import) Nexoniarz 2026-10-21 07:44:20 +02:00
  • e8d634f15c Dragging: the number by the mouse as it goes; type a number for exactly that much (move along an arrow, rotate, scale to a size, extrude, inset, round edges); Esc puts a slide back without leaving the shape Nexoniarz 2026-10-21 07:42:25 +02:00
  • 445628b0d8 Mirror editing: a symmetric shape stays so (a point moved, its twin across X moved the mirrored way; points on the middle stay on it); in Tool options and the command search Nexoniarz 2026-10-21 07:40:10 +02:00
  • c742c937c6 Slide (Alt+G): picked points glide along their edges the way the mouse goes, click to keep, Esc to put back Nexoniarz 2026-10-21 07:37:32 +02:00
  • f5d1b79756 Repair for printing (joins loose corners, drops empty and doubled faces and inside walls, turns faces out, closes holes): a button in Print and a command; joining points by a grid (an imported STL's 100k corners: milliseconds, not minutes); tests Nexoniarz 2026-10-21 07:34:47 +02:00
  • 1a09c17155 Spin / screw: an outline or open surface turned round X, Y or Z (its own origin or the world's), any angle, rising for a screw; tests (Pappus, cone, screw) Nexoniarz 2026-10-21 00:51:43 +02:00
  • 6dd7f976c3 Print size: scale by a share, halve / double, fix wrong units (in, cm, m), fit the plate; its own window too Nexoniarz 2026-10-21 00:46:45 +02:00
  • f1f7a3fecc The view: near and far go by the distance (no more vanishing far out or cutting close up), a coarser grid out to the horizon; outline and lines over the model agree while a touch turns the view (worked out once, just before drawing); outlines from a cached edge list, points tried for sight only when drawn Nexoniarz 2026-10-21 00:45:17 +02:00
  • c2bbafd40c 3D text (fonts' overlapping strokes joined, holes by winding), import STL / OBJ / 3MF / glTF (own DEFLATE for 3MF), sturdier face triangles; tests Nexoniarz 2026-10-21 00:36:54 +02:00
  • ecd7c2cfda Picking and seeing through a tree of boxes per object (made again only when it changes) Nexoniarz 2026-10-21 00:24:50 +02:00
  • 48a9dbe918 Command search (F3 / Ctrl+Space), pie menus (Space: tools, Shift+Space: views), keys of your own, undo history, workspaces, select similar / loops / rings; (being made: the rest) Nexoniarz 2026-10-21 00:22:38 +02:00
  • a79a6c9020 Phones: sideways only; back from the background the Vulkan surface is made again (it was lost), the work saved on the way out and carried on with on the next start if the phone closed it Nexoniarz 2026-10-21 00:16:22 +02:00
  • c1991d9f73 0.7: cutting inside a cut no longer crashes (the boolean's tree kept splitting a sliver by its own plane, forever) and cuts come out closed (points near an edge's end set into it, small gaps filled, a nudged retry); hidden edges stay hidden on big or cut-up shapes (visibility through a screen grid, no "all seen" past a size; the selection outline too); every panel has a least size, kept when docked, and the first layout fits small windows; eye and padlock buttons in Layers; the tabs fit narrow windows; a failed tool keeps your redo; view commands at start-up no longer crash; tests v0.7.0 Nexoniarz 2026-10-21 00:07:10 +02:00
  • ec67538be0 Mac: settings' numbers read with strtof (Apple's library has no float from_chars before macOS 26), as on Android v0.6.0 Nexoniarz 2026-10-20 20:14:47 +02:00
  • 707e0b62e5 README and site: plug-ins, scripts kept in the .fry, your own materials, soft selection, bridge and push Nexoniarz 2026-10-20 19:09:35 +02:00
  • 3f23371eac From Blender and Maya: soft selection in shape editing (Shift+O; near points follow, the wheel while dragging sets how far), push out / pull in along normals (Alt+S), smooth points, bridge two faces with a tunnel, show only the selected (/ or Shift+H); fry_shapeop for scripts and tests; tests Nexoniarz 2026-10-20 19:08:23 +02:00
  • 3bcd50033d Scripts kept in the .fry (the Script panel lists the file's scripts: new, examples, open, duplicate, remove, rename); your own materials (Save its look as a material, kept for every file; fry.material in scripts); plug-ins: scripts in the plug-ins folder that stay loaded and add menu commands with settings (fry.command, fry.plugin), a Plug-ins window, three that come with it (stairs, scatter, more materials); a new About window; tests Nexoniarz 2026-10-20 19:01:07 +02:00
  • ffaa5e8001 Pictures in the UI read as ImGui's colours are: an sRGB picture was turned linear and showed too dark (the logo in About, the Picture panel's paint) — a UNORM view on Vulkan, a skip-decode sampler on OpenGL 4.6 and 4.0, the texture's own setting before 3.3 Nexoniarz 2026-10-20 19:01:07 +02:00
  • 4cc6d9e043 The crash screen in the app's own look (logo with smoke, the report in a well, Open it again / Copy / Report it on GitHub); sculpt mode's panels and status bar say what sculpting does; fry_scriptpanel; twelve new previews on the site (sculpt, materials, layout, render, scripts, light and the crash screen added) Nexoniarz 2026-10-20 18:03:18 +02:00
  • 5d3121b335 Combining: points the cutting leaves a hair apart are one, and needles along edges go — the example gear (and others like it) came out with an edge of three faces and a face with no size, so not ready to print; a test for it Nexoniarz 2026-10-20 17:57:13 +02:00
  • e18c7f6bce 0.6: README and site for sculpting, materials, scripts and the Mac app (a macOS download); features regrouped; nothing wider than a phone on a phone Nexoniarz 2026-10-20 17:38:04 +02:00
  • e22cd2e3e6 macOS (Apple silicon and Intel): Fry3DX.app with its content in Resources and MoltenVK in Frameworks, OpenGL 4.1 when there's no Vulkan; the program's own path, memory, OS and CPU names on a Mac; files dropped on the window (and opened from the Finder) open; presets macos-arm64/macos-x64, a CI job, tools/package.py macos makes one universal app Nexoniarz 2026-10-20 17:36:24 +02:00
  • 5c28e3da4e Sculpting: the Paint tab's other side (Tab) — Raise, Puff out, Smooth, Flatten, Pinch, Grab, Ctrl the other way, Shift to smooth, the same on both sides (X); shapes are made finer first (the same shape); o:sculpt() in scripts, fry_sculpt for pictures; tests Nexoniarz 2026-10-20 17:24:13 +02:00
  • e93ae44684 Materials shown in the view: each object's metal and rough reach the shader (Solid and Rendered); a Material picker with sixteen to start from (gold, chrome, wood, ceramic...); o.material and fry.materials() in scripts Nexoniarz 2026-10-20 17:14:55 +02:00
  • 87436019b3 Site: Niveus Continuity throughout — features in tabs that hand over left or right, screenshot tabs likewise, the bar's marker travelling to the section on screen, theme cross-fades; a Scripting section Nexoniarz 2026-10-20 17:10:53 +02:00
  • 62afbf2b1e Scripting: Lua 5.4 with a fry library (shapes, own meshes, lathe, extrude, add/subtract/overlap, points, the look); a Script panel (F5 / Ctrl+Enter runs, one undo step, an error takes it all back), Script menu, example scripts, fry_run; tests run every example Nexoniarz 2026-10-20 17:07:51 +02:00
  • 04c8985374 The website on Niveus: window-framed hero, feature cards with drawn icons, screenshot tabs, a light/dark/auto switch, downloads and build steps as cards; still all words in content.js Nexoniarz 2026-10-20 16:58:42 +02:00
  • 53d8ecbfcd The Niveus look in the app: bevelled keys and inset wells (a hook in ImGui's RenderFrame), warm graphite and paper appearances made from one brand colour, Instrument Sans and JetBrains Mono; View > Appearance Nexoniarz 2026-10-20 16:56:20 +02:00
  • 0f059c37be A new logo: a cube frying in a cast-iron pan, on a bevelled tile; tools/branding.py makes every size Nexoniarz 2026-10-20 16:48:57 +02:00
  • a5e0d2a9eb Phone: turns with the phone (portrait layout), fullscreen, picture the right way up; tap/drag fixes for touch Nexoniarz 2026-10-19 23:07:37 +02:00
  • 5d4ff6338a Vulkan: a compute shader the driver can't build is left out, not a crash Nexoniarz 2026-10-19 22:56:10 +02:00
  • 39a11e401e Keep the newest 15 autosaves; phones start without the heavy render features Nexoniarz 2026-10-19 22:43:45 +02:00
  • 6eb2f55858 Android: no .idsig file next to the APK (v4 signing off) v0.5.0 Nexoniarz 2026-10-19 22:33:25 +02:00
  • 5e84ef0e13 OpenGL ES 3.0 for phones without Vulkan; the old-GPU renderer draws the grid; site fonts Nexoniarz 2026-10-19 22:22:55 +02:00
  • 65705d82f3 Builds: file times without to_sys (Windows), no C++ module scan (Android on GitHub) Nexoniarz 2026-10-19 22:11:08 +02:00
  • f6f5e5f288 Fry3DX 0.5: builds for Windows, Linux and Android, a phone layout, Apache 2.0 Nexoniarz 2026-10-19 22:05:01 +02:00
  • f3e8eca87b Fry3DX 0.4: an easy 3D modeller Nexoniarz 2026-10-19 21:18:35 +02:00