Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Dec 8, 2022, between 7 am & 7 pm EST, in the DOTS Dev Blitz Day 2022 - Q&A forum, Discord, and Unity3D Subreddit to learn more about DOTS directly from the Unity Developers.
    Dismiss Notice
  3. Have a look at our Games Focus blog post series which will show what Unity is doing for all game developers – now, next year, and in the future.
    Dismiss Notice

Auto Texture Tiling Tool Version 1.82, 2018.3 ready

Discussion in 'Assets and Asset Store' started by Chris_Entropy, Dec 9, 2015.

  1. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    @buttmatrix I am currently working on the new feature, which lets you tile the textures with the original submeshes and material assignments intact. I am also constantly looking into a solution for the Lightmapping issue. Unfortunately, the automatic UV mapping process, which Unity uses to create the lightmaps also changes the mesh, which is why the mapping gets destroyed. I am looking for a workaround.
     
  2. buttmatrix

    buttmatrix

    Joined:
    Mar 23, 2015
    Posts:
    609
    [@Chris_Entropy, in response to your PM]

    Is it such that 'BasicTextureTiling' should only be applied to meshes that contain submeshes or multiple material ID's, and the 'AutoTextureTiling' script should only be applied to meshes that do not contain submeshes? Or, is 'BasicTextureTiling' meant to replace 'AutoTextureTiling' script?

    Using BTT on a mesh that does not contain submeshes, produces the following error:
    Capture.PNG
    you can see the rotated UVs along the face of the object
     
  3. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    557
    Hi Chris, I have not been in the forum in awhile.. I really like Auto Texture Tiling Tool and the new features
    are a huge time saver .. since i believe you could also swap out like one texture for another that was already applied ?
    just guessing.. its great to see you still working on this and glad you raised the price some too ;)
     
    Chris_Entropy likes this.
  4. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Yes, this is the intended use. BasicTextureTiling should only be applied to meshes that contain submeshes. In this case, you will have to define your faces yourself in your 3D Modeling tool of your choice. It will not split the model into faces, which means that a model with a single submesh will be handled as having only a single face (the behavior you are experiencing).
    For models without submeshes you should still use the AutoTextureTiling script, but in this case all texture mapping done previously will be lost.
    I will clarify this in the documentation of the next version.
     
    buttmatrix likes this.
  5. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Thanks, much appreciated :) Yeah, the little Auto Texture Tiling Tool has grown quite a bit.
     
    Mark_01 likes this.
  6. buttmatrix

    buttmatrix

    Joined:
    Mar 23, 2015
    Posts:
    609
    Excellent, thank you for that clarification! I will experiment with the BTT script over the next week or so and see if I identify any aberrant behavior. Other than that, the only other issue I'm facing is the UV2 error that has been reported elsewhere. I'm not sure why this is happening - probably something to do with how Enlighten is preparing the lightmap atlases(?)
     
  7. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Yes, the problem is, that lightmap baking process does something quite similar to what my tool does, at least that is my assumption. It seems to change the UV map as well as the Mesh, i.e. triangle indices, which in turn f*s up the UV mapping of my tool. It is really strange, so I fear I will need some more time until I find a fix.
    Most curiously it seems to work with some objects, but not with others. It seems to always work with cube projection.
     
    buttmatrix likes this.
  8. buttmatrix

    buttmatrix

    Joined:
    Mar 23, 2015
    Posts:
    609
    Right, the fact that it affects some objects and not others is peculiar. I'm happy you're exploring the issue, thanks!
     
  9. Fattie

    Fattie

    Joined:
    Jul 5, 2012
    Posts:
    474
    Hey Chris how are you - I've got one

    In fact, can you use different textures for each side?

    (Just BTW is there a doco page? maybe the answer is there)
     
  10. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Hi, thank you for your question. You can indeed a different Material (not texture) for each side. Simply assign all materials you want to use in your object to the MeshRenderer as usual. After that you can assign the materials either in the inspector of the ATTT or in the Auto Texture Tiling Editor window. There should be a documentation PDF in the package, but in any case I have uploaded it here: http://layeredmind.de/Auto_Texture_Tiling_Tool_Readme_1-79.pdf
     
    Mark_01 likes this.
  11. Fattie

    Fattie

    Joined:
    Jul 5, 2012
    Posts:
    474
    thanks a million for that prompt response Chris, great stuff. Dunno how you can sell for so low, it should be 100 bucks! :) your package is almost like using Substances - you know? at a fraction of the effort.
     
    Mark_01 and Chris_Entropy like this.
  12. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    I just uploaded another Update for the Auto Texture Tiling Tool. It will include the Basic Texture Tiling Tool, which allows to pre-define sub-meshes in 3D-Modeling Tools and use them with the tiling features.
    It also finally fixes the light mapping problems! Thanks to all of you for being patient with me on this one ;-)
    Finally, it adds compatibility with the new Unity version 5.6.

    As always, the update will be online in a few days.
     
    buttmatrix and Mark_01 like this.
  13. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Btw, the price of the Tool will be slightly raised due to the new features. So get it, while it still has the old, lower price :D
     
    Last edited: Apr 6, 2017
  14. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    557
    ATT is like, if you need it.. it's the only thing like it on the store, so yes a price increase, well
    warranted. Being able to change regular materials, on some of the packs .. AKA 3dforgre
    with substances that you can change the seeds for a really varied look.. really worth the time..
    if you think how long it takes to model and create UV mapping then the materials, your own sets even ..

    it's easy to see how Auto Texture Tiling Tool, can save a lot of time and energy! Glad you are keeping
    with it.. ATT is a little gem :)
     
    Chris_Entropy likes this.
  15. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The new version has been approved and is now live in the asset store.
     
    Mark_01 and buttmatrix like this.
  16. buttmatrix

    buttmatrix

    Joined:
    Mar 23, 2015
    Posts:
    609
    @Chris_Entropy does ATT require that a mesh contain UVs before it is able to do it's job, or can you literally import a mesh that hasn't been unwrapped and it will tile regular UV coordinates to that mesh?
     
  17. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    It works with unmapped meshes. That's the purpose of the ATTT. It will create its very own UV mapping. This is also why you should not do any UV mapping and texturing beforehand, since the Tool will overwrite it.

    If you want to pre-define the face areas and pre-apply textures, you can use the Basic Texture Tiling script, which is now new in the package. It will use existing sub-meshes created in the 3D Modeling application of your choice. It will still overwrite the Mapping of those individual submeshes to make the textures tile, so be aware of that.
     
    Mark_01 and buttmatrix like this.
  18. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The Auto Texture Tiling Tool is currently for sale, reduced 30% in price!
     
  19. MU-TH-UR

    MU-TH-UR

    Joined:
    Aug 16, 2016
    Posts:
    20
    @Chris_Entropy Is it already possible or could be possible to assign/align textures this quickly like in Hammer?



    left click the first face you are happy with then alt+right click the next so they flow together?
     
  20. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    This seems like an interesting and useful feature. I will put it on my list of things to include into the tool. Thank you :)
     
  21. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The Auto Texture Tiling Tool is currently reduced 30% in price!
     
    JBR-games likes this.
  22. pencilking2002

    pencilking2002

    Joined:
    Sep 30, 2013
    Posts:
    23
    Hi @Chris_Entropy! I have a question for ya.

    Is it possible to retain existing UVs of a mesh and still use the tool? Or is it possible to edit which faces are part of a particular shell? We're using seamless textures and tiling them on complex meshes(more complex than a box anyway) and it would help to gain more control over the UVs/shells.

    Another option would be to be able to select a particular face(not shell) and tweak the UVs of that.
     
  23. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Hi @pencilking2002 , thanks for your interest in the tool. You can pre-define sub-meshes by applying different materials in the 3D modeling tool of your choice. You can then use the BasicTextureTiling.cs script, which is also included in the package. Use it with the Auto Texture Tiling Window, and you can select and edit your pre-defined faces in the comfortable graphical editor.
     
  24. pencilking2002

    pencilking2002

    Joined:
    Sep 30, 2013
    Posts:
    23
    Oh I see. I heard you mention submeshes before but I didn't understand what they were. Does having more submeshes mean that there are more draw calls? It seems like that could be a problem if you have a lot of assets in the game.

    Also, I tried this technique and while its pretty friggin awesome in theory, it I think your BasicTextureTiling script still has some problems. As soon as you try to move or scale the UVs on a submesh, the whole mesh kind breaks and everything looks out of wack. I will make a sample project for you later tonight to show you the bug.
     
  25. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Having more submshes, i.e. materials, should not result in more draw calls, as long as the same shader is used. Unity should normally be able to match those. I have to look into this.

    Please also send your example, if there is a bug in the tool it has to be fixed.
     
    JBR-games likes this.
  26. pencilking2002

    pencilking2002

    Joined:
    Sep 30, 2013
    Posts:
    23
    Hey @Chris_Entropy. Sorry for the delay. I wanted to make sure that the problem wasn't something we were doing (although that's still possible :D)

    Here's a link to the Unity Package and instructions for reproducing the bug:

    Instructions for reproducing bugs with BasicTextureTiling.cs. Using unity version 5.6.0f3. Platform: Windows 10:

    1. Import the package
    2. Open the SubMeshTestScene if its not already open
    3. Select the "Cliff_01" Game Object in the Hierarchy
    4. Attach a MeshCollider (not sure if you need this for ATT)
    5. Attach the BasicTextureTiling component
    6. Notice there's an IndexOutOftange error in the console. It also happens anytime you click off the mesh now in the scene view.
    7. Open ATT Window (Opens to Unwrap Method: FaceDependent)
    8. Attempt to change Offset, Scale & Rotation
    interactively or with the offset/scale/rotation input fields
    9. Notice there are errors that happen in the console and that the edits do not work
    10. Change Unwrap Method to CubeProjection
    11. Change Unwrap Method to FaceDependent to see messed up mesh
     
  27. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Ok, after some testing, it seems like the Basic Texture Tiling script actually has a bug. The other scripts seem to be fine. I am on it, fixing it as soon as possible.
     
    Mark_01 likes this.
  28. pencilking2002

    pencilking2002

    Joined:
    Sep 30, 2013
    Posts:
    23
    Ah I see. Thanks for looking into this! I'm looking forward to trying out the BasicTextureTiling functionality again!
     
  29. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    I've got it. It was still a problem with Unity's way of calculating the Lightmap UVs, which most curiously adds additional vertices. I think I have a fix, that will fix your problem (@pencilking2002) and at the same time leave the lightmaps intact. I will upload it as soon as possible and Unity will get it live in a few days. If you need the fix sooner, PM me.
     
    JBR-games likes this.
  30. pencilking2002

    pencilking2002

    Joined:
    Sep 30, 2013
    Posts:
    23
    Nice! Can't wait to make some cool stuff! Thanks.
     
  31. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The bugfix is live now and can be downloaded from the asset store.
     
    Mark_01 likes this.
  32. krillmcrawl0

    krillmcrawl0

    Joined:
    Jan 13, 2014
    Posts:
    35
    Just bought the script, very cool. From my own editor script, how would I add the AutoTextureTiling script to a gameobject? Do you have an example of that?
     
  33. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Hi @krillmcrawl0 , thanks for purchasing the ATTT. You should be able to easily add it with AddComponent<AutoTextureTiling>(). Everything else should work as if you added it by hand.
     
  34. krillmcrawl0

    krillmcrawl0

    Joined:
    Jan 13, 2014
    Posts:
    35
    Thanks @Chris_Entropy, I had to use "AddComponent<AutoTiling.AutoTextureTiling> ();", it might help someone:)

    Adding it to certain objects does not seem to work, the responiveness of unity becomes slow and I have to kill the editor, any ideas? Here is aan example of a non working object:
    http://5514.se/temp/Gangbrygga.zip
     
  35. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    I tested it with a simple cube and it seem to work. I will look into it as soon as possible, why it is not working with your object. I integrated an add-button into the Texture Tiling Editor Window. If you want I can send it to you, just PM me.
     
  36. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The problem with your mesh seems to be, that it has too many vertices. Unity gives a warning on import. It says that it is split into two meshes. The Auto Texture Tiling Tool re-arranges all vertices and UV maps in order to work, which might explain the long waiting time. I can put this process into a Coroutine in the next version, so it gives you a progress bar on larger meshes. For now you will just have to wait. The ATTT will do its thing, but it will take some time.
     
  37. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    The Auto Texture Tiling Tool will be on Sale for Cyber Monday beginning at November 27th. Put it on your wish lists to get notified!
    It will be 30% off!
     
    JBR-games and Mark_01 like this.
  38. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    557
    To any and all that happen to read about this on sale, don't hesitate to get it. I would have gotten Auto Texture Tiling Tool
    at 30 $ even. This asset is one that when / if you need something like this.. You will very VERY happy you have this
    in your tool box!!! Don't even need to take my word for it. Go read the reviews 22 reviews for this over look utility is amazing to even get this many reviews.

    Chris, wishing you good luck with the sale and season greeting's even if it is a little early..
    Hope you have a great sale!!!
     
    JBR-games likes this.
  39. vlater

    vlater

    Joined:
    Jun 4, 2013
    Posts:
    16
    Hi.
    I have an object which uses Dynamic texture tiling component. Lest say one 3d cube with some texture attached.
    I've added script which resizes the cube in one direction. When I run the scene in Unity edit mode, everything works fine. But when I build and run the game, it doesn't work and looks like the dynamic texture tilling component is not executing at all. What I'm doing wrong, or did I miss something? In the output log file there is the following message:

    Cube: AutoTiling.DynamicTextureTiling.CreateMeshAndUVs: there was something wrong with the mesh, there were 0 normals, but 24 vertices. They need to have the same count.

    And the object I used is just a simple 3d cube from unity built in objects

    Update:
    The standard shader used in the demo works fine. However if I use a material with shader unlit/transparent - it works in edit mode but not in run mode.

    Update 2:
    Ok I've made it work by calling RecalculateNormals() on the meshfilter object. I don't know if this is the correct workaround but seems it works fine.

    GetComponent<MeshFilter>().mesh.RecalculateNormals();
     
    Last edited: Dec 1, 2017
  40. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Hi there, thank you for using the Auto Texture Tiling Tool. In the current implementation, the Tool relies on the mesh normals being set. This is fixed by your call to RecalculateNormals. I have to check the source code and see if the normals are essential to the functionality of the Tool, otherwise I can remove this dependency. Thank you for your post and bringing this to my attention!
     
  41. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Quick Question: Unity released the news, that it bought ProBuilder and will make it available for all users with version 2018.1. It seems to me that this makes my tool redundant. What are your thoughts on it? Does the Auto Texture Tiling Tool have abilities and features, that the ProBuilder is lacking?
     
  42. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    557
    For me, I would still want to Use Auto Texture Tiling because there is many more
    meshes then just ProBuilder. Like Sketch up models as an example.

    I dont think the Probuilder can import and texture any mesh other then what it makes,
    plus too, ATT can texture by face, meaning you don't need to have UV's AFAIK.

    Auto Texture Tiling is a great utility, I would miss it.
     
    Last edited: Feb 17, 2018
    Chris_Entropy and JBR-games like this.
  43. JBR-games

    JBR-games

    Joined:
    Sep 26, 2012
    Posts:
    662
    I haven't really used Pro Builder yet so I'll have to test it and get back to you but regardless it's always nice to have a light weight asset I can bring into a project rather than the whole probuilder system
     
    Chris_Entropy and Mark_01 like this.
  44. Tubbritt

    Tubbritt

    Joined:
    Nov 30, 2015
    Posts:
    41
    I prefer Auto Texture Tiling simply because it's a light direct tool for solving a specific problem. I probably won't even use Pro Builder even when it's free as I do all my 3D modelling in C4D.
     
    Chris_Entropy and Mark_01 like this.
  45. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Hello @dahuilang. Unfortunately no, at the moment BasicTextureTiling does not re-calculate the mesh at runtime. I might add this in a future iteration.
     
    JBR-games and Mark_01 like this.
  46. dahuilang

    dahuilang

    Joined:
    Jun 5, 2014
    Posts:
    43
    hi, can it support PBR texture ? seems not after my test.
     
  47. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Normally the Tool should work with any shader, that uses UV-Coordinates. It was successfully tested with substances for example. If you don't get your scenes to work, please send me screenshots of the problem or a scene with the textures/shaders, that are not working, so I can figure out the reason.
     
  48. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    Ok, I understand the problem. The Auto Texture Tiling Tool will always tile the complete texture over the assigned area. The way the Tool currently works, it can not use only parts of the texture. If you want to tile different texture parts, you have to split the texture into several parts and assign them to each area.
     
  49. dahuilang

    dahuilang

    Joined:
    Jun 5, 2014
    Posts:
    43
    thank you for your reply ! i did as you suggested, the albedo map, metallic map, and the normalmap did not show rightly too, can you sent me a model made by substance which can work fine with AutoTextureTilingTools , my are all failed, Email: 1159802646@qq.com
     
    Last edited: Apr 18, 2018
  50. Chris_Entropy

    Chris_Entropy

    Joined:
    Apr 11, 2011
    Posts:
    202
    I created a small example project, which explains the usage of the ATTT with Substances. I can't upload it here, but I will send it to anyone having troubles with it. I also created a small document explaining the usage (see below).
     

    Attached Files:

    Mark_01 likes this.