AuthorTopic: Photoshop Peripherals  (Read 10843 times)

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Photoshop Peripherals

on: April 17, 2009, 01:55:33 am
I thought you guys may be interested in this..  The following was also posted at my Blog

A couple weeks ago, as I was painting in Photoshop, I realized how much time I wasted doing the most mundane of things.  Specifically how often I'm playing with various brush sliders rather than painting on the canvas.  It occurred to me that it would be the most awesome thing ever if someone had made a USB controller specifically with Photoshop in mind; something that would have physical knobs or sliders that would effect brush size, opacity, and hardness on the fly so one could continually paint with their other hand.  I went searching for such a device.

After a few days it became apparent that no such thing existed.  I was pretty shocked.  I can't imagine that I'm the only CG artist who has thought of this before.  I guess input-device companies are too busy making the same redundant crap they always have, just with an ever growing number of LED lights to make us feel more like we're studly men in a nightclub rather than geeks in our mother's basement.  In any case, I needed an alternate solution

This time I went searching for any piece of hardware that generally resembled what I was looking for, and hopefully I'd be able to Jerry-rig it to Photoshop.  I was imagining a simple board with maybe 4 parallel vertical sliders, but the only thing I could find that even came close were MIDI mixing boards.  Not only could I not map them to Photoshop shortcut keys, but they are all WAY TOO BULKY.  I swear, there is not a single mixing board out there without 50 billion dials, knobs, and sliders.  I just wanted something simple.



You'd think there would be a huge market for general purpose programmable USB input devices; Programmable in the sense it could be mapped to keystrokes.  Just a simple programmable slider board - or maybe a simple set of knobs.  I know PLENTY of computer professionals that could find a good use for things like this.  If any of you out there is thinking, "That's a great idea for a business!" PLEASE DO!  For the love of Pete, please do!

I finally found one.  Its Griffin's PowerMate USB knob.  Its not exactly what I was looking for, but it was programmable, and it would work for what I needed.  I ordered two and they just arrived in the mail today :)



Initially setting it up was a breeze. Their software for it was amazingly easy to use.  Each knob has 6 different functions you can assign to it; rotate left, rotate right, press-rotate left, press-rotate right, press, press and hold.  Not only can you set different macros for each function, but you can also set different profiles for each program you use them with.  Very cool.

On the first knob, I mapped brush-size to the rotation (using the [ and ] shortcuts) and mapped the brush-hardness to the press-ratation (using the { and } shortcuts).  On the second knob I mapped undo and redo to the press-rotation.  Lastly, I wanted the second knob to control the brush opacity, but there are not any photoshop shortcut keys for that - at least not in the same way as brush size and hardness.  The 0-9 keys at the top of the keyboard sets the opacity ('4' = 40% opacity, '5' = 50% opacity, etc) and there was no way to map the same function of the PowerMate to multiple buttons through their own software.  I needed a 3rd party app for that.

I came across AutoHotKey.  This seems to be exactly what I needed.  Essentially, AutoHotKey allows you to script macro events.  So the plan was to use it to detect the knob rotations as keypresses, then script that to output the proper opacity percents back into Photoshop.  It took a while, but it worked like a charm.  I had to write my own script for it since none existed.  If anyone is interested, let me know and I'll post it up.

The last thing I wanted to do was map the first knob's press function to the Alt key (Shortcut key for eyedropper tool while in brush-mode).  You'd think this would be easy, but nothing I tried was working.  After a bit of investigating I discovered that the PowerMate's software only supports quick keypresses and NOT press-and-hold like the eyedropper shortcut needed.  This really upset me.  I use the eyedropper tool a ton.  I'm hoping I can find someone to edit the .dll file for me to fix this problem.  In the mean-time, I've mapped Alt to one of the function keys on my tablet.

I'll keep you posted, But I will say that I can already see a dramatic increase in my workflow because of this.

Offline davidelrizzo

  • 0001
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile

Re: Photoshop Peripherals

