Four-way tiling?

New here. I'm a real-time 3D artist, been in the game development biz for a long time. I like what I'm seeing with Genetica, looks very promising.

1. I'm curious if it will allow me to create a texture that can be rotated 90 degrees and still tile with itself? Thus each of the four edges would be able to tile with one another, for example if I had a slate floor and each quad had its UVs rotated in 90-degree increments, they would still tile seamlessly with one another.

2. Also I'm curious if Genetica can do 4-way mirror-tiling? Same idea as above, except that each quad could use mirrored UVs and the texture would still be seamless.

3. Can I make several variations that share the same edge tiling? Only the interiors would be different.

With hand-edited tiling, these can be very difficult to implement well... but they really help avoid obvious in-game repetition. Humans are so damn good at pattern-recognition!

Thanks for your suggestions. Genetica and Genetica 2 don't offer those types of seamlessness, but I am interested in implementing that sort of thing. We had considered some but not all of the types you mentioned above, so thanks for that--I'll modify our notes on the subject.

BTW, here's an interesting tile plugin I saw recently, might give you some more ideas. It's for use with bitmaps rather than procedurals, but the controls are interesting. Biggest thing I see lacking therein is a filter to restore contrast in the blended regions. Alas, no mirror-tiling, but useful for photo-source nontheless.http://www.redfieldp...essWorkshop.htm

Thanks for your suggestions. Genetica and Genetica 2 don't offer those types of seamlessness, but I am interested in implementing that sort of thing. We had considered some but not all of the types you mentioned above, so thanks for that--I'll modify our notes on the subject.

Atlas

Sorry for bringing back such an old post. Just wondering whether the four-way tiling has been implemented in the latest version of Genetica?

If you're interested I might be able to find the original script. I think it basically used this freeware Pizza Slice Mirror filter, combined with a bit of masking:http://btinternet.co...eran/simple/#ps

Sorry for bringing back such an old post. Just wondering whether the four-way tiling has been implemented in the latest version of Genetica?

I returned to this problem in a later year but found it was a little trickier than I had originally thought. My original thought was that each node would be taught to render itself with various seamless modes, allowing the overall mode to be changed at will so that the entire texture could be re-rendered for a different type of seamlessness. This approach would have the advantage of rendering the texture from the ground up for a certain seamless type without resulting to mirroring and chopping trickery.

I quickly found that this would be problematic for a large number of the nodes. The following illustration shows how Point Light, for example, doesn't really work with rotational symmetry since it changes the direction the light is coming from.

So my only idea at the moment is to create a filter that resynthesizes an input texture with the needed type of seamlessness. For example, I've created a filter that given this:

It will resynthesize the edges to support every type of seamlessness:

Here's the resulting texture pasted 4 types. The arrows were added to show how you can flip and rotate the texture every which way and seamlessness will be maintained.

I assume you're referring to the very last illustration on the page. Very interesting!

If you're interested I might be able to find the original script. I think it basically used this freeware Pizza Slice Mirror filter, combined with a bit of masking:http://btinternet.co...eran/simple/#ps

Unfortunately this filter leaves the edges of the texture looking weird when tiled, but I don't have any good ideas at the moment as to how it could be done better.

I found the 4-way-tiled edge needs to be very thin to minimize the Rorshach effect, like 1-2 pixels if possible. And it often needs hand-editing, to mask in more in some areas than in others, so for example a certain mirrored feature can be extended further into one corner than in the others.

It might be better if you break up the mask with a noise function, creating a rougher edge. Here's an example.

Original texture (it tiles in the traditional way)

Pizza-slice tiled

Left-right mask I used to composite the pizza-slice over the original

Top-bottom mask I used to composite another pizza-slice layer overtop

Result:

Result, offset halfway so we can see the seam better:

Result, mapped 4x on a plane in 3D, with each quadrant rotated 90 degrees from the others:

I don't think you can solve the lighting problem, unless you also mirrored the lighting itself, so each masked layer had its own light. Maybe?