Cycles - possible inconsistent texturing?

Hello artists,

Please take a look at the attached scene, I am having a few issues getting the texturing working as intended, however I’ve just started using cycles and texturing, so the fault is probably my own stupidity, but anyway. I have a certain scene, which contains minecraft scene, and two very simple textures as per this screenshot:


Note: the node view is for the STONE (Grey) textured object.

You will notice that the vertical sides of the “stone” object, the texture is all wrong, and is basically horizontal lines… what I’m after is the cycles equivalent of blender internal’s texture options of GLOBAL coordinate mapping, with cubic projection. Whats the simplest way to get this?

I have tried, on this second point, using OBJECT coordinates, with TEXTURE mapping, and resetting the scales to 1 in all directions, which almost works, however the side textures, whilst being correctly scaled, are rotated 90 degreens from what they need to be.

Whats the easiest method to get them correctly rotated?

Obviously I guess altering the mapping rotation settings would also rotate the top and bottom surfaces, and therefore be inadequate.

The only Solution that comes to mind would be going into edit mode, finding a way to select only the “side” faces. Making those into a separate object with its own texture, and then altering the nodes for that alone to be rotated.

However, I am hoping there might be a way that does not mean having duplicate textures and objects, as I am not a fan of excess data in any form.

FILE BELOW:
test.blend (996 KB)

I should also say as well, please dont direct my to any video tutorials! My internet is a phone and cannot handle the bandwidth!

The plot thickens… cycles is apparently physically rotating imported images without being told to!

See the following with the image attached and the node options at the bottom:

Basically the texture is mapped onto the cube correctly on all sides properly here… but its 90 degrees in the wrong direction. Altering any of the mapping rotation settings screws things up.

Is there a way to just rotate the image back how its supposed to be, and why has cycles done it in the first place?

Have anything against UVs?
I will say delete the mapping node and head to the 3d view select teh cubes. Edit mode > Select All > U > Smart UV unwrap.
Then in the UV image editor > select All > S then type in 16 and hit enter. Should be good enough.

Yeah im not a fan of UVs, because I need a quick technique that’ll work on objects with 10,000 faces or so. I dont have time to draw each faces UV map out, even at a mere 15 seconds per face, thats a very very long time :confused:

Is there not just a simple way of rotating the texture? (not the mapping coordinates)

To deal with image textures in Cycles you’d need UVs anyways. This is when i delete UVs you had in file and do UV - Reset.
There are 2 faces which are out of place for some reason - near 3d cursor. The rest seems normal to me…


Sorry can you explain in depth how to got them to be on the right way up I dont get UVs or really know what you did. I tried unwrapping them in edit mode, and then hitting UV reset but the side textures are still vertical for me…

Oh wait sorry, from looking at your nodes i understand now, however, yes I have just remembered why I cannot use UV’s. A lot of those extra faces will be decimated, like the tops of the surfaces will all be just one face. When you apply the decimate modifier, cycles becomes suddenly unable to deal with it.

Pass then. Nothing withstands decimation afaik. Even UVProject doesn’t look like help there.

That really is a shame, I can see cycles being useful, but until it can actually basically texture an object properly, guess i’ll have to stick with internal rendered. Which can accomplish the desired result in less than 30 seconds, even with decimation!

Well, after a bit of tinkering… you can say this is not what you want, idk… So what would be the proper textured look for the mesh like this in BI?

does this node help here?

you need 3 textures (the same but 3 nodes - mapped properly in the texture slot x,y,z) then you can rotate each axis individually

video

It doesnt really help but it raises a lot of questions!

Theres a lot of nodes there that you have which arent available in the “add node” menu, where did you get them from?

Also when i render your sample file, there inst a texture on the object, its just pure black.

The video doesnt help much because the guy has loaded a scene with the nodes already in, so again, I have no idea where they are from…

Very easy to do:

1 - start new scene (with the camera, box and light in it)
2 - Click on the cube (which maybe already has a material on it, if not just make one)
3 - go to the texture tab on the box (if you made a new material, you may need to also add a texture)

Texture settings:
TYPE = “Image file”
IMAGE = load in a tileable texture
(also turn off MIP MAP and INTERPOLATION in the “image sampling” section, for that “minecraft” look)

THE IMPORTANT STUFF (the Mapping section)
COORDINATES - Global
PROJECTION - Cube

Thats it, render and it will give you the textures the right way on!

Thanks for the answer!
However this is not much better concerning texture directions and if Global mapping is used you should not rotate object in 3d space. Might be irrelevant to Minecraft world but i remember seeing kind of hexagonal structures made.


You are of course right, this method will only work on objects which are never moved around in the 3D space, however any moving items / characteres can be independantly textured. The technique I needed was just something on for the 99% of a scene that doesnt move.

huh? whats missing?

my box mapping node is a node group if you want that node in another blend you need to “append” the node (shift+f1 -> box_mapping_node_nudelZ.blend -> nodetree -> Box Mapping)

Also when i render your sample file, there inst a texture on the object, its just pure black.

connect the textures (?)

heres your file with my box mapping node and each axis rotated 90 degrees


test_1.blend (251 KB)

Ok now im even more confused, when i click “add node > group” then i can see your box-mapping node there, but its not visible in my scene. Is this some sort of third party thing? Seems to me if it works it should probably be in standard blender!

to load the node do this in your blend :slight_smile:

but theres a simpler solution just rotate the texture 90 degrees in a 2d programm then it works

Hi,

I think that the problem is that the box projection of the image node is limited.
That is the projection of the box facing is performed (from the manual)
Projection Projection to use for mapping the textures. Flat will use the XY coordinates for mapping. Box will map the image to the 6 sides of a virtual box, based on the normal, using XY, YZ and XYZ coordinates depending on the side”
Which limits how the texture can be rotated and projected onto the object.
You can rotate the texture slightly, but I have not found a way to successfully swap the axes, for example so the box mapping considers the front face as the top of the mapping.
I emphasize normal in the description because I think that the image uses the default normal for the geometry and there is no input so this can be rotated so the geometry faces another direction.

So an alternative solution to those above is to rotate your scene so that the geometry aligns with the facing that the box projection expects.


This is your test scene just rotated so that the global axes are as shown in the little 3D view at the bottom.
On the blend you uploaded the viewport is showing local axes.

Best of luck

Martin

as an addition to Martins post -> simplest solution is to apply rotation (strg+a rotation)

Thank you, i’ll give this a go. Out of interest, where did this node come from? who made it? and is there any place which also has more custom nodes, in case any of those are actually usefull for me :slight_smile:

Additionally - I did consider both rotating my scene AND the individual textures, but I wanted a better solution… blender rotated the texture in the first place and it can darn well rotate it back as well!