Reply #1 on: April 17, 2009, 03:19:17 am
That is very cool! 
I don't personally freehand draw enough to use it myself but I'm sure if you did that kind of stuff every day it would be a huge time saver.

Offline Jakten

  • 0010
  • *
  • Posts: 250
  • Karma: +0/-0
  • The Bionic Vapor Boy
    • View Profile
    • Levitating Rocksquatch

Re: Photoshop Peripherals

Reply #2 on: April 17, 2009, 04:32:24 am
Oh man these are awesome! I'm so buying some of these!

I'm trying to think if there is a way to wire 3 dimmer switches together with a USB plug and use it for changing RGB... also a separate USB keypad or something and hooking it up for other shortcuts that you might not be able to map. Mount it all on some wood like a joystick. Awesome idea. These knobs are wicked. Amazing find!

I wonder how easy it would be to find mix board slider switches separate from a mixing board...

I figure it would look something like this (possibly cut a bunch of the keypad buttons off so its not as bulky, also maybe replace them with pretty arcade buttons):

« Last Edit: April 17, 2009, 06:13:30 am by Jakten »

Offline Ai

  • 0100
  • ***
  • Posts: 1057
  • Karma: +2/-0
  • finti
    • http://pixeljoint.com/pixels/profile.asp?id=1996
    • finticemo
    • View Profile

Re: Photoshop Peripherals

Reply #3 on: April 17, 2009, 05:55:24 am
I was curious whether they worked in Linux/GIMP, since I've had my eye on some of these for quite a while.

http://linuxrevolution.blogspot.com/2006/12/howto-griffin-powermate-in-gimp.html
^^^
How to set them up under Linux and configure them for use in GIMP.

Anyone should be able to do the same (steps 1 and 3, omit step 2) for setting up under Windows, if they know how to specify the device (I don't, I only know how to specify the device under Linux.)

I suspect that a similar hack would be required to get the Powermate 'press' function producing a Control press+release event pair for GIMP (Paint tools use Ctrl to eyedrop in GIMP, rather than Alt), whether in Windows or Linux.

Personally, what I want is some knobs and sliders -- maybe 5 knobs and 2 sets of 7 sliders --
to control stuff like brush parameters (rotation/size/aspect/spacing), opacity and drawing mode, layer opacity and (maybe) drawing mode, foreground color, and move through the list of brushes or move through the undo history.
 So a lot less than a MIDI mixing board, but a lot more than a Powermate.
I do currently do some of these things via keyboard shortcuts, which can sometimes be slow (brush size adjustment, brush spacing adjustment.)
If you insist on being pessimistic about your own abilities, consider also being pessimistic about the accuracy of that pessimistic judgement.

Offline surt

  • 0011
  • **
  • Posts: 570
  • Karma: +0/-0
  • Meat by-product
    • not_surt
    • http://pixeljoint.com/p/2254.htm
    • View Profile
    • Uninhabitant

Re: Photoshop Peripherals

Reply #4 on: April 17, 2009, 07:07:49 am
If hard controls aren't a necessity, you could sit one of those small USB touch-screen displays under your secondary hand, and with the appropriate software it could be a workable solution.

Offline JonathanOfDrain

  • 0010
  • *
  • Posts: 292
  • Karma: +0/-0
  • Lonely
    • View Profile
    • TheyWillEat.Us

Re: Photoshop Peripherals

Reply #5 on: April 17, 2009, 07:39:19 am
http://www.artlebedev.com/everything/optimus-tactus/
This looks like the kind of thing you want. The Optimus Maximus is expensive but you can do a lot with it. It's about 1300 USD.
You might want to look around for replacement parts to these USB mixers. I had some for a small Mackie mixer, ended up needing them for the mixer. Not exactly plug and play stuff going on.
You'll need to read up on hardware and programming.

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Photoshop Peripherals

Reply #6 on: April 17, 2009, 11:27:09 am
Jakten:
those pictures look exactly like what I was originally looking for - though I dont care much for the RGB idea.. I'd rather just handle that part on screen.  The problem with sliders in general though is they can't be mapped to a single key press when sliding up and another for sliding down.  to do it right, you'd want the slider to return distinct VALUES depending on where it's positioned (ie all the way up = 100, all the way down = 0) so it could visually represent the value it's sending to the software.  It'd definitely be the preferred way if you could, but I dont know of any way it'd be possible to pass those values from the hardware to photoshop.

Surt:
cool idea, but I think the tactile feel of the knobs/sliders is what I really wanted.  -so I dont have to look at what my hand is doing or where it needs to go - I just keep looking at the screen and paint.

JonathanOfDrain:
from my hours of internet searching, I wasn't able to find any program that converts midi input to keypresses.  I was able to find one vise-versa though.  So even with a USB mixer and/or parts I wouldn't be able to link it to photoshop.

Offline Ai

  • 0100
  • ***
  • Posts: 1057
  • Karma: +2/-0
  • finti
    • http://pixeljoint.com/pixels/profile.asp?id=1996
    • finticemo
    • View Profile

Re: Photoshop Peripherals

Reply #7 on: April 19, 2009, 06:02:31 am
Jakten:
those pictures look exactly like what I was originally looking for - though I dont care much for the RGB idea.. I'd rather just handle that part on screen.  The problem with sliders in general though is they can't be mapped to a single key press when sliding up and another for sliding down.  to do it right, you'd want the slider to return distinct VALUES depending on where it's positioned (ie all the way up = 100, all the way down = 0) so it could visually represent the value it's sending to the software.  It'd definitely be the preferred way if you could, but I dont know of any way it'd be possible to pass those values from the hardware to photoshop.

You're quite sure that you need to do that? GIMP for example can read those events directly (if they eg. send a value on the range 0..1.0, there are commands designed specifically to work with that, like "Set drawing opacity"
(versus what you seem to be thinking of, that increase/decrease by a step)). The functionality of GIMP and Photoshop doesn't perfectly overlap, but I thought this kind of thing would be a fairly basic functionality to expect in PS.
Alternatively, the driver could generate keyboard events by internally tracking the position of the sliders and sending events according to how many 'steps' were between the old and new positions.
Your tablet driver does something very similar to this when it's emulating a mouse (ie. in relative mode).

