Jump to content

Large Mesh vs High Quality Textures?


Syle Devin
 Share

You are about to reply to a thread that has been inactive for 4418 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts


Hoaghes Beaumont wrote:

"The problem is when I have a wood floor, say. One 1024 texture is going to be blurry; I need it to repeat."

This should actually be very easy to solve by laying out your UV´s correctly.

I am using 3ds max by the way but this goes for pretty much any 3d program.

Just stack the UV´s of the parts you want to have the same texture on top of eachother on your layout. The same is done lots of times, for instance if you have a jacket with two similar sleaves, or even have a symmetrical face that is mirrored left to right. Instead of laying out the entire object and painting the same texture twice, thus using precious texture space, you stack the mirrored parts on top of eachother and use the same texture for it. This is how you could tile a bowling alley with using a texture instead of a procedural map.

I hope I explained this somewhat clearly.

Some people stated ZBrush and using Zapplink for texture baking..In Zbrush you can actually render out the baked material straight to your diffuse texture and save it out, and you can allso use Multi Map exporter (or something, under plugins) and bake out all your maps like Ambient Occlusion, specular, diffuse, etc. in one pass and then blend em together in photoshop.

In 3ds max baking shadows into a texture is as simple as setting up your lighting, selecting your object and hitting render to texture, you can then select exactly which passes you want to bake.

Cheers and good luck with your bowling alley
;)

The concept of stacking UVs that you described as well as ohter is just not registering with me.  I thought a model / mesh can ONLY have 1 UV so how can you point a left arm segment of a UV map overtop of the Right arm and use the same texture map.  I undeerstand how this would make sense for symetrical models.  I just can visualize this Stacking concept.  Are there video tutorials on how this can be done?  I know Zbrush - but is this UV stacking happening in the 3D modeling tool, or is this a manipulation in Photoshop, or is this stacking happening in SL?

As for Zbrush rendering a Material manipulated texture, I had once tried rendering the different maps out and blending them into each other in Photoshop and the results were OK.  It seemed to work much most effectively in ZapLink (although with a bit mroe work and sometimes with weird reflection anomalies if you dont mask out the area causing the problem) but maybe I am missing the workflow you were suggesting.  I have installed the Multi-Map plugin but I have not tried it yet.  I might have to play with this more.

Thanks for the ideas and thanks in advance if there is anyway you can explain this Stacked UV concept better.

Link to comment
Share on other sites


Hoaghes Beaumont wrote:

"The problem is when I have a wood floor, say. One 1024 texture is going to be blurry; I need it to repeat."

This should actually be very easy to solve by laying out your UV´s correctly.

I am using 3ds max by the way but this goes for pretty much any 3d program.

Just stack the UV´s of the parts you want to have the same texture on top of eachother on your layout. The same is done lots of times, for instance if you have a jacket with two similar sleaves, or even have a symmetrical face that is mirrored left to right. Instead of laying out the entire object and painting the same texture twice, thus using precious texture space, you stack the mirrored parts on top of eachother and use the same texture for it. This is how you could tile a bowling alley with using a texture instead of a procedural map.

I hope I explained this somewhat clearly.

Some people stated ZBrush and using Zapplink for texture baking..In Zbrush you can actually render out the baked material straight to your diffuse texture and save it out, and you can allso use Multi Map exporter (or something, under plugins) and bake out all your maps like Ambient Occlusion, specular, diffuse, etc. in one pass and then blend em together in photoshop.

In 3ds max baking shadows into a texture is as simple as setting up your lighting, selecting your object and hitting render to texture, you can then select exactly which passes you want to bake.

Cheers and good luck with your bowling alley
;)

Thanks Hoages but I don't want each section of the floor to have the same texture --otherwise I could just apply it in SL, if I understand you correctly.

(Also it was someone else making the bowling alley - I want to make a baked floor texture.)

 

Link to comment
Share on other sites

