I'm trying to put the finishing touches on xStudio a studio lighting rig for Houdini. So I've run into a few issues that I'm trying to figure out, and I'll post additional questions to this thread as they I run into them.
I'm referencing two commercial studio lighting rigs as an example of what a rig should be able to do. Greyscalegorilla's Light Kit Pro for Cinema4D and A & G Tool's Studio Light Rig for 3ds Max. Both products look very good if you use those 3D packages be sure to try out their demos or buy them. Having started this project I've learned how much work was involved to create them.
So if you look at that image. There are two image viewer windows. The smaller one is the source gradient used as the light source, and the larger one is a rendered sample. The light source is blown out white, but the gradient is still there. If I turn down the brightness/contract of the image to something like 0.001 then the gradient shows up. Problem is that the rest of the image turns black.
Right now, I just have one set of parameters for the mask (that's I'm calling Gobo Options). If I change them to a paramlist folder, then I have the problem having to create new comp nodes to create the light mask. That I assume has to be done via Python, but will I have to unlock the comp node inside the asset to add new nodes? I assume so.
You can easily embed multiple shelf tool definitions inside a digital asset, however there is no way to have them show up on a shelf automatically. You could create an OnLoaded event handler that could add the tools to an existing shelf tab, create a new one, etc.
You can easily embed multiple shelf tool definitions inside a digital asset, however there is no way to have them show up on a shelf automatically. You could create an onloaded event handler that could add the tools to an existing shelf tab, create a new one, etc.
I'm going to have an "About" tab on all the assets, so maybe I'll just add a button called "Install Shelf Tools" that will create the shelf if it doesn't already exist (or update it). More work for me to finish before Aug 1, so much fun!
You don't even need to do that. On the Tools tab of the Type Properties window, you can just simple create new tools. These new tools will be saved in the asset definition and Houdini will automatically load them when the asset is loaded. All you would have to do is to find them in the list of tools (hou.shelves.tools()) and add them to shelves.
For example; I have a HDR image of an umbrella light (downloaded from here) that I want to store in the asset. I resized the image to 1024x1024 and saved the HDR (1.69megs) then loaded it into Houdini and resaved it as a RAT image (6.27megs). As you can see the RAT file is significantly larger. I've read that for performance reasons you should always use RAT files, but would this larger image file cause issues being embedded in the asset?
Here's the first sample image. Nothing to impressive as it only has one light. At this stage I can't create more copies of the studio light (some Python code isn't working). So I have to unlock to edit parameters. Anyway tomorrow I'll have it fixed and will do something better.
The xStudioLight asset has a multiparam block that has the same parameters copied from another asset called xStudioGobo. Each block of parameters is going to represent an instance of a xStudioGobo object inside an editable subnetwork of xStudioLight. So there is a button called "Update Network" that will create xStudioGobo nodes, and then map those parameters to the parameters in the xStudioLight.
So if I have 3 parameter blocks on xStudioLight, then 3 xStudioGobo nodes will be created. Each parameter in xStudioGobo will have an expression assigned to it, something like, ch("../../../../paramname")
It works ok for the regular parameters, but there is a Color Ramp parameter on xStudioGobo and it's not working right. While the two default points have expressions set, when I add more points on xStudioLight those points aren't added to xStudioGobo. I think my problem is that I'm not really linking the parameters together, but just simply setting an expression.
EDIT: Maybe what I'll do is add a callback to the color ramp on the xStudioLight, and then update the xStudioGobo with the number of color points when they change. That seems to be the only part that's not working.
That beer can is awesome. xStudio will include xStudioReflector but I'm not completely sure what it's feature set should be. I have one week left to finish in time for the release date. So I don't know how many samples scenes there will be, but I definitely will add some to the next release.
I've attached a screen grab of a xStudioReflector. Any feature requests or ideas would be great. There are a few options to customize the material, but I think it's missing the option to make the material glow without illuminating the scene.
These Beer Flight Glass Carriers make great gifts. You could also check with your local brew pub to see if they need to buy 10 or 100! They can be customized with text and logos, and you can also incorporate ways to identify the beers. Build them for small 5oz tasting glasses, full-size pint glasses, or both! Watch my video, then read through this Instructable for ideas to build your own.
I used the Inventables EASEL online design software to design four different beer flights. Glasses vary in size, so I recommend measuring the glasses that will be used to get some accurate measurements. I bought these 5oz Tasting Glasses from Amazon and they fit nicely in 2.25" pockets. I had some full-size pint glasses on hand and they inserted nicely in 2.75" holes so that they were held securely in place and easy to carry.
I used the Inventables X-Carve CNC Machine to cut mine out because I may check with my local brew pub to see if they need some. If I get a large order, I will be prepared to make a large batch of them with the machine. If you don't have a CNC machine, you can easily make some of these with regular tools. A jig saw, a drill, and a couple of forstner bits will do the job just fine.
Since I used the Inventables X-Carve CNC Machine to make these, I was able to V-Carve some text and graphic elements into the beer flights. I like to spray a sealer on the board to seal the wood pores, then spray paint the text and sand off the overspray. The sealer keeps the paint from soaking deep into the wood so you don't have to sand as much to get the overspray off.
If you don't have a CNC Machine, below are some other methods of adding text and graphic elements to your beer flights. Remember that these will most likely get wet from condensation or spilled beer, so you will want to use a sealer or some other method to protect your decorations.
These require very little assembly, if any, depending on your design. One of my designs was made from 3 pieces that I screwed together. I added cabinet handles and rubber foot pads to another one. The other two were just single boards with no assembly.
Here are some pictures of my completed Beer Flights. They turned out great and make carrying multiple glasses easy. You can scale up the designs for different size glasses and even more than four glasses if you want.
Tip: These can be used for any drinks, not just beer! Have a wine tasting party Use them to serve lemonade on the patio on a hot Summer's day. Treat your kids to a crazy drink tasting party where they can try all kinds of weird juices and sodas. Serve some delicious shakes, smoothies, or sundae desserts at your next dinner party.
Let's say I want to install Node.js on my Mac.The official macOS installation guide offers different alternatives to do so.So first, I installed it via its official installer file.I then switched to Homebrew and installed it via brew install node.
So now it seems that I have two installations of Node on my system. When I run the command which node it outputs /usr/local/bin. So clearly the official installation is in favour here (maybe because I installed it first? I don't know). The node installation from Homebrew is in /usr/local/Cellar.
There's a similar question here on Ask Different - What are pros and cons for MacPorts, Fink and Homebrew? - that does a comparison of the different package managers. It's an excellent read and I encourage you to review it.
The main difference between using Homebrew and using the installer package is the build time dependencies. Homebrew (and MacPorts) does an excellent job of managing all of this. However, with the package, there's no build requirements and the software is ready to go.
Uninstalling is hardly an issue anymore. Homebrew will manage the uninstall process and handle the run time dependencies trimming them if needed. However, with free apps like AppCleaner, thoroughly removing an app is not an issue.
So, bottom line is it comes down to your workflow. If you simply need a utility download the package. If you utilize more than one and there are shared libraries that you want the ability to manage, go with Homebrew.
Your new path will have your Cellar directory prepended to the existing one. Because it's prepended (comes before) your existing path, it will look in that directory first. See the Homebrew Documentation for full details. I personally use a combination of MacPorts and "official" installers so I use a different directory structure. YMMV.
If you're planning to install a lot of stuff, then you may find a package manager more useful; if there's only a handful of things that you need to install, which have their own installers and for which updating is easy, then installing something like HomeBrew may just add another layer of complexity.
I think most users of the various Linux and BSD distributions have come to appreciate the importance of a good package manager. I use mostly Debian-based distros, and regard the package manager (aptitude) to be as essential as the kernel itself. By that I mean if the package manager didn't exist, or if it was unreliable and prone to error, then I would not be a Linux user.
b1e95dc632