Home Technical Talk

Wrap texture around a helmet (possible with zbrush?)

tehchriis
polycounter lvl 3
Offline / Send Message
tehchriis polycounter lvl 3
Hello, I've been bashing my head against the wall all night for this and I just can not get it working.

I have to render product shots of helmets for a client, the client has provided a 3D model that their previous 3D artist used. The client design various prints, like a space print, army camo, spongebob face, angrybird face, etc. and I have to place these prints on the helmet and render them out for their webshop. Below is an image of what the helmet looks like and the provided UV map, I've placed on their space textures on the helmet.

As you can see on the image the texture does NOT align at all. Their previous 3D artist told me that he used Zbrush to project the image onto the surface using spotlight. After looking up a few tutorials on that I gave it a go, but with spotlight the texture gets 'stretched' on the edges I had to manually paint the sides.
In the end it did was indeed a bit more seamless than on the image provided below but it looked like a kid went finger painting. And with the space texture I can get away with it looking a bit fadey but with something more tight/neat it's going to be awfull. 

I currently have no clue how to get the textures the company makes placed properly on this helmet. Literally every help is greatly appreciated.

I've also included an example of a render the previous artist made, and how neat his texture looks.

Helmet & UV map:


What it's supposed to look like:

Replies

  • cromadbomber
    Offline / Send Message
    cromadbomber polycounter lvl 11
    Can you modify the UV? It would be the best if you just have single island for the whole top part. Currently it seems to be split into 3 parts. Hence you get seams at island edges.
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    No, there is no need to modify the UVs - because even if they were seamless there would still be distortion issues when applying a given pattern or texture. The current UVs have clearly been built the way they are because of the thick cloth seems on the model. It's actually very clever because it means that a texture that works well with these UVs would also work well with their manufacturing process with just a few minor tweaks, and allows for nice tiling overlays too. Modifying the UVs would throw a wrench in this (although admittedly the texel density doesn't seem to be uniform between the 3 parts, so that's a bit of a shame really).

    OP : You've simply misunderstood what the previous artists explained to you. What was meant was : using projection techniques to progressively project any pattern/texture onto the object. For instance starting from the main angle/point of view, and then carefully working one's way around a model.

    The previous artist never implied that the flame texture was projected in one single pass - and there is no reason for you to expect to be able to do that either :)

    Now there's also something else you can do, which is to create a new set of UVs allowing you to work in any way you like, and then projecting the pixel data of the texture you create for them from the new UV set back to the original. But given the nature of your current question this would probably be too ambitious a workflow at this time. So instead simply focus your efforts in learning how to operate the Zbrush texture projection tools (or learn any other tool letting you do that : Mudbox, Mari, 3DCoat).
  • onionhead_o
    Offline / Send Message
    onionhead_o polycounter lvl 16
    I think something like Tri-Planar projection might help you. I believe substance designer has that.

    a quick demo using Tri-Planar in Mari, im pretty sure you can get similar results with designer or Painter

  • onionhead_o
    Offline / Send Message
    onionhead_o polycounter lvl 16
    other views to show that this is seamless

  • tehchriis
    Offline / Send Message
    tehchriis polycounter lvl 3
    @pior I will try it now again using the projection, I did use that technique last time but it felt nearly impossible to align the image perfectly on the edges, but maybe I was being too hasty. I will try again now and put in a bit more effort and see how it goes. It feel super gimmicky to me.

    @onionhead_o That's a cool technique, but how much control do you have on the texture positioning and 'flowing'?
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    The whole point is to *not* have to align the texture on the edges. You project what you want onto what you want, without having to worry about the UVs since the projection takes care of that.

    I would recommend you to post a clear and concise video showing you running into the specific issue you are having because I feel like there is a fundamental misunderstanding going on here.
  • tehchriis
    Offline / Send Message
    tehchriis polycounter lvl 3
    I will record my workflow right now and upload it for you. Check back in about 15 minutes.
  • tehchriis
    Offline / Send Message
    tehchriis polycounter lvl 3
    A recording never goes right the first try, took a bit longer.

    EDIT: I know in the video I scaled the model up and down during the painting, I dind't do that on my previous attempts.

    Here is a link! https://www.youtube.com/watch?v=n_h1fed5q8E&feature=youtu.be


  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Thank you for taking the time to record it as it will save time for everyone :) It is indeed a misunderstanding, mostly coming from using jargon too loosely.

    First off it's important to realize that the case of the previous artist (graphic flame pattern originating from the open edge of the helmet) is fundamentally different from yours. The artist clearly used a projection technique to gradually project the graphic pattern along the helmet opening, and then cleaned up the transitions. It very fast and simple to do in that case, and without a doubt you can see how that would work - it's trivial.

    Your case (tiling camo patterns and space sky) is completely different. Texture projection is here to literally project textures - not to automagically guess how to fill the empty parts with something perfectly matching the already stamped down parts. There is no "bug" here - it's simply the way texture projection/stencilling works.

    Triplanar projection will not help you either, as it will create exactly the same kind of ghosting/overlapping effect.

    You have two ways to make this work :

    1 - Proceed exactly as you do in this video, and then patch things manually. Now you observed that it is possible, but probably very long. This is true to an extent, but you also have to think non-linearly. Sure, you have a texture (camo, sky) that you want to project and it's "bugging out" where painted parts meet. As you observed you could painfully patch it. But you could also leverage projection painting once more by screengrabbing the model in fullbright mode with your partial paint job applied, send that to Photoshop, fill the patch there using the powerful Photoshop tools, and use that as your new texture to project onto the model at that specific angle. It would would only take a handful of custom patches - it's very powerful workflow.

    2 - As mentioned earlier, since this model has been provided as is by your client you probably don't have the liberty to change its UVs. But what you *can* do, is to create a new UV channel (or a new duplicate of the model) with UVs made especially for seamless tiling over that area. Then apply your tiling camo or sky texture to that version (no need for projection anymore), and then convert the texture to work with the old UVs by baking model to model (or UVs to UVs). This is your absolute best bet, and it is doable with any good baking app (3DSMax, Maya, Xnormal can all do that kind of texture conversion). Very useful stuff.
  • tehchriis
    Offline / Send Message
    tehchriis polycounter lvl 3
    Is it different because the flames are 'easy' to align and the rest is just white? It's only a camo texture right now but in the future it might be flames aswell, or something from angry birds. So it would be nice to have one 'universal' technique.

    I like the idea of taking it into photoshop, I also COULD paint just the middle part+edges, and then patch the thing up in photoshop. I will definately give that a go.

    I can do whatever I want with the model, as long as I can output the product shot they desire. But UV mapping is something I have always avoided like the plague, and now it's on my doorstep and it's knocking hard. I don't want to seem like I need everything to be spoonfed but could you point me in the right direction how this second technique would be set up? Also I don't understand because a few posts earlier you said this, why would it be any different now?:
    No, there is no need to modify the UVs - because even if they were seamless there would still be distortion issues when applying a given pattern or texture. 
  • onionhead_o
    Offline / Send Message
    onionhead_o polycounter lvl 16
    @onionhead_o That's a cool technique, but how much control do you have on the texture positioning and 'flowing'?
    for the triplanar I have control over its
    - Blending Falloff between axis.
    - Local rotation X Y Z ( ex. i can control the UV rotation of the image on each axis)
    - Global rotation XYZ (this rotates the whole projection)
    - Translate XYZ for each axis
    -  Tiling amount for each axis

    But as Pior says, Triplanar does introduce a bit of ghosting so. For a specific pattern like the camo. Tri-planar definitely won't work.

    Im gona keep digging at this for a procedural way to achieve this and report back. Because the Technique you use is very tedious and time consuming.
    tehchriis said:
    So it would be nice to have one 'universal' technique.
    I dont believe there is a universal way for every single pattern out there. For me the deciding factors to which technique I use comes down to How close does it need to match the given design?
    Does it need to Align to Center?
    Is the Pattern Symmetrical?
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Heya - the distortion I was talking about earlier is unavoidable, because a sphere object cannot be made flat without either distorting it or slicing it up - that's just the reality of geometry and math :). Some of my earlier comments were also related to the flame example, which indeed doesn't require to edit the UVs at all, since the graphic it is so easy to project. As said, most of the confusion in this thread comes from the erroneous premise of considering that the flame case is equivalent to the camo and the sky cases, even though they are actually very different and require 2 (or even 3) different approaches.

    That said in the practical cases you are currently struggling with (camo and sky), the distortion introduced by such a new unwrap may be acceptable. It really depends how you do it, how the relax algorithm treats this particular shape, how you hide things, and so on.

    There's also a bit of a "cart before the wheels" problem going on here. The definite solution to this problem is pretty clear :

    • You need to have two sets of UVs that you can freely convert textures between (the original layout which is great for distortion free-mapping, and and alternate one for global application of complex patterns across the seams, with an acceptable level of distortion).
    • And you need a reliable projection workflow allowing you to not only project raw textures, but also project patch elements carefully crafted in photoshop.

    But these two points *do* require a solid grasp on UV mapping/unwrapping. So if you do have a little bit of time on your hands before your deadline for this project, your best course of action would be to spend a few days/weeks learning about this and only this, as it's knocking on your door pretty hard indeed. But if you do not have the luxury to take the time to do that, then state it clearly and people will without a doubt chime in to help, probably even helping you preparing the files.

    Also ... if the final render is the only thing that really matters, then nothing prevents you from simply photoshopping that texture in after the fact. It goes back to the need to be as clear as possible regarding your constraints : if you ask such a question on a game art forum like here without going into all the specifics of this job, then everyone is going to assume that you need the final model and texture to be looking good from all angles (hence all the projection and UV discussion). BUT if all you need is a good looking static render, nothing prevents you from simply comping in the textures in Photoshop and call it a day.

    Lastly : in a way this is all a bit ironic, considering that the product does have a cloth seam there in the first place. Meaning that once produced in the real world, these fabrics with tiling decorative patterns *will* exhibit seams once applied to the helmet, unless they are produced very accurately and especially for this model.
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Here is an example showing the use of an alternate UV layout (which has its downsides as you'll notice that it does introduce the aforementioned distortion), and also showing how one can convert a texture from one UV layout to the other using Xnormal. Note that most 3d programs will let you do that internally, by baking from one UV channel to another of the same model. I am just showing the more approachable way using Xnormal and two OBJ models.

    https://www.youtube.com/watch?v=_75SFRmEwWo
    I think you will see that as soon as you have a good handle on these two things (being able to unwrap, and convert textures between different UVs) and also a good grasp on texture projection, the world becomes your oyster.
Sign In or Register to comment.