Quote
JonathanOfDrain:
from my hours of internet searching, I wasn't able to find any program that converts midi input to keypresses.  I was able to find one vise-versa though.  So even with a USB mixer and/or parts I wouldn't be able to link it to photoshop.
Again, at this point, I must ask: And Photoshop doesn't accept MIDI input directly? This is extraordinary if it's true.
If you insist on being pessimistic about your own abilities, consider also being pessimistic about the accuracy of that pessimistic judgement.

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Photoshop Peripherals

Reply #8 on: April 19, 2009, 06:53:16 am
as far as I know, I've never seen anything to suggest photoshop accepts midi input.  please, if you know something i dont - please tell! :)

Offline Rox

  • 0011
  • **
  • Posts: 591
  • Karma: +0/-0
    • View Profile

Re: Photoshop Peripherals

Reply #9 on: April 24, 2009, 01:59:53 am
Wow. I feel stupid. Over a year ago, when I started my internship during my 3D education, another guy at the same company had one of those. I was like "Why? Why would you need that?" and he said he really likes it for quickly controlling the volume on his comptuter when using headphones. And thus, in my head, the peripheral remained useless.

Why the heck didn't I think of using it for something like that? And why didn't he, for that matter? Considering he spent hours at end sculpting in Zbrush with his fancy tablet... and then spent many more hours polishing way too large textures in Photoshop... Really good thinking, there, Indigo. Do get back on how well you get along with them, and I might have to pick some up in the future. They could be very useful both for 2D and 3D work.

Offline Argyle

  • 0010
  • *
  • Posts: 269
  • Karma: +1/-1
  • Futuristic beep boop.
    • argylebox
    • http://pixeljoint.com/p/13899.htm
    • valsaurus
    • View Profile
    • ArgyleBox | Designs by Valouria Saurus (VERY OUTDATED)

Re: Photoshop Peripherals