Yes this is exactly what I have been trying to do. Thanks for the tutorial. I had gotten close to figuring it out but the tutorial helped. Though now I have a new problem. When I try and upload SL is telling me that the mesh failed to upload because "the texture is empty" I know none of the textures in Blender are empty so what does it mean for SL to tell me that?

Link to comment
Share on other sites


Masami Kuramoto wrote:

Light maps, even if implemented the elegant way through multitexture pipelines, are a workaround that may conflict with the rendering engine's own dynamic shadows and screen space ambient occlusion.

Generally speaking, a (well designed) lightmap will not conflict with SSAO.  In most cases, the two effects can enhance each other, rather than interfere with each other.

You're right to be concerned about dynamic shadows, though.  Even the best designed lightmaps are, by definition, static, and cannot respond dynamically to moving lights. 

Good engines typically reconcile this by distance roll-off.  Objects close to the camera are lit dynamically, while those further away switch over to their lightmaps.  On ultra high end machines, the distance factor can be huge, and the lightmaps barely have to be employed at all.  On lower end machines, the radius would be set much smaller, so more lightmapping would be in play.  If dynamic lighting is not enabled at all, then lightmaps govern fully.

Link to comment
Share on other sites


Toysoldier Thor wrote:

The concept of stacking UVs that you described as well as ohter is just not registering with me.

Mind if I jump in on this?  I'm not quite sure what exactly about the concept isn't registering with you, so let me try to explain from the beginning, if I can.  Some of this may already clear to you.  I'm not sure what you do and don't yet understand yet, so I'll try to be thorough. :)

The UV canvas is an expression of texture coordiantes. Diagramming polygons on the canvas is a method for visually expressing which particular coordinates are assigned to each polygon.  If two or more polygons are put in the same place on the canvas, they share the same texture coordinates, which means they'll be textured identically to each other (assuming they all have the same material on them, of course). 

For something like a plank floor, overlapping the UV's like this would be one way to apply a singular wood texture to all the planks.  This is not a good setup for baking, though, so I found it a little surprising that it was suggested in this context.

SL prims are an easy example of stacked UV's.  All sides of a cube, for example, are UV'ed identically, just a rectangle that covers the whole canvas.  Apply a texture to the cube, and that texture appears on each side.  If the sides weren't all UV'ed the same way, that wouldn't happen.

Optionally, you can put different textures on different sides, of course.  But that doesn't change the UV'ing in any way.  When you do that, you're just utlizing different materials on each side.  The wording in the in-world editor is too over-simplified to put it in those terms, but that's what's actually going on.

 


Toysoldier Thor wrote:

I thought a model / mesh can ONLY have 1 UV so how can you point a left arm segment of a UV map overtop of the Right arm and use the same texture map. 

You see this on the SL avatar.  The reason there appears to be only one arm on the template is just because both arms happen to be in the same place.  And again, because they're in the same place on the canvas, they share the same texturing.  Whatever you paint on one arm, you also get on the other.

 


Toysoldier Thor wrote:

I just can visualize this Stacking concept.  Are there video tutorials on how this can be done? 

I don't have a video, but here's a quick image, which may help.  

UVOverlapExample.jpg

 

The above is very simplisic example, obviously.  Stacking the UV's is just a way of repeating the texture.  There are more options than just a straight repeat, though.  For example, if we rotate one of the quads 90 degrees on the canvas, the textured model now looks like this:

UVOverlapExample2

 

The model itself is still just the same plane in all of the above examples.  The geometry did not changed at all. Only the UV layout changed.

 

On more complex models, more complex effects can be acheived with just a single texture.

 


Toysoldier Thor wrote:

know Zbrush - but is this UV stacking happening in the 3D modeling tool, or is this a manipulation in Photoshop, or is this stacking happening in SL?

It's done in a 3D modeling program.  Photoshop can't edit UV's, and neither can SL.  I don't know Zbush well enough to know what options it has for this.  I'd be surprised if it didn't have the capability, though.

 

Does that help clear things up?

Link to comment
Share on other sites

Thank Chosen,

