Jump to content
3DCoat Forums

Tileable 3d textures


Keytay
 Share

Go to solution Solved by Andrew Shpagin,

Recommended Posts

  • Member

Ok, I discovered and seems rendering Z buffer gives best result in this case. In next build you will be able to export projection from Y-axis to textures (including depth, color, specular, emissive). So this problem will be completely resolved in next build, you will get completely seamless texture in this case. Possibly I will drop link there preliminary to test.

Thanks for looking into it Andrew that sounds great! Will it be possible to bake AO as well? :)

I'll post the video as soon as possible, but it could take a day.

Thanks so much for that Ajz3d.

Link to comment
Share on other sites

  • Contributor

Bad news.

The first work-around is destructive like hell, although it's the only one with which I could get a seamless map (with a little effort).

With the second work-around I wasn't able to get any decent result, though the normal map seems more accurate here - but not when it comes to making a seamless map. And it looked so promising... I have recorded the video with it too, but I'm not sure if it's worth posting because of that.

Okay, here's the video exploring various aspects of the first work-around. It shows how 3D Coat bakes NM to flat planes of various subdivision and how the exported normal map looks like. Also, some Photoshop stuff. At the end I managed to get the seamless normal map, but it's quality might not be the best (several small chipped off areas). You might want to turn on annotations, because there's no audio. :rolleyes:

Oh, and here's the map if you'd like to try it.

https://docs.google....dit?usp=sharing

Link to comment
Share on other sites

  • Member

Again, a big thank you for taking the time to do this great video!! You Sir deserve a medal!

I must say it's really very promising and very quick to get the actual map out of 3dc, the only major downfall is the destruction of the map in PS to clean it up.

But if Andrew can work out a way to get them seamless from the get go and stop any chipping then it's a winner. The normal map at the end worked very well I must say. :)

Oh one thing I forgot to ask earlier about this, is it possible to place pre painted/textured models in the voxel room (Like in the ZB video)? ie. If we wanted to place twigs, pebbles, leaves, etc for a tiled ground. Are they always white and have to be painted after the fact as a whole. Sorry this is probably a really dumb question for you 3dc gurus.

Link to comment
Share on other sites

  • Contributor

Thanks. I'm glad I could help.

Oh one thing I forgot to ask earlier about this, is it possible to place pre painted/textured models in the voxel room (Like in the ZB video)? ie. If we wanted to place twigs, pebbles, leaves, etc for a tiled ground. Are they always white and have to be painted after the fact as a whole. Sorry this is probably a really dumb question for you 3dc gurus.

Not a dumb question at all. I was asking myself the same actually.

I know that it's not exactly what you're looking for, but you can paint directly over voxel objects in the surface mode (Paint Room will automatically convert voxel layer to surface layer after you place your strokes). You can paint colour and specularity this way. If you change the VoxTree layer back to voxels, the colour will be hidden and baked again only after you convert it back to surface. I think this method utilises per-vertex painting, so the greater the resolution of the VoxTree layer, the more resolution you get on your textures.

The colour and specularity will be baked to low-poly model after you're done with retopo.

This may save you some time.

post-12523-0-30780300-1362837871_thumb.j

Link to comment
Share on other sites

  • Member

Thanks. I'm glad I could help.

Not a dumb question at all. I was asking myself the same actually.

I know that it's not exactly what you're looking for, but you can paint directly over voxel objects in the surface mode (Paint Room will automatically convert voxel layer to surface layer after you place your strokes). You can paint colour and specularity this way. If you change the VoxTree layer back to voxels, the colour will be hidden and baked again only after you convert it back to surface. I think this method utilises per-vertex painting, so the greater the resolution of the VoxTree layer, the more resolution you get on your textures.

The colour and specularity will be baked to low-poly model after you're done with retopo.

This may save you some time.

So to place a textured leaf you would make it a surface, paint it and then back in the voxel room clone it around the canvas?

It would be great if you could pull in pre-textured models into the voxel room but can't have everything I guess.

