Home Technical Talk

Help with finishing my high poly sculpt in zbrush to tile.

synergy11
polycounter lvl 6
Offline / Send Message
synergy11 polycounter lvl 6
http://imageshack.us/photo/my-images/135/uhohimatool.jpg/

The problem I am having is that I need to copy all the brick pieces on the right to the left so that when I bake to a plane in xnormal, the texture will tile as intended.

Is there a way to do this in zbrush? The basemesh will tile perfectly as I set it up on the grid in my 3D app. But I'm not sure if I can duplicate and move over those pieces in zbrush. Because even if i can there's no grid snapping in zbrush so it might not align perfectly when I bake which defeates the whole purpose.

As a workaround I tried to export those High poly pieces on the right back to my 3d App to move into the proper place to tile. But when I export and combine those pieces with the zbrush obj's in xNormal, I lose the polypaint of the reexported pieces from my 3d app.

Oh lord. : D

Any suggestions?

Replies

  • tristamus
    Options
    Offline / Send Message
    tristamus polycounter lvl 9
    You can use the ~ key on your keyboard to move the canvas around and configure it to tile!
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Thanks for the response.

    But I need it perfect so I can bake in xNormal.

    Tild won't cut it for this type of texture.
  • PolyHertz
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    I am trying to bake this texture to a flat plane (in xNormal) instead of making a tileable mesh.


    Great tutorial though.
  • Sean VanGorder
    Options
    Offline / Send Message
    Exactly. In that tutorial he lays out the bricks and then renders out a tileable height map. Do the same but grab the normal map. No need for xNormal.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    I've decided to try that method but I find it impossible to place the bricks with any precision in zbrush.

    http://imageshack.us/photo/my-images/689/altmethod.jpg/

    I can see his method working for random organic like textures but not bricks.

    In the screenshot I was trying to place (and "tilde" over) the bottom part of my texture.
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    I haven't figured out a good way to do this either, because like you say the polypaint data is lost if you bring it into maya to make it tile, and zbrush isn't precise when it comes to placing objects.


    One thing I have tried, and resulted it workable solutions, is to duplicate the subtool and use the offset function in the deformation rollout. I'm not sure what reference zbrush uses for it's units because it certainly isn't what I used in maya, it doesn't retain the offset ie: if you offset a subtool 5 units, there isn't any way to know numerically how much it has been offset, and finally you can only move it 100 at a time.


    I was messing with a quick set of bricks, and in maya I had to move the object 64 units so it would tile and that equated to 160 offset in zbrush.


    So a workflow would be to:
    Duplicate your tool (probably step down in subdivisions for this)
    Offset the various copies so you have tiling on all edges.
    Only Export the pieces that are used for projection, because your exported obj might end up being HUGE. So the pieces way past the edge that won't contibute, to normal, AO etc... can be hidden.


    It would be cool if xNormal had a feature like this some sort of high poly instance array, where you could set the offset. I'm not sure how it would affect things performance-wise, but I would take that hit so i wouldn't have to do what I just described in zbrush.
  • Shiniku
    Options
    Offline / Send Message
    Shiniku polycounter lvl 9
    I've done this (sculpted on a plane in zbrush, baked it to a flat plane in xnormal, with good tiling results.)

    Under your brush > curves settings turn 'wrap mode' to 1. And then, you just have to be really careful about only doing things in the Y direction (or whatever direction is up in zbrush, I forget.) because you definitely don't want to mess up the shape of the edges on your square or it won't tile properly when you bake it.
  • MatthewS
    Options
    Offline / Send Message
    Why don't you hide all but the bricks you need copied, use merge visible, append it and then just move it manually. Zbrush's move tool isn't that inaccurate... Or you could always extract it with all of the settings to 0 to make a copy of that part...
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    MatthewS wrote: »
    Why don't you hide all but the bricks you need copied, use merge visible, append it and then just move it manually. Zbrush's move tool isn't that inaccurate... Or you could always extract it with all of the settings to 0 to make a copy of that part...

    I haven't figured out a way to use the move tool with specific units, and eyeballing it won't really work for tiling textures.

    I have had moderate success using the offset option in deformations but it has it's own weird quirks as it can only offset 100 units at a time, and it has a weird convention for the value of those units. In my test 64units in maya = 160 units in zbrush.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    man just deciamte and bring it into maya to tile it.
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    passerby wrote: »
    man just deciamte and bring it into maya to tile it.

    How does that solve the loss of polypaint data?
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    ah didnt relise he was polypainting
  • Sean VanGorder
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    Duplicate and offset like suggested. Otherwise, texture maps are going to be your friend. If the auto UVs don't work so well on a decimated mesh, use a unified skin instead (or one of the lower subdivision levels). Bake a displacement/normal map and your baking program might even be able to use that data for reference instead.

    Since its bricks though, I still think it would be easier to use the z-document approach.
  • Oniram
    Options
    Offline / Send Message
    Oniram polycounter lvl 16
    if you brought in the mesh from maya or max or whatever.. it should still be to scale shouldnt it? cant you make a duplicate of the ones that you need to move and just offset them on X for the specific amount of distance you need?
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    Oniram wrote: »
    if you brought in the mesh from maya or max or whatever.. it should still be to scale shouldnt it? cant you make a duplicate of the ones that you need to move and just offset them on X for the specific amount of distance you need?

    The problem that I have found with this is that value you enter into the offset dialog, is not any sort of absolute unit but relative to the size of the object. Specifically the largest axis of the bounding box so if I have a box that is 10*8*4 100 offset equals half of the largest unit or 5 units, but when you throw in other units it becomes tricky because a box that is 12*8*4, 100 offset=6 units, but if you want to move 4 units it's 66.6 and this may lead to inaccuracies.

    So it's all well and good if I bring in a set of bricks that I know the dimensions of, but it can be a pain in the ass when you have a set of objects which aren't as precise.

    I wonder if using GOZ to manipulate duplicated subtools maybe a feasible work around.
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    I just tested it out and using GOZ works perfectly to move the pieces around precisely.

    Just don't be tempted to delete the extra pieces it caused a bunch of problems for me, better to do that in zbrush once you have instanced all your pieces for tiling.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Thanks for the suggestions people.

    How did GOZ help?


    Cyrid: By z-document approach, you mean using the "tilde" method?
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    Cyrid: By z-document approach, you mean using the "tilde" method?
    Yup. Size the document to the texture resolution you want, use the matcaps you want, and export as psd.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    I tried to use the tilde method again.

    I set my doc size. And I split my main 3 subtools with Groups Split. So now each brick piece is it's own subtool.

    However when I draw a subtool on the screen for some reason I can't move it after. Also every once in a while the "whole" original wall piece get's drawn on screen...like it's still there in each subtool.

    It's totally whacked, and appears bugged.

    I'm decimating the original mesh. Creating a low poly and baking. That way I'll keep my polypaint. Because I'll bake the original High mesh.

    Tileable mesh FTW. Tileable texture for a Plane , lose.
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    synergy11 wrote: »
    How did GOZ help?

    I used it to translate the duplicated subtools in maya precisely. You do have to do them one by one unless I'm missing something, but it is a reliable method, unlike offsetting in ZBrush.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Thanks for posting those pics. Cyrid

    I understand what's happening here. However my object is made up of 3 subtools. And when I Groupsplit them into individual pieces they behaved incorrectly. It's hard to explain. I am going to try to separate them again.

    Also you point out my base mesh isnt't square so it's causing problems.
    Is there a better way to set-up my base mesh for this kind of workflow?

    I think next time I will sculpt each brick from the start and try to compose on the zbrush canvas. I will also import a square image from photoshop as a design guide. (As suggested to me on another Thread)


    m4dcow - Does that method retain Polypaint by chance?
  • m4dcow
    Options
    Offline / Send Message
    m4dcow interpolator
    synergy11 wrote: »
    m4dcow - Does that method retain Polypaint by chance?

    Yes it does, I did notice that coming back from maya it didn't retain the polygroups properly, but you can just manually hide the extra pieces. To export you would merge all the subtools together with subtool master, or just export each subtool as it's own obj.
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    And when I Groupsplit them into individual pieces they behaved incorrectly. It's hard to explain. I am going to try to separate them again.
    You can have zbrush split it up into any amount of subtools that you want. In the example I had I started with just 1 tool as I was trying to match the one you created, and later broke it down into auto polygroups so that I could easily hide sections and split them into new subtools. Moving and scaling was mostly transpose, with the occasional offset deform.

    Edit: Two more things regarding your workflow.

    A - If you want to preserve polypaint when using decimation master, go to Preferences: DecimationMaster: Use and Keep Polypaint. You can also define how important the Polypaint information is to the Decimation process.
    dm_polypaint.gif

    B - Since you have all your blocks arranged and only need one planar view of the whole thing, did you delete all the unnecessary side/back faces yet? I recall you using beveled cubes when arranging them in Softimage. If 5/6ths of the tool's faces aren't really contributing to your view of the wall, that alone should free up some of your scene.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Of course! The UV method should solve many a problem for me!
    Because now I can send a decimated version back to Softimage to tile over the necessary parts...and then when I bake in xnormal. I'll bake from the HP texture instead of the vertex paint right???


    In regards to your question. I did create a optimized High poly in zbrush by deleting faces away from the camera. Howerver when I baked it down in xnormal I'm getting this weird problem.

    I know I kinda gave up on the plane method in these screenshots..but I just wanted to get a bake down lol. So much time learning proper workflow! aha

    There should be 4 pics on this link that show details of my xnormal problem.

    http://img857.imageshack.us/g/xnormalproblemhp.jpg/

    EDIT: It looks like my bake is "looking" at the back faces of my High poly instead of the front?

    Thanks again everyone, I feel i'm getting closer now.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    how much ram do you got, in maya iv been able to work with things up to 20ish million faces if i view things as bounding boxes, and this is on 8gb ram.

    though makes a fucking huge obj when you export out for xnormal.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    I have 4 gigs of ram on vista 32 bit.

    9 million polygons appears to slow down zbrush. : )

    I also was running out of ram trying to bake in xnormal. I can't upgrade to 8 gigs unless i use 64 bit right?


    Any ideas on my above baking problem? I'm SO CLOSE. aha
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    What size texture are you baking to? I've seen people suggest that there's not much point in working with 9 million polygons for a planar surface if the texture only has 1-4 million pixels (and again).
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Could that be causing my baking problem in xnormal?

    http://imageshack.us/photo/my-images/859/xnormalproblemresult.jpg/

    I tried different textures sizes in xnormal. 512 and 1024. I realize 9million is overkill. But xnormal should still bake down to my plane low poly right?

    Thanks for the book link btw!
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    Nah, generally the worse that would happen when having more polygons than pixels would be a larger obj file with longer calculation times, all for no real noticeable benefits in the result. The garbled mess you're getting is something else that I can't say I've seen before, at least not in xnormal. If it were baked in brush I'd pin my money on the UVs exceeding the 1:0 range, but xnormal doesn't have that particular glitch from what I can tell.
  • PolyHertz
    Options
    Offline / Send Message
    PolyHertz polycount lvl 666
    Sorry about hijacking the thread, but Is there a way to make meshs/tool tile while still in edit mode? Like if you have one long mesh and draw it out to the point that the ends go off the canvas have them wrap around. Probably not possible but figured I'd ask anyhow while on the subject.
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    I don't think there is. When you tile you're only moving the 2.5D document, so the tool has to be dropped down onto it first in order to offset with it.

    For any tool shorter in length than the document, you would have to offset/tile the document first in order to position the desired location / gap so that it's in the middle of the document. Draw out the tool, do your edits, and then drop it in place.

    For any tool that is supposed to run the same length as the document, you could turn on wrap mode (set to 1) under the Brush:Curve settings to ensure it is seamless.
  • csprance
    Options
    Offline / Send Message
    csprance polycounter lvl 13
    Sorry for rezzing an old thread but I stumbled upon this today and found an alternative solution.
    TilingTexTut.jpg
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Ya but you still can't edit and sculpt each brick after it's been 'dropped'

    What does the Displace function do exactly>?
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    Offsets the document/layer, similar to ~, but with numeric control.

    To what extent would you want to edit the brick after dropping it? I think the closest you'd be able to get without having each brick as a subtool would be to project the result of the document's pixols onto a new planar mesh.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    I'd like to just continue sculpting in details and variations after I have my initial brick layout, dropped and tilded around.

    But the best way is projecting a grabbed displacement map over a new plane would get me back into sculpting mode?
  • cryrid
    Options
    Offline / Send Message
    cryrid interpolator
    Some way or another you'll have to transfer the pixols' z-info onto polygons. You could grab the alpha and use it as an alpha/mask/displacement map, or you could use z-project/matchmaker to project it. I'm not sure which of those five methods would be the best (though I'm pretty sure a straight-up alpha stroke would be the worst).
    Ideally it would displace up and not out to keep the seamlessness in tact.

    Edit: Just did a quick test, displacement seems to work very well as far as making a new meshes' borders seamless so I would probably stick with that.
  • synergy11
    Options
    Offline / Send Message
    synergy11 polycounter lvl 6
    Great. Thanks cryrid
  • SirCalalot
    Options
    Offline / Send Message
    SirCalalot polycounter lvl 10
    Handy thread.
    Cheers all who posted, as I pretty much wanted to ask the same questions.

    Thought I'd bump it as there are some useful answers in here that others might find valuable.
  • SGTGunner
    Options
    Offline / Send Message
    PolyHertz wrote: »

    This is a great tutorial. I could use this a lot. There are a couple of places where I get hung up on, which is the Stage 2 part. I wish it could be a little more descriptive. Sorry a bit noob on this.

    Never mind found a great demo here that help resolve the gaps I was having.

    http://eat3d.com/free/zbrush_tile

    Cheers!
Sign In or Register to comment.