Reply #10 on: May 06, 2009, 09:35:18 pm
...

I came across AutoHotKey.  This seems to be exactly what I needed.  Essentially, AutoHotKey allows you to script macro events.  So the plan was to use it to detect the knob rotations as keypresses, then script that to output the proper opacity percents back into Photoshop.  It took a while, but it worked like a charm.  I had to write my own script for it since none existed.  If anyone is interested, let me know and I'll post it up.

etc...

If you could post information on that, or your own scripts, that would rock!  This looked enticing enough that I picked a used one up on eBay at a great deal and would love to add the use of this wheel to my workflow routine!  Thanks again for posting this up.

Offline Arne

  • 0010
  • *
  • Posts: 431
  • Karma: +1/-0
  • Panties.
    • View Profile
    • AndroidArts

Re: Photoshop Peripherals

Reply #11 on: May 07, 2009, 07:17:03 am
I use an Airbrush pen. It has a wheel on it, which I map to opacity. I map pen pressure to brush radius, and put the brush sizes/hardness/modes in Tool Presets.

Because I've mapped pen pressure to brush radius, I don't have to change brush size that often. By controlling pen pressure I can get into nooks and crannies. I mostly change to a larger brush when I need to block in. I constantly color pick with one of the tablet buttons to blend (brush not fully opaque), and since I have opacity control on the pen's wheel I can go completely opaque if I need to.

I'd really like to see more controls on both the pen and tablet though. I use the slider on the tablet for zoom now and it works badly. I had to disable the left slider because I'm left handed and bump into it. It would've been better if they just had one control panel which you could snap onto the side of the board or something.
« Last Edit: May 07, 2009, 07:19:02 am by Arne »

Offline flaber

  • 0010
  • *
  • Posts: 312
  • Karma: +0/-0
  • Captain.
    • View Profile

Re: Photoshop Peripherals

Reply #12 on: May 08, 2009, 07:12:18 am
This is rather interesting idea, and the more i think about it, the more it entices me.

i will suggest this to some of my friends in engineering with me. For our 4th year project occasionally they let students suggest projects to work on.
I can see atleast 3 slides, RGB, or HSL (as i like to use in MSpaint). alittle led screen to display the color mixed, some buttons for pressure, or some buttons for some hot keys. a slider for zoom. very cool.
take the tools bar and make it physical.

ill see if i can convince people to think about working with this.

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Photoshop Peripherals

Reply #13 on: December 05, 2009, 01:32:37 am
alrighty guys, now you've done it... I've started researching into making my own HID usb input device for photoshop... turns out it's not all that complicated once you found a suitable interface.  Here are the parts I'm looking at...

50-pin HID Interface:
http://www.u-hid.com/

Arcade buttons: (can insert paper icons under the plastic cover)
http://www.ultimarc.com/ultralux.html

Slider Potentiometers:
http://www.robotshop.us/phidgets-slider-sensor-2.html?utm_source=google&utm_medium=base&utm_campaign=jos

knobs:
http://www.ultimarc.com/SpinTrak.htm


I think what it would end up being is 3 vertical sliders, 2 knobs, and maybe 6 programmable arcade buttons.

I would consider making a HSB slider set as well, but currently i have no idea how I could map input devices to those software sliders without assignable keyboard shortcuts for them.  I could have missed them, but I dont think photoshop has any for that.  There are only two other solutions I could think of for this - either write a photoshop plugin which allows HID input to control them, or somehow have the input click and move those sliders like you would do with a mouse.  Any ideas on this?

Offline WM

  • 0010
  • *
  • Posts: 134
  • Karma: +0/-0
  • cubist
    • View Profile

Re: Photoshop Peripherals

Reply #14 on: December 05, 2009, 02:09:25 am

...

...  There are only two other solutions I could think of for this - either write a photoshop plugin which allows HID input to control them, or somehow have the input click and move those sliders like you would do with a mouse.  Any ideas on this?


If i were you I would go with making a plugin; the second option sounds a little inefficient and slapped together, if you ask me.

And what are your plans for the layout of the device components? I think Jakten has the right idea:

