posted November 27th, 2009

Naked light Preview 6 Revision 3 is out!

My webhost was recently hacked (though my account wasn’t as far as I know). They’ve changed my passwords, but don’t seem to have told me yet what my new ones are. In the interim, I can’t access FTP. So until I get a chance to call them up and sort that out, which may be a bit because they’re support team is apparently swamped, I have to use…RapidShare. I’m very, very sorry.

download.jpg

Bug fixes

This is mainly a bug fix release.

This biggest bug was really an OpenCL bug. To render a node (or group of nodes), I send several commands to OpenCL, and then wait for them to complete (with a function named clWaitForEvents(…)). About 1 in 5000 of these never would, and my code, from that point further, would do absolutely nothing. Since dragging a slider can easily generate 100s of events, that happened frequently, particularly in more complicated documents. In a move that doesn’t exactly increase my faith in Apple’s OpenCL implementation, removing a call to a function named clGetEventInfo(…) fixed this.

Another bug occurred on startup. The item view in the library is actually an NSOpenGLView subclass. NSOpenGLView creates it’s own OpenGL ‘context’ by default, which would later be replaced with my own context. I overrode the code that NSOpenGLView calls to create its own context, which might speed things up and seems to mitigate the bug. Since this occurred fairly rarely, I won’t actually know for a while.

Finally, I fixed one and a half bugs related to saving. When you save a composition, the preview and thumbnails generated are no longer flipped. Additionally, the icon in the library gets updated immediately.

Inspector Tabs

There’s now tabs in the Inspector that’ll help manage screen real estate as the Inspector gets more complicated.

inspector.jpg

There always used to be icons there, but they never actually functioned as tabs until now.

posted November 24th, 2009

Naked light Preview 6 Revision 2 is out!

download.jpg

Speed changes

Naked light is now dramatically faster in many situations.

There’s still quite a few performance tweaks that need to be done, but this is a pretty big leap forward in terms of responsiveness. I’ve also written a tool that, among other things, makes testing performance issues a lot easier for me.

Masks are editable

You can now select and edit (but not rearrange) nodes in a mask like any other.

masks.jpg

In this picture, the first rectangle has been rotated after being added as a mask. Heads up: most of the blur filters are buggy(-er) when inside masks, and saving masks is still broken.

Bug Fixes

As per usual, there’s been a few bug fixes, mostly related to the Inspector.

posted November 16th, 2009

Naked light Preview 6 Revision 1 is out!

download.jpg

This version solves two major issues: switching to CPU mode properly if your GPU isn’t up to OpenCL par, and better handling missing images in your library.

I’ve also temporarily removed support for 32-bit mode; it turns out that you can’t always just test 32-bit mode by checking off ‘Open in 32-bit mode’ in the Finder. Lots of stuff is broken on 32-bit Intels, and I’ll need a fair bit of time to sort that out.

Masking

Now when you add a filter with a mask, the mask is visually displayed in the node view. This isn’t particularly interactive yet (ultimately you’ll be able to edit masks non-destructively like everything else in Naked light), but you can start to see where this is going.

masks.jpg

The Rectangle Selection Tool is back, the others are all forthcoming. If you try to blend multiple selections (by making a selection, holding down a modifier key, and making another), Naked light will either crash or otherwise become unusable, so don’t do that yet. Masks still don’t save properly, either.

Icons

icons.jpg

I’ve refined some of the icons so that they’re simpler and cleaner.

Curves

curves.jpg

Last release, the color scheme of the inspector has changed from white on black to charcoal on light gray. Most of the filter inspectors are dynamically generated and worked fine. A few, notably Curves, Levels, and Brushes, were pretty near unreadable.

Levels has to wait because histograms are dependent on several forthcoming optimizations to the underlying engine, but I went and redid the Curves inspector. It’s not only got nice new tabs and thicker, easier to see lines, but it now has the ability to modify the alpha channel, which has been an incredibly useful addition so far.

posted November 11th, 2009

Naked light Preview 6 is out.

download.jpg

Naked light’s underlying engine (and, so far, almost all of the filters and tools) has been rewritten in OpenCL. This is great for the future; right now, it means that the actual feature set is still as sparse as previous releases.

It also means that Naked light requires Snow Leopard, which in turn means that it’s Intel-only.

There’s not terribly much in terms of new features, but there are a few hints of things to come here and there.

color.jpg

Thanks for your patience with my delays—with luck there won’t be too many more disruptions to the flow of releases here on out. Have fun!

posted December 22nd, 2008

Late on Friday, Apple (finally) posted Naked touch 1.0.4, which fixes just about all of the memory related bugs.