Also, I've been trying your method in the video but I don't get past the section where you Retopo/merge with NM. I get the first dialog box that you get "You are about to bake a normal but it does not contain depth" etc. I hit ok but nothing happens, the next dialog that you get doesn't appear. I've followed your video precisely as well. I've tried with the original scene from Andrew and the scene I uploaded that you used. Maybe something in the preference I need to tick?

I'm using the demo version 3.7.18F1

Link to comment
Share on other sites

  • Reputable Contributor

So to place a textured leaf you would make it a surface, paint it and then back in the voxel room clone it around the canvas?

It would be great if you could pull in pre-textured models into the voxel room but can't have everything I guess.

Also, I've been trying your method in the video but I don't get past the section where you Retopo/merge with NM. I get the first dialog box that you get "You are about to bake a normal but it does not contain depth" etc. I hit ok but nothing happens, the next dialog that you get doesn't appear. I've followed your video precisely as well. I've tried with the original scene from Andrew and the scene I uploaded that you used. Maybe something in the preference I need to tick?

I'm using the demo version 3.7.18F1

He was saying you could paint your textures on the Voxel Model (Vertex Painting) and when you are done, bake everything down to a low poly mesh.

Link to comment
Share on other sites

  • Contributor

So to place a textured leaf you would make it a surface, paint it and then back in the voxel room clone it around the canvas?

Duplicate or instance it around. Cloning is a different tool that you don't want to use here, because it will remove the colour information from cloned object/parts.

You might want to export the high-poly surface layer with the colour to 3b file and create yourself a library of assets. The colour information will be kept, but there will be no custom UVs of course.

It would be great if you could pull in pre-textured models into the voxel room but can't have everything I guess.

Unfortunately, it's not possible to do it like on that ZBrush video, because if you import a textured model into Voxel Room, textures will be applied per-vertex. So if you import a low-poly OBJ for example and set the Merge options to "Merge without voxelizing" (required for textures to load when importing this kind of file), they will all get very blurry because of a low polygon count. :gamer1: To avoid surprises, you'd need to have a very high-poly model, with poly-count roughly matching the VoxTree layer you were painting on the pixel count of your texture. Or merge with 3b file, but that of course will allow you to only use textures you painted in vertex painting mode.

Also, I've been trying your method in the video but I don't get past the section where you Retopo/merge with NM. I get the first dialog box that you get "You are about to bake a normal but it does not contain depth" etc. I hit ok but nothing happens, the next dialog that you get doesn't appear. I've followed your video precisely as well. I've tried with the original scene from Andrew and the scene I uploaded that you used. Maybe something in the preference I need to tick?

I'm using the demo version 3.7.18F1

I'm not sure what is going on, because there's no reason for it not to work. Nothing I can think of right now. Does it return to viewport right after you click OK in the "You are about to bake..." window? Maybe try this scene (just make sure you tweak bake_parameters to at least 200/200, because this setting is not saved with the file):

https://docs.google....dit?usp=sharing

Or check out V4 :beta:

EDIT: Corrected a mistake.

Link to comment
Share on other sites

  • Member
You might want to export the high-poly surface layer with the colour to 3b file and create yourself a library of assets. The colour information will be kept, but there will be no custom UVs of course.

Right, gotcha. works perfectly fine for me. Thanks for the explanation.

Does it return to viewport right after you click OK in the "You are about to bake..." window? Maybe try this scene (just make sure you tweak bake_parameters to at least 200/200, because this setting is not saved with the file): https://docs.google....dit?usp=sharing Or check out V4 :beta:

Yes it returns to the viewport (after freezing for a second). Did you perhaps UV your new topo plane when you imported it?

I tried your scene and it works as it should, thanks for that.

Also I was wondering about the seam issue and had a close look at the tiles that Andrew uploaded. They're overlapping and they also have rounded edges (which is understandable) perhaps this could be contributing to the seam. Unless of course the overlapping is deliberate to cover the round edges?