...

Offline Tourist

  • 0010
  • *
  • Posts: 376
  • Karma: +1/-0
    • View Profile

Re: Photoshop Peripherals

Reply #15 on: December 05, 2009, 02:34:41 am
Another option is the category of 'tangible user interfaces'.  Wikepedia: http://en.wikipedia.org/wiki/Tangible_User_Interface

Something like this:



The reactable from http://www.reactable.com/

They're mostly for music, but you could probably adapt them to graphics as well.

Tourist

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Photoshop Peripherals

Reply #16 on: December 05, 2009, 05:48:07 am
WM:  from what I hear, writing photoshop plug-ins is a nasty business.  I certainly wouldn't be able to do this myself.  If anyone interested in this project that has the know-how to do this sort of thing, I'd love if you could contribute.  JakTen's mockups are certainly a good layout for the most part.  I'd probably have 3 verticle sliders on the left, with two knobs (stacked vertically) on the right, with a row of programmable buttons lining the bottom.  I'll draw up some stuff.  but really - RGB?  Artists use that?

Tourist: unfortunately, that's a bit out of my small budget for this simple project.  I'm not looking for anything revolutionary - just useful.

I've been looking at more components and the idea of using touch-strips rather than sliders is kinda interesting.  It has it's pros and cons

Pros:
Could have a toggle switch, so one touch strip could control multiple functions in-software.  This can't be done with physical sliders - once you switched the slider to control another function, it would automatically effect the value in accordance to the slider position.  In other words, there would be no memory of where the sliders once were when switching between functions.

Cons:
There is no visual representation for what value the slider is at with this method.  I can't look down and say "oh, thats about 50%" - with the physical sliders I dont even really need to look, just feel.  If I wanted to get into pretty complex electronic engineering, I guess I could line up a series of LEDs and have them light up in according to the position of the slider value..  that'd take a lot of work.
« Last Edit: December 05, 2009, 06:23:57 am by Indigo »

Offline EyeCraft

  • 0011
  • **
  • Posts: 597
  • Karma: +2/-0
  • What are you scared of?
    • View Profile
    • Death By Dev

Re: Photoshop Peripherals

Reply #17 on: December 05, 2009, 06:17:11 am
Oh cool to see this idea being revived!

Why not have a mix of physical slides and touch slides?

Since the touch slide is multi programmable, why not just have 1? A general purpose slider, if you will. Then have 3 physical slides for more concrete, single purpose jobs where you want tactile feedback.

I'd offer to help, but I don't really have the time at the moment... and I've never looked at PS plug in coding before  :)

I was thinking you could somehow use the brush controls to modify its colour. I know you can map a control to it interpolating between the two colours you have selected. Maybe theres a way to kind of hack the related code to get controls to modify individual HSV elements of the colour painted. Just a weird thought I had. Pointless to speculate without really having a look at PS plug in code, though.

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Photoshop Peripherals

Reply #18 on: December 05, 2009, 07:41:59 am
it seems there may be an easier way than coding a PS plugin.  PS scripts seem to allow HSB slider changes.  I could assign the mini-scripts (a total of 6 for up and down on each slider) to 6 different hotkeys in photoshop - then map the slider to those keys.  It wouldn't be able to know the exact value of the slider - so you'd have to map slider increments to multiple keyboard presses (which will not give you an accurate depiction of the value compared to the position of the physical slider), which is much better suited for a knob than a slider.  Seems like a round-about way of doing it, but probably the easiest.
« Last Edit: December 05, 2009, 07:57:55 am by Indigo »

Offline Gil

  • 0100
  • ***
  • Posts: 1543
  • Karma: +1/-0
  • Too square to be hip
    • http://pixeljoint.com/p/475.htm
    • View Profile
    • My Portfolio

Re: Photoshop Peripherals

Reply #19 on: December 05, 2009, 10:12:38 pm
A photoshop plugin for MIDI control would be awesome. Imagine something like an Akai MPD24 hooked to photoshop:



6 sliders, 8 knobs and 16 buttons :y: