Jump to content

Preparing High-Quality Textures in Vectorworks for Export to Vision 2021


Recommended Posts

  • Vectorworks, Inc Employee

Preparing High-Quality Textures in Vectorworks for Export to Vision 2021

In Vectorworks, textures are composed of “shaders” that control color, reflectivity, transparency, and surface details like bumps and indentations. The shader settings include default options such as Brick, Plastic, and Cloth, or the option to use image files. Vision works best when images are provided that match the size and complexity of the textured objects.

 

This workflow describes the image requirements and shader settings in Vectorworks that result in high-quality textures in Vision. Several of the shader settings in Vectorworks do not apply to Vision; only the useful settings are described below.

 

 

Vision’s default texture resembles a non-reflective gray plastic. Special tips are provided for creating metallic textures that clearly reflect the surrounding scene.

 

Getting Started

  1. From the Resource Manager, do one of the following to open the Edit Texture dialog box. For an overview of the parameters, see “Creating a new texture” in the Vectorworks help.
    • To create a texture, click New Resource. Select Renderworks Texture, and then click Create.
    • To edit an existing texture, right-click on the texture resource, and select Edit from the context menu.
  2. If you’re editing an existing texture, remove any shaders that do not use image files. For example, de-select Metallic, Glass, or Noise if these options were specified for the Color, Reflectivity, Transparency, or Bump shaders.
    • Initially, removing these shaders will make the texture look less realistic. The following steps will add high-quality details.
    Correct Incorrect
    NoProceduralShaders.png ProceduralShaders.png

  3. When using image-based shaders, select images with sufficient quality. The optimal resolution depends on the size and detail requirements of the textured object.
    • For example, a guitar string may only require a 1x1 resolution Reflectivity image, whereas a mountain may require a 4096x4096 Color image for adequate detail. Typically, a resolution of 256x256 or 512x512 is sufficient.
    Correct Incorrect
    HighRes.png LowRes.png

  4. If the texture has just one color, set the Color shader to the desired Color (this is an exception to the image-based workflow). An image-based shader should only be used to provide multiple colors and more detail.
    • To create a metal texture, use a full black (0,0,0) Color shader. Do one of the following to specify the black shader:
      • Set the shader to Obj Attributes and specify a black fill color for the object.
      • Set the shader to Color and select the black Color from the Edit Color Shader dialog box.
    Metal Color
    MetalColor.png

  5. All Reflectivity shaders should be set to Image. Brighter images reflect more light.
    • Non-metal textures should use grayscale images.
    • Metal textures should use colored images that match the metal’s color.
      • For simple objects with a single color and no fine details, use a small-resolution image. For example, use a 1x1 silver image for a guitar string.
      • For complex objects with multiple colors, use larger, more detailed images. For example, use a 512x512 gold Reflectivity image for a glittering set piece.
    Non-Metal Reflectivity Image Metal Reflectivity Image
    Reflectivity.png MetalReflectivityImage.png

  6. The blurriness of a reflectivity image determines how blurry or sharp the reflection appears. To set the blurriness, click Edit next to the Reflectivity dropdown in the Edit Texture dialog box. The Edit Image Reflectivity dialog box opens; enter the Blurriness percentage. Lower values create sharper specular highlights and more mirror-like reflections of the object’s environment.
    • Enter lower values for smooth and shiny metals or plastics. Enter higher values for carpeting, rough plastic, or dull metals.

Tips for Best Performance

  1. To add detail without slowing the program, apply a Transparency shader or Bump shader to a low-polygon extrude instead of using a complex mesh object.
    • Transparency shaders should use black and white images with no gray. White will be rendered and black will not.
      • For example, create a chain link fence by applying a Transparency shader to indicate the gaps.
    Transparency
    Transparency.png
     
    • Bump shaders should use grayscale images. Black represents the elevated, or “bumped,” areas and gray shows the indentations. Lighter shades of gray look more indented.
      • For example, a brick texture should use black for the bricks and gray for the sunken mortar.
    Bump
    Bump.png


  2.  

Verifying Texture Quality in Vision

  1. Export the scene as a .mvr file, then change the extension to .zip, and extract the contents.

    Extract MVR
    ExtractMVR.png

  2. Check the quality of all exported images. In Vectorworks, replace any images that don’t meet the requirements described above.

  3. Import the .mvr file in Vision.

  4. Add lighting and environmental features for more realistic renderings. In the Document Preferences, specify a Background Color or Panoramic Background for the scene, and then experiment with the Sun Azimuth and Elevation settings and the Ambient Color.

    Panoramic Background
    PanoramicBackground.png

  5. In the Vision Preferences, set the Texture Quality to Very High.

    Texture Quality
    TextureQuality.png

  6. Do the following in the Document Preferences:

    • Select Render Specular to check the specular reflectivity. Metallic objects should use the metal’s color.
      • White indicates high reflectivity.
      • Black indicates no reflectivity.
      • Gray indicates low reflectivity.
      • Color indicates metal reflectivity.
    Correct Incorrect
    CorrectRenderSpec.png IncorrectRenderSpec.png
     
    • Select Render Normals to check the bump and indentation effects. Verify that the protruding or indented geometry is facing the right direction:
      • Red indicates left-facing normals.
      • Green indicates top-facing normals.
      • Blue indicates front-facing normals.
    Correct Incorrect
    CorrectRenderNorm.png IncorrectRenderNorm.png

  7. On the Properties palette, check the Specular Power for various textures. This value depends on the Blurriness setting in Vectorworks.

    Metal Cloth
    MetalSpecPow.png ClothSpecPow.png
     
    • High blurriness results in low specular power, and vice versa. This means that rough and dull textures will not have bright highlights or clearly reflect the environment.
    Blurriness Specular Power
    100% 1.0
    80% 4.0
    50% 32.0
    20% 256.0
    0% 1024.0

  8. If the color of a metal texture does not look right, try lowering the Blurriness value in Vectorworks.

  9. Turn up the Ambient Intensity with the Document Preference or keyboard shortcuts. Navigate the scene to verify that textures look right in full ambient lighting.

    Correct Incorrect
    CorrectTexturing.png IncorrectTexturing.png

Transparency.png

Edited by bbudzon
Guide updated to use Image Mask instead of Image for Transparency Shader.
Link to comment
  • bbudzon featured this topic
  • 8 months later...

@klinzey Thanks again for creating this post!

 

I have been constantly referring to this post as I continue to refine the MVR workflow between Vectorworks and Vision. I believe that I may have found an error on the MVR export. Specifically I have been working with Image Props using some stock characters.

 

It seems that the "main" image texture steals the "Transparency" image upon MVR export.

 

All shaders set to "Image":

 

image.thumb.png.9761b04023840f0962d4f65b10e2d9e6.png

 

I still don't know why the preview looks transparent. Just to verify, here is the Image in the Color Shader:

 

image.thumb.png.d818089704243f5d498d6fd1f171708d.png

 

Reflectivity, Transparency and Bump:

 

image.thumb.png.497a47b6b1f231ab72a1896a55944a06.pngimage.thumb.png.054203b4afaaf0ac0a5c9e57905f7fdf.png image.thumb.png.dbc3b02c4ea575e16057b22d04d69092.png 

 

And here's the result in Vision:

untitled-20210609171333.thumb.jpg.58a6eff096cc72cf95671de1aea45946.jpg

 

Here's what the unzipped .MVR file looks like:

 

image.thumb.png.3202161fba230d348b499c7ad1ffabc5.png

 

As you can see, Greg Front.png (for example) is the same image as Greg FontMask.png

 

If you go in to the textures/scene folder that is generated when you save the Vision scene and duplicate Greg FrontReflectivity and rename it to Greg Front.png, then relaunch and load that scene, you get happy results:

AudProps-20210609173047.thumb.jpg.c553adeb78d0d0471a12ce23bba5261f.jpg

 

 

So I think that this is a verifiable bug, and perhaps an easy fix? The workaround is quite tedious.

 

It's also a bit tedious that Vision has to create a separate folder for textures. One of the things that I love about Vectorworks is the fact that it imports your images and saves them within the Vectorworks file so you don't have to manage your textures outside of the application. Perhaps there's a way to package this info in the .v3s file and give us a simple Resource Browser functionality within Vision?

 

I hope someone's listening here. I put a lot of time in to figuring this out...

peace

aj

 

 

 

 

 

 

AudProps-20210609172821.jpg

  • Like 2
Link to comment
  • Vectorworks, Inc Employee

@ajpen, I'm glad this guide has helped! I do apologize, however, as it appears you have found a regression of which I cannot find an easy workaround. I'm going to dig down into the 3DS exporter in Vectorworks and see if I can figure out what is going on. Hopefully, I can find a solution quickly and we can try and get the resolution out in a Service Pack. Thank you for your thorough report and diagnosis. If you have any other questions related to how to leverage textures in VW for export to programs like Vision, please let us know! It seems you've already come up with the idea of using a bump on an image prop, which I had never considered. Cool idea! Cuts down drastically on vertex counts and keeps a decent level of realism.

 