tiles_Bev_zpsca2f5542.jpg

tiles_overlapping_zps7fc15ebf.jpg

Link to comment
Share on other sites

  • Member

Try this test build

http://www.3d-coat.c...-BETA12F-64.exe

There are 2 items in start menu in surface section for quickstart. If you alredy have something done use File->Export->Export depth along Y

Thanks Andrew, that's awesome! :)

I did a quick test and it's a much much smoother process now and it bakes the textures very quickly.

There were no seams on the normal where the models were but there were fine seams where the instance tiles meet the center one. It would be fine if the canvas edges were covered in models though.

The color texture seems to export with the wrong colors ie. Red was exported as blue.

I'll play with it in more detail and come back with any questions. Thanks again!

Is it possible to do AO with this procedure?

Link to comment
Share on other sites

  • Contributor

Good show Andrew! The new function works very well. Thank you for this.

I did some test bakes in the scene, and not only maps generated are perfectly seamless, but finally there's no chipping at all.

There is some aliasing in places where geometry hangs over the surface (with empty space in-between), but this can be easily eliminated with baking to higher resolution and downsizing the bitmap afterwards.

I have some questions though:

  1. The patch size is is supposed to allow user to bake area of more than one tile when bigger values than default are entered and only a part of the middle tile if the values are smaller, right? But why the default value is 506? Where does this number come from?
  2. What is the correct way of importing the generated depth map into the Paint Room? What scale coefficient and depth factor scale should we use?

Did you perhaps UV your new topo plane when you imported it?

UVs were generated automatically upon plane creation in Silo.

Link to comment
Share on other sites

  • Contributor

Keytay, you mean you get seams in maps baked with this new function?

About weird colours in the colour map...Indeed it's definitely a bug. Red channel is swapped with the blue. Luckily for us it can be fixed in Photoshop using Channel Mixer.

Link to comment
Share on other sites

  • 3 weeks later...
  • Advanced Member

Is this function not working? I just did a 3x3 tile using 4.0b13 and the result was a flat gray color diffuse, with a flat normal map. I did export using File -> Export -> Export depth along Y as it instructed.

This was after using Voxel and Paint rooms to get the voxel mesh to look the way I wanted, with lots of bumps and dirty areas. Should I have given this a retopo and UV to do this? I can't imagine why, if I'm exporting from the Voxel Room using the method above.

Link to comment
Share on other sites

  • Contributor

Hello Alvordr.

Hm... that's odd. It worked fine the last time I checked it. The only thing that comes to my mind are surfaces not facing the positive Y direction.

If it's not the case, then could you perhaps post a rough exemplary scene in which the problem occurs?

About Keytay's problem with seams. I believe that avoiding them would require a perfect alignment of flat cube's instances in world space and them having exactly 90-degrees angles at their edges (no round corners). It's possible I think, but you'd probably need a hi-res, pre-subdivided surface prepared in a 3rd party program and you would have to know its XZ dimensions to offset it numerically. That's because every smoothing or subdivision operation in 3D Coat (applied to voxels or surface) would also smooth those edges and in programs designed for modelling - you have a better control over the mesh, so you can make the edges perfectly sharp.

But that's just a theory. I have not tried this in practice.

Link to comment
Share on other sites

  • Advanced Member

OK, so apparently the tilebase opens with the camera facing it from the bottom. I'm not sure why this is how it opens by default. I'm sure it's an easy fix for Andrew to make sure the camera faces from the other side when you open that default file.

Link to comment
Share on other sites

  • 11 months later...
  • Advanced Member

Hello! Sorry to revive an old thread but I was wondering just how you guys are going about creating tiled 3d models? I think I understand it in theory, ie a 9x9 "grid" of instanced objects where you're really only working on the middle piece. (correct me if I'm wrong) but how is this done in practise within 3d coat?

Link to comment
Share on other sites

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.   Paste as plain text instead

  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.

 Share

×
×
  • Create New...