This does help confirm that somehow a UV map can be manipulated.  In Zbrush when I create a UV map of a human body, by default I see a single island UV on the map with both arms and legs extending from this one island on the map.  So I understand you are saying that I can somehow manipulate this UV map to drag the location of the left arm of that UV map on top of where the right arm is on this UV map.

The problem I have now is trying to figure out how in Zbrush one would manipulate the actual generated UV map.

Its not a skill I manditorily must know as I currently use the brute force - yet simple - process of simetrical painting of the entire models I have worked on so far.  But it sounds like this technique of manipulating a UV map to do things like you say might come in handy in the future.

I just dont know how this happens in Zbrush or even what Zbrush would call the process.

Link to comment
Share on other sites

What was confusing in the thread of Stacked UV maps was that I got the impression it was being suggested that you can stack many UV MAPS onto a model and I thought there was only allowed 1 UV MAP for a single model.

What is actually being stacked is not the MAPS but areas, coordinates, islands on a single map.

Link to comment
Share on other sites

The way to view it is to consider the UV map area (which may be a tile of 1024x1024 pixels) as a viewport onto up to 8 different maps – one per material for a single mesh.

Here is a picture of the combined maps in the 1024x1024 viewport for a model that has 7 different maps with corresponding materials. 

combined uv maps

 

With the corresponding map for the part of the mesh that will receive the eyes texture (material). This map becomes visible and selected for modification when selecting the material that has been assigned to it. 

 

eyes uv map

 

Depending on your software, you will be able to actively work with different UV maps for different parts of your single mesh model. Exactly how this is done in zbrush I have never bothered to find out as it works brilliantly in Cheetah once you have wrapped your head around the concept. 

Link to comment
Share on other sites


Toysoldier Thor wrote:

What was confusing in the thread of Stacked UV maps was that I got the impression it was being suggested that you can stack many UV MAPS onto a model and I thought there was only allowed 1 UV MAP for a single model.

What is actually being stacked is not the MAPS but areas, coordinates, islands on a single map.

We actually discussed both of these things.  Where the term "stacking" was used, I interpreted that to mean the overlapping of multiple UV islands in a single UV map, as I described in my previous post.  However, in my earlier responses to Drongle and Pam, I talked about applying multiple UV maps to a single model.  Any model can have any number of UV maps.

It sounds like you're a little unclear on the concept of multiple UV maps.  If it helps, think of it like multiple channels in a Photoshop image.  Each channel governs some property of the image, pixel by pixel.  Thus redness, blueness, greenness, opacity, etc., can each be independently controlled.  In similar fashion, multiple UV maps can control the ways in which all kinds of different properties are mapped to a model's surface.

Again, I don't know what tools Zbrush does or doesn't have for any of this.

 


Toysoldier Thor wrote:

So I understand you are saying that I can somehow manipulate this UV map to drag the location of the left arm of that UV map on top of where the right arm is on this UV map.

Correct.  In a modeling program like Maya, Max, Blender, etc., this is super easy to do.  You can literally just select the UV's on the canvs, and drag them around any which way you want. I don't know if Zbrush grants you that kind of ability or not.  I'm starting to think maybe it doesn't.

 


Toysoldier Thor wrote:

The problem I have now is trying to figure out how in Zbrush one would manipulate the actual generated UV map.

From thumbing through the Zbrush help docs just now, it seems the focus is primarily on automatic unwrapping.  I don't see any references to manual editing. It's possible that it's just not an option.

When I said earlier that I'd be surprised if Zbrush couldn't do it, I should have thought a little more carefully before I spoke.  Sculpting programs are meant to be used in conjunction with modeling programs.  Mudbox, which is Autodesk's answer to Zbrush, has the same limitation.  It can automatically unwrap a model, but it doesn't have tools for manual UV editing.  It is expected that you'll UV your model in Maya or Max before your bring it into Mudbox for sculptural enhancements, texture painting, etc.  I'm guessing the same kind of work flow is expected with Zbrush.

Link to comment
Share on other sites

Pamela Galli said: Soooo -- no one has any ideas about how to texture a large floor to incorporate baked shadows?