FWIW, the only true workaround I could find was to simply not use transparency (or remove it before export, which would be a pain). Once the MVR is opened in Vision, you could then apply the transparency masks there. Huge pain, but it does work. Again, my apologies and we'll work to resolve this quickly.

  • Like 1
Link to comment
  • Vectorworks, Inc Employee

So, after digging in the code, it appears that this issue was introduced in Vectorworks 2021 SP0 (or maybe SP1). The issue is specific to 3DS Exports (which MVR Exports leverage) and is not specific to image props. I could reproduce the issue with extrudes just the same.

 

I'm making a push to get this fix submitted to Vectorworks 2021 SP4. This will allow Image and Image Mask Transparency Shaders to be exported to 3DS/MVR properly; and it will not "step on" the main color image.

 

Again, my apologies for the regression. I hope we can resolve it quickly so you can get back to sending Full HQ Textures out of VW and into MVR!

  • Like 3
Link to comment
  • 3 weeks later...

 

@bbudzon@Hans-Olav@mjm@jeff prince

On 6/11/2021 at 9:23 AM, bbudzon said:

I'm making a push to get this fix submitted to Vectorworks 2021 SP4. This will allow Image and Image Mask Transparency Shaders to be exported to 3DS/MVR properly; and it will not "step on" the main color image.

 

Looks like that fix made the cut!

 

My crowd figures now look like this after MVR export with no further action required:

 

image.thumb.png.85284074402b526d456723b78f06370e.png

 

Thanks!!!!!!

peace

aj

 

  • Like 2
  • Love 2
Link to comment
  • Vectorworks, Inc Employee

Note: I made a small change to the guide. In the past, I suggested that Image be selected for Transparency shader if you want to send this to Vision. This did work with Vision well, but it caused issues in VW. Now, you should use Image Mask for the Transparency shader. This allows both VW and Vision to render properly.

Link to comment
  • 1 month later...
  • Vectorworks, Inc Employee

This topic more involves the quality of rendered meshes and how to setup RenderWorks textures in VW; not so much rendered light. That being said, there are a few things you may try any one or any combination of the following:

  1. Increase Haze Quality
  2. Increase Resolution Quality
  3. Increase Surface Light Quality
  4. Use Haze Style None, Low-Quality Haze Texture, or Low-Quality 4D Haze (creates a sharper look, but looks bad when pointed at camera)
  5. Use Haze Style High-Quality 4D Haze - Full Resolution (usually reserved for rendered movies, can cause performance issues)

Note: When using 4D Haze Styles, Haze Texture Intensity can be set to 0% to increase performance.

Link to comment
  • Vectorworks, Inc Employee
On 9/9/2020 at 11:43 AM, klinzey said:

For example, a guitar string may only require a 1x1 resolution Reflectivity image, whereas a mountain may require a 4096x4096 Color image for adequate detail. Typically, a resolution of 256x256 or 512x512 is sufficient.

 

In most cases, 256x256 or 512x512 will be all that you need. I find it is a good balance between performance/functionality and quality.

 

Basically, you want the image to be as small as possible while not degrading the quality visually. If the object in the scene is very small, maybe 128x128 or 64x64 would be enough that the quality would still appear sufficient or good.

 

The reason you want to use the smallest image possible while maintaining visual quality/fidelity is to help performance. Increasing the texture image resolution to obtain better quality has diminishing returns. So, for a small object in the scene, a 16x16 image will probably look significantly better than an 8x8 image. But, a 4096x4096 image may not look visually any different than a 64x64 image as the object in this example is small. Similarly, if an object is not the focus of the scene, it may be okay to use an 8x8 image instead of a 16x16 image (or a 256x256 instead of a 512x512) because it's just not that important and the eye will not be drawn to the unimportant item anyway.

 

It is all a big balancing act; tis the world of a realtime-engine content creator.

 

One last pro tip; GPU's are optimized for powers of two. When possible, try to stick heights and widths that are 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.... you get it 😛 

Link to comment
  • Vectorworks, Inc Employee
1 hour ago, fuberator said:

72 dpi, or does additional dpi make a difference?

It is my understanding that dpi only has an effect when printing the image. So, you should be good to make the image whatever dpi you'd like. To the best of my knowledge, only the resolution will have an impact on the renderer.

  • Like 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...