Specifically, the jump from 1.0 to 1.0.4:

  • Fixes a serious memory leak that would happen when uploading in certain situations.
  • Fixes a serious memory leak that would happen during most editing operations.
  • Maximum dimension for hi-res exports reduced from 1000 to 900, reducing memory footprint by 20%.
  • Uploads no longer silently fail when an upload is attempted in Airplane mode.
  • Displays the number of photos in an album on the home screen.
  • Clears up memory more aggressively in low-memory situations.
  • Fixes several smaller leaks.
  • Features a few small performance fixes.
  • Hides the “Take Photo” option for iPod touch users.

Naked touch is available in the App Store for $9.99.

posted December 10th, 2008

Naked light 5.2 is out—again pushing ahead with selections. There’s two big changes this time around.

Selection node Re-ordering

Nodes in the selection row can be freely re-ordered by dragging-and-dropping, including both filter nodes and generator nodes.

Currently, undo is not supported for rearranging nodes within the selection, and doing so will corrupt the history.

Functionally Complete Selection Logic

The selection combination logic is now functionally complete.

Previous versions of Naked light had two modes for combining multiple selections: add (disjunction) and subtract (material nonimplication.)

5.2 adds intersection (conjunction) and exclusion (xor.) With these primitives, re-ordering, and inversion, it’s possible to create the results of all logical connectives.

Since Naked light operates on 32-bit rather than binary masks, it uses slightly modified formulas to achieve sensible results.

Like older versions of Naked light (and Photoshop), adding to selections or subtracting from them works by holding down shift or option as you make a selection. To change selection combination operations, you right-click (or control-click) the operation disc between the nodes.

Get It

Naked light Preview 5.2 works only on Mac OS X Leopard 10.5.5 and higher.

Naked light Preview 5.2

posted December 3rd, 2008

Naked light Preview 5.1.1 is out, featuring history support for all selection-related actions (at least the subset of those that are currently enabled.) This release also introduces a new feature for Naked light: Reselect.

Reselect again works like Photoshop, but with a twist. Basically, it lets you reselect a previously cleared selection.

Because Naked light is node-based, history states take very little memory versus Photoshop. Naturally, the same goes for selection-changing history states, letting Naked light instantly restore any previous selection state without undoing any other changes.

Reselect buttons appear in the history panel; reselecting the last selection state is also available from the new Selection menu.

As an added bonus, masks work again—a bug I fixed today had broken mask support as well as several other things.

Get It

Naked light Preview 5.1.1 works only on Mac OS X Leopard 10.5.5 and higher.

Naked light Preview 5.1.1

posted December 1st, 2008

Naked light Preview 5.1 is out; this time starting to fix something that’s been bugging me forever: selections.

Selections in previous version of Naked light were unbearably slow. Today’s update is pretty simple: it makes making selections 160× faster. In other words, making selections is now silky smooth.

Read more…;

posted November 29th, 2008

With Naked touch out of the way, I can start (mostly) full steam ahead again on Naked light.

In that time, two important things have happened. One, Naked touch and life have delayed Naked light by a few months. Second, it appears that there’s a chance that Snow Leopard—and more importantly, OpenCL—might be a few months early. More specifically, they might come out at about the same time.

OpenCL—basically an open-standards replacement for NVIDIA’s CUDA and AMD’s Close to Metal—is clearly the future for highly parallizable tasks like the ones Naked light performs. Therefore, any work done on the current CPU and GPU renderers is redundant—it’ll be thrown away for Snow Leopard.

While I haven’t made a decision yet, it’s looking like dropping Leopard support and going exclusively Snow Leopard would be a good decision (if I do that, all present and future Pre-purchasers would be properly remunerated for the shift in system requirements). In either event, though, I need to pause work on the renderer and focus on cleaning up other incomplete features. So for now I need to adopt a sort of fiction—clearly the renderer is the portion of Naked light that needs the most work, but for now I’m going to work on other parts, anyway.

Composition History

This update introduces the History panel.

Much like Photoshop’s History palette, Naked light’s History panel presents a visual interface for all the actions you have performed in a composition. To quickly jump back and forth multiple states, you can just click on a state in the panel: all states after that will become undone, and all states before and including the clicked state will become done (or redone.)

Get It

Naked light Preview 5 now works only on Mac OS X Leopard 10.5.5 and higher. This version also features a few sundry bug fixes.

Naked light Preview 5

posted November 24th, 2008

Naked touchmobile photo editing for the iPhone and iPod touch—arrived in the App Store today.

Naked touch lets you edit, crop, and upload photos on your iPhone with pro quality imaging tools. Naked touch features an advanced hybrid 16/32-bit pipeline complete with sharpening, blurring, noise reduction, highlight and shadow adjustment, multitouch curves, brightness, contrast, white balance, and color balance filters. From within Naked touch, you can upload photos to Facebook, Flickr, and Tumblr, or export them back to your iPhone library.

Naked touch is available for $9.99.