----------------------------

Pamela: I've been experimenting lately with "faked" AO (ambient occlusion) shadow effects, via usage of the same texture space as the original base image. My reasoning is that I prefer to avoid shadow overlays as much as possible with main surface areas - to avoid that flickering effect that often happens, plus it will allow smaller objects WITH shadow planes to sit atop of these surfaces without "alpha fighting".

I've included an example image below, explaining my method. This technique, when used over large surface areas, tends to work best with a tile pattern - it just makes it easier to hide the UV joins. However, with a bit of imaginative work, it would be possible to create non-tile patterns, although it would obviously require a lot more work to get seamless results.
In Photoshop (or whichever program you prefer), I create a grid pattern - in this case, a 10x10 grid. I use this to create the "grout" setup. In a separate, underlying layer, I create the base texture (stone in this case), using the grid to select random tile segments to rotate, adjust tint etc - to randomise it a bit. Using a multiply layer on top, I simply used a few gradient fills to create the faked AO shadows in all the combinations I would need (wall sides, inner corner and outer corner).
For UV mapping it takes a bit of work, but it's fairly simple (being a flat plane mesh). The mesh floor in this example was designed to MATCH the pre-made gridded floor texture. During the mesh construction, I divided the floor up to match the grout lines - the outer edges where the faked AO is, the mesh has seams running down the equivalent grout lines. Each corner piece is isolated, so I can use the single relevant texture AO corner tile (inner or outer). The main floor spaces (and sections of the AO edges) I divided into segments - generally in multiples of 6x6 tiles for the main floor, and between 5x1 and 7x1 tiles for AO edges (depending on wall length) - so I could randomise the tiling and avoid obvious texture repetition. The UV seams were adjusted to suit the texture, and the UV islands were mixed (randomised locations in the UV space, rotated, flipped etc) to achieve the final result.
The end result is fairly effective - not true ambient occlusion, of course, but a reasonable representation of it. The texture (1000 pixels x 1000 pixels) is on a ratio of 100 pixels per 1 metre inworld (each tile is 1m x 1m), so it remains nice and sharp in comparison to AVs standing on the floor mesh. The extra geometry needed to allow the effect isn't overly costly - this mesh's floor area inworld is about 22.5m x 30m (bounding box area), yet its Land Impact was barely 1 from memory (physics plane included, and using aggressive LODs (since the room where this is used will be hidden from outside view). For the visual result and efficient texture usage, I think the Land Impact cost is quite acceptable in most cases, dependent on LOD techniques used (I have reused this texture in many rooms in the same build, all with different shapes and sizes of floor area).

Hopefully this example might give you ideas with your workflow, Pamela. :matte-motes-smile:

Tiling Tutorial.png

  • Like 1
Link to comment
Share on other sites


Chosen Few wrote:


From thumbing through the Zbrush help docs just now, it seems the focus is primarily on automatic unwrapping.  I don't see any references to manual editing. It's possible that it's just not an option.

 

As far as I have been able to find out UV Master in Zbrush is quite good at unwrapping a sculpted model and placing the seams where they best fit, but I can't see that you can manipulate the UV map as I can for instance in Cheetah 3D both in terms of stacking, resizing and placement on the UV canvas. I also have not found I can use it actively to make quick selections of vertices when modeling in Zbrush. 

I believe you are right that Zbrush assumes UV manipulation must be done in an external modeller or a dedicated UV mapper application. 

Link to comment
Share on other sites

Thanks very much, Maeve -- I had planned to experiment with something almost exactly like what you laid out -- now I can see that with tile, at least, it will work nicely. I would even like to see if I could take it further and see if I could incorporate, say, light coming from windows, etc. -- that might involve actual math or something so maybe not :-)  And the holy grail would be would floors, which most of my current houses have. Wood is just warmer than tile.

Link to comment
Share on other sites

