Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Rendering Named Positions? Decals?
Are Named Positions supported in Render Studio?
What about Decals added in Part Studios?
Unless I'm missing something obvious, I will create some improvement requests.
Tagged:
4
Comments
Bringing in named positions from inserted elements like Part Studios and Assemblies is not supported but Render Studio does have its own Named views feature already (accessible in the same as as other elements in Onshape).
Decals from Part Studios are not currently supported but is already an item in our list as we know this is desired.
I haven't figured out how to move things in Render Studio the way that I would in assembly mode. I have a door on a rack mounted computer system which hinges open and closed. I can see how the transform tool in Render Studio can rotate objects, but it doesn't seem to know anything about Onshape mates. So far what I've resorted to is configuring a mate. Changing configurations to move something also takes a long time for everything to reload. NOT ideal.
Placing decals in Part Studios is so much easier than doing it in Render Studio. It would be great if the same Decal feature existed in Render Studio.
Supporting mates directly from Assemblies or something like them in Render Studio would be quite a long way off. Transforms are going to be enhanced so that they can be applied to parts individually rather than just the top level, however they won't be mate aware or support modifying their origin at this stage so this limitation will persist for a while.
One, of course not ideal, work-around to having to reload is setting up both orientations in the Assembly (so having the Part inserted twice) and using visibility to switch between them instead of configurations which will be faster.
Simon has a point, here.
I have been using Keyshot for years. That is not an integrated app, and relies on 'classic' file exchange with a CAD system. Still, with the update function, rendering like say closed/open doors or other things that move to an alternative position, appeared much faster so set up than we see in OS now, even though OS would have the original model to refer to at any time. Between Keyshot and Spaceclaim (which I was using), I would just move one part or assembly (using some constrained translate operation) in the CAD and hit the update button. The model in the render window would update, no new materials need to be assigned. I could render that alternate setup right away.
I must admit I was expecting the OS render studio to work pretty much directly on the CAD model and am a bit disappointed that it is more or less a separate world with it's own behaviour and rules. It misses the point of cloud based parametric design and so it misses out on some great opportunities.
My whishlist is:
I am not a software guy, but I will work for money, outlining that one, should need be.
Wow, the difference in ease of use between Decal in a Part Studio and applying a sticker, bitmap file, and projector in Render Studio is crazy.
Unless there is another set of instructions some where, I could only find this Tech Tip, which is out of date and very hard to follow. I watched this video multiple times and re-read the post a bunch of times in order to finally get this basic rendering task to work. Projectors now have a very different interface, and figuring out that the Bitmap file function needs to be dragged onto the tiny color swatch took me a lot of tries to figure out.
The idea of layering functions and appearances can be powerful, but why does the target for drag and drop need to be so obscure? Is there any other spot where dragging the bitmap file function would make sense - why can't I just drag it onto the whole appearance panel? Why isn't the file option just part of the sticker appearance in the first place? Why is a bitmap file a function, and projectors have their own icon? Why is the projector grouped with transform?
Oh, and I had to version the document to get imported images in the same document as the render studio to show up in the picker for bitmaps. I kinda get why this works that way - it's more like how drawings need to be updated even in the same document, but we need the yellow update button for this to be more consistent. Versioning the document is left out of the Tech Tip. Sure it streamlines the video, but if you don't do it, it's a bit of a head scratcher.
Then I looked up how Keyshot handles Labels. It's so much more straightforward and powerful. Even Cadmio which runs on an iPad can add decals quickly and easily. Solidworks Visualize is more like the decal feature in Part Studios, and because it handles animation, you can even apply video as a graphic.
@S1mon apologies I misread your initial post and see you were asking about "Named positions" rather than "Named views". We don't currently support named positions from Assemblies in Render Studio but there is a bit of a work around you can use for now. You can abuse the exploded views by activating the named position you want and then creating an exploded view with that position active. Then activate the other named position you want and create another exploded view. You can then switch between the exploded views by right clicking the inserted Assembly in Render Studio and selecting the appropriate item to activate the exploded view you want, which will make the change without reloading anything.
Regarding decals, keep in mind that we do not intend the Sticker appearance to be any kind of replacement for a full decal feature such as that seen in Part Studios, it's just a way you can get something resembling a decal onto things in Render Studio with the tools it has now (and pre-dated having decals in Onshape at all). The right way would definitely be to support the decals coming from Part Studios and render those appropriately.
For use cases where you have geometry that represents the extent of a decal area already (e.g., a screen or area that will be fully occupied by it) the best approach is to select the surface and apply a projector with the "Surface" mode, which will cause any applied textures to stretch over the entire surface. This avoids having to do complex positioning of the image. Obviously when you want to have free positioning of the thing in a way that doesn't take up the entire surface, that is where decals really work better.
For the Tech Tip, you are right, it's now very out of date. It is showing the old Render Studio interface, so it doesn't make use of the newer, simpler projectors and also doesn't show the version creation step since that wasn't previously part of the workflow. We'll have to look into creating some updated information.
The "yellow button" question is basically a request for "Workspace references" which we do have in our lists (feel free to submit another request to add to the calls for it). It's quite complex so we don't have any timeframes for that one given some of the other priorities we have.
Is the drag and drop target for layering really obscure? Currently when you start dragging any compatible parameters in the appearances are highlighted with a large blue rectangle. Dropping on the entire appearance panel would not work since you can assign it to many potential parameters and the parameters of different appearances may be different. You can assign an the Bitmap image function to any color or number parameter and multiple of them.
This relates to why the bitmap is not directly part of every appearance, since you can use a texture on most of the parameters, so if we put the bitmap directly in every appearance we'd need to have one for every parameter that supported it. That would then also prevent you connecting non-bitmap things to the parameters, for example the tile or checker procedurals which you may prefer to use instead. This is why the sticker doesn't have the bitmap directly in its top level parameters, since the color defines the color of the sticker and you can drive that from a variety of things.
The "Display screen" appearance does work more like what you suggest where the bitmap is there at the top level, since in this case it is clear you will only ever want to use an image. You'll notice though that for this appearance the bitmap transform parameters then have to also be included in the appearance parameters. That would not be possible when you could potentially have to have multiple parameters with different bitmaps with different transform parameters on them.
When you refer to the bitmap, projector and transform functions having their own icons, do you mean in the Appearance functions folder of the library? One of the Bitmap image functions is a simpler one which has the transforms and projection items all build in with top level parameters and if your use case is simple these are the best to use. The others are for more advanced use cases (or non bitmap functions) where you want to manipulate the texture placement in more advanced ways that you cannot achieve with the Projector feature. They are not part of the advanced Bitmap image since for that you could potentially use different types of projectors and transforms in different combinations. That usage is definitely more advanced and may be phased out at some stage but since it had it previously and people were using it at times we didn't want to remove it.
@Paul_Arden
Thanks for your detailed responses.
Exploded views are certainly an interesting work around. Hopefully named positions will be supported in the future.
I'm glad that decals will be supported coming from Part Studios. Hopefully the rest of this post will become moot.
So far, my experience with using projectors with "surface" mode and faces of a part has been extremely frustrating and confusing. Unfortunately, it's the only way I can get graphics to show up where I want them.
I made a model of some rack mounted equipment. The top image shows the part with grooves in the front face as fake gaps between the equipment. In the Part Studio, it took me less than 1/2 hr to place all the images using the decal feature. I needed to scale them all, and in some cases I needed to tweak the position a small amount because the images are not perfectly cropped.
In Render Studio I spent many many hours pulling my hair out trying to sort things out.
Step 1: Add sticker overlay to selected face.
If you don't change the Sticker Mask to 1 from its default of 0, nothing shows up. I don't understand why 1 wouldn't be the default.
Step 2: Add "Import bitmap file" to sticker.
When I was trying to drag this function onto the sticker appearance, I could swear that I wasn't seeing the blue highlights at first. Either they weren't showing up, or I wasn't noticing them. Now it seems more obvious, but I would still argue 99% of the time, if I want to add a "sticker", I also want to add a bitmap to the color. This extra step of searching for the "import bitmap file" function seems silly (I've also been using the one which says "bitmap texture" - I don't know if that's the right one, but I couldn't get the other one to work). I get that there are fancier things that can be done with dragging a bitmap onto some of the other inputs, but in this case it's baffling to me what one would do with the sticker appearance without a bitmap controlling the sticker color. Perhaps the sticker could be used just to add a bump map or glossiness in an area that's controlled by a mask. That's great, but make it a separate, more advanced function, or optional modes for sticker.
If I don't change Y Tiling to -1, the images are flipped from top to bottom. It took me a little while to realize that this was happening. Again, I have no idea why this would be the standard behavior. I didn't have this issue with the decals in the Part Studio. I tried using this with and without Clip on, and with and without a Projector. I still have no clue what units, if any the Offsets are. Any time something has units, they should be displayed. It's very frustrating to guess if something is in the range of 0..1 or -1..1 or actual measurements, which might be in meters, or mm (what I'm using as standard) or something unitless but a much larger range.
Then we get to Step 3 - projectors.
Why is the button to add a projector next to the transform tool? Transform is more like a direct editing tool. Projectors are much more like Appearance Functions or Appearance Modifiers (and BTW, why are those different classes of things?).
The position and the scale of the projectors are baffling. I have four identically sized dummy panels which are each separate faces of one part in the model. The top one needs these settings to get the image to show in the right location and scale.
The bottom one has these settings. I don't understand why the Y positions are different, although I can guess that perhaps the position is relative to some part or world coordinates instead of the face centroid (i.e. the way that decals work in Part Studios). But what makes zero sense to me is why the Y scale is so different for the same sized face and the same image.
I spent hours getting all this to work. Every time I select a face and want to get to the Projector, I have to rescroll the Scene List to get to the projectors. Getting images to show up in the right place with right scale is complicated by a couple things:
In the Part Studio, the Decals all have "maintain aspect ratio" turned on, but none of the projectors I needed in Render Studio have identical X/Y scaling.
Keyshot apparently has a feature in their decal mode where an image at a known scale (expressed in DPI - dots per inch) can be applied 1:1 on a part so it will be whatever size was specified in a design document created in Adobe Illustrator or whatever. That seems like a super useful option. For things like logos and other product graphics, being able to control the exact size and position are essential.
The Surface projection type uses the underlying Parasolid surface parameterisation to drive the texture coordinates. Basically this means the texture will then always cover the entire surface (stretch). It is unfortunately not so predictable which directly those Parasolid parameterisations will run in terms of left to right, right to left, top to bottom or bottom to top. That can have the effect of mirroring the texture in one or both axis.
If the texture is already the same aspect as the surface then all that is usually required is to set one or both of the scale factors to -1 to get the orientation correct that then its complete. The trickiness comes when you want to do adjustments or when the aspect ratios are different and you need to do some scaling or other changes. While that's possible with the tools we have in Render Studio right now, it's quite complex and can only really be done with numeric input, not visually which we know is of course not straight forward.
The sitcker overlay is, like many of the appearances, inherited from what NVIDIA provided. We have not created our own dedicated appearance for this (though likely will later in order to support decals). Usually with the sticker mask you would re-use the same texture and pull its alpha channel to mask the area you want the sticker applied to (needed for non-rectangular stickers). I'd agree that 1.0 would be a more sensible default in any case but that's not what it is.
As you guess, the sticker can be used to do many other things, like adding bump maps to certain areas or vary the reflectivity and roughness in specific areas. Basically anything you want to apply to a specific area specified by the mask. If your sticker covers the entire area of the surface then you really don't need to use the sticker appearance at all. It is quite generic which is why it doesn't make some of the assumptions you'd like to see there.
Tiling is not expressed directly in units and is rather a factor. The units will depend on the projection. When using Surface the units will be such that 0,0 is one corner of the surface and 1,1 is the opposite corner, regardless of the actual size of the surface. When using other modes like Auto, Cubic, Spherical it will equate to internal units (meters), however if the projector has its own transform values these are applied beforehand.
Projectors are tied to elements in the scene which is why they are considered a direct editing tool. They modify the way texture coordinates are generated on elements of the scene and are independent from appearances. Appearances then pick up those texture coordinates to use if they are using textures (though appearances can also choose to ignore them if desired).
This allows an appearance that would otherwise have to include all of the texture coordinate details to be re-used on multiple elements without having to create a different appearance with different projection settings for each element you want to put it on. For example let's say you have a sphere and a cube in your scene and you have a heavily textured appearance which represents tiles.
These will need completely different texture projection techniques to look good on those two different geometries. You could create two appearances and use the appearance functions for projections to manually setup the texture coordinates on those two and assign each to its respective element, however then if you want to change the appearance you need to edit both even though they are trying to look the same.
With projections you are describing how you want the elements geometry to generate texture coordinates. This way the appearance just looks up the texture coordinates built into the element and doesn't need its own functions to produce them, so you can now just use the same appearance on both things. This will pay greater dividends in the future should we start allowing ways to re-use appearances outside a given Render Studio, since you have no idea what type of geometry it might apply to.
We definitely hope to further improve the simplicity of projectors, the major drawback currently being that there is no visual representation of the projection in the graphics area so its difficult to understand what it is actually doing.
For the specific use case of decals however, the best solution is going to be supporting them from Part Studios which is by far going to be the easiest place to set that up and as you point out likely makes many of the issues you describe moot.
Last night someone asked for me to create a rendering of our project which contains decals. My heart sank and I felt like I was just sentenced to the gallos.
Simon is much nicer than I am. Everyone is going to want to create a top level rendering of their project and projects will always contain decals.
No company will want to pay an engineering a days salary to create a rendering.
Please focus on fixing this.
@billy2 Decal support definitely is a priority, and a near term one at that.
So I was being a little coy with “near term” :-)
The 189 what’s new will likely be of interest.
Lol, very near indeed!
Nailed it @Paul_Arden