Yes, I can and do bake shadows, so to speak, into my house floor in Blender. But ideally I would like to have a wood plank floor (I suppose parquet might have to do). I know how to make a nice looking baked wood floor texture in Blender -- but if it is one texture, when applied in SL it will be blurry because it will have to stretch too much to cover a whole floor.

 

 

 

Link to comment
Share on other sites

thats why your concept up UV stacking didnt make sense to me since i never read nor came across any functions or tools in Zbrush or UVmaster in adjust the map that was created.  But I will ask the Zbrush GCosity group if they know how its done.

Again, right now its not a feature I need but its always good to know what potentially can and cant be done for future reference.

Link to comment
Share on other sites

I guess you could do this with baked ao too - just do some approrpiate baking on a suitable model to get the generic parts you need, and then piece them together on photoshop or whatever to achieve the same sort of result. That way might be easier for more  complex structures. In general, you can exploit any symmetry and/or repetition in your build, with the appropriately stacked UV "maps" to use the available area better and increase effective resolution.

Link to comment
Share on other sites

Pamela: In regards to wooden flooring, the method I described should (in theory) be able to handle it, with a little bit of creative compromise.
I would suggest say, one texture (and material) for parquetry tiling around sections of floor where ambient occlusion shadows would be needed (utilising a faked shadow effect on the relevant edges). This parquetry texture could be repeated without it looking too obvious, since by nature it is designed to tile repetitively in RL.
For the main flooring areas of the mesh, I would separate that into a different material space - which can hold an entirely different wooden flooring texture. This would preferably be a seamless texture (both horizontally and vertically). In this material zone of the mesh, inworld via the SL texture tools (build menu) you could repeat the wooden floor texture as required to fill the space and keep the image nice and sharp. Due to this being a separate material, the repeats won't affect the parquetry tiling around the perimeters, thus preserving the ambient occlusion shadow. So BOTH the parquetry tiling (with shadows) AND the main wooden sections of floor will be sharply defined.
For your proposed light effects... I think a separate mesh overlay would do the trick (possibly in the same mesh object, separated on another material). You could create a series of simple mesh rectangular shapes, with a simple bright colour (or texture with alpha) combined with glow and transparency to get your desired lighting effects.

Not the only way necessarily to achieve the result - just the method I would utilise.

I hope this helps a little for you. :matte-motes-smile:

  • Like 1
Link to comment
Share on other sites

Drongle: Yah, I would use proper baked ambient occlusion for complex geometry, definitely. However, in my current project, where I am creating simplistic mesh modules to combine into a much larger, complex structure, I personally find it quicker to fake the shadowing inside of Photoshop (just my own preference).

The concept I am working on (which I mentioned in a different thread a while back) involves creating an inventory of simplistic, modular mesh shapes (low triangle count), designed to be pre-UV mapped and utilising combinations of texture segments to mix up their appearance. The texture sets are heavily packed with a variety of UV-texture pieces (with texture variations for each piece), all with this Photoshop shadow effect, to try and give a nice consistent ambient occlusion effect throughout. Thus far, it's working nicely - with a total texture palette of about a dozen 1024x1024 images (slightly more than desired, but still acceptable for performance), I'm managing to create a large, sprawling structure via repeated usage of mesh modules, without the dreaded obvious texture tiling. The repeated textures are still there, of course, but the structure overall retains a nice aesthetic, giving the illusion of more detail than is really there.

Will post some screenshots when I have something ready. :matte-motes-smile:

Link to comment
Share on other sites

You could create a uv mesh and repeat the floor texture a couple of times. If your using blender there is also a way to repeat a texture without having it be a uv mesh. Though you would need to bake it as a uv mesh to have the shadow in sl of course.

Unless it still then is blurry or low quality , such as my problem, then there is nothing I can say there. It is a give and take that you have to do with mesh so you can have the best of both worlds.

Though you could split your floor mesh into different parts and have a seperate texture map for each section. That way you would have more than one texture covering your whole floor.

 

Link to comment
Share on other sites


Maeve Balfour wrote:

Pamela
: In regards to wooden flooring, the method I described should (in theory) be able to handle it, with a little bit of creative compromise.

I would suggest say, one texture (and material) for parquetry tiling around sections of floor where ambient occlusion shadows would be needed (utilising a faked shadow effect on the relevant edges). This parquetry texture could be repeated without it looking too obvious, since by nature it is designed to tile repetitively in RL.

For the main flooring areas of the mesh, I would separate that into a different material space - which can hold an entirely different wooden flooring texture. This would preferably be a seamless texture (both horizontally and vertically). In this material zone of the mesh, inworld via the SL texture tools (build menu) you could repeat the wooden floor texture as required to fill the space and keep the image nice and sharp. Due to this being a separate material, the repeats won't affect the parquetry tiling around the perimeters, thus preserving the ambient occlusion shadow. So BOTH the parquetry tiling (with shadows) AND the main wooden sections of floor will be sharply defined.

For your proposed light effects... I think a separate mesh overlay would do the trick (possibly in the same mesh object, separated on another material). You could create a series of simple mesh rectangular shapes, with a simple bright colour (or texture with alpha) combined with glow and transparency to get your desired lighting effects.

Not the only way necessarily to achieve the result - just the method I would utilise.

I hope this helps a little for you. :matte-motes-smile:

Oh my, that is very clever indeed Maeve! Thank you! I will give that a try.

 

It does not enable me to recreate a whole floor with shading, but maybe I can come up with some kind of procedural thing for some floors.

 

 

 

 

Link to comment
Share on other sites


Syle Devin wrote:

You could create a uv mesh and repeat the floor texture a couple of times. If your using blender there is also a way to repeat a texture without having it be a uv mesh. Though you would need to bake it as a uv mesh to have the shadow in sl of course.

Unless it still then is blurry or low quality , such as my problem, then there is nothing I can say there. It is a give and take that you have to do with mesh so you can have the best of both worlds.

Though you could split your floor mesh into different parts and have a seperate texture map for each section. That way you would have more than one texture covering your whole floor.

 

Yes, that is what I want to do; my question is whether there is a way to do it and have the baked shading as well, like on this floor:

 

house shadow floor_001.png

Link to comment
Share on other sites

Yes there is, do you use blender? Someone actually posted a tutorial in this thread that made me understand how and maybe it could be of help to you also.

 

This tutorial is for if your floor is all one mesh you want to have multiple textures on selected faces.

  http://blog.machinimatrix.org/from-uv-map-to-multiple-textures/

Summary: if you already know UV mapping

choose faces you want to unwrap and unwrap them to a new image

create a new material

create new texture for that material

set texture to the uv map

During that process it might look like faces are overlapping but they wont render that way. The faces look like they overlap but they are mapped to different textures so when you render you have each texture seperately.

 

If you have any questions on that process feel free to ask. I have spent all day figuring it out and have come across a lot of errors I managed to fix for myself. I do not mind helping if you come across them to.

 

 

Link to comment
Share on other sites

Well, you are touching the basics of texturing here, and especially texture mapping 3d models.

You know a model is basically constructed of verts, those verts connect to make faces, most commonly in the form of quads or triangles.

Just like your poly model is build up of faces, so is your uvw map, it is basically your entire polygon model layed out flat.

Now most models have some form of repetition, like your bowling alley has repetition along the length of the track, were the wood texture would be repeated, or a shirt with buttons incorporated would have the left and right sleeve mirrors of eachother, or all the buttons repeat.

When you layout your uvw´s, you are basically solving a puzzle. Which part of my model should receive which part of the texture. You can stack them on top of eachother, mirror them and stack them on top of eachother. Lots of options.

I am at my work now but tonight when I get home I will put together a little tutorial with pictures that shows how I did this for a jacket model. I am using 3ds max though and every 3d package is different.

Unwrapping in Zbrush is a whole different ballgame alltogether. You either do it by masking and drawing where you want the seam to be, or by some form of automatic unwrap. Most professionals would not use Zbrush to unwrap their model unless its for previz. You just don´t have enough direct control like in other 3d packages.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4418 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...