Need a little help Understanding some 3D basics.

Started by TheBadger, March 09, 2013, 09:45:59 PM

Previous topic - Next topic

TheBadger

Hello,

Mostly this thread is about baking maps.

I have been unable to locate a source of information that fully (or even a little bit) explains 3D baking.
And in particular I don't understand how I can use in a TG2 workflow. There is almost nothing on any of the forums I use for information. And its really starting to feel like its something everyone knows, so no one talks about.

Here is what I do know: Baking is a way to apply high detail to a low polly object. Correct?

So how is baking different from displacement?

I understand how to apply a high detail reference (such as high detail maps in mud box) to a low polly object in maya.
But how do I transfer that information to TG2?

Or is baking just away to describe making a displacement map?

"Baking a map" to an object is or is not transferable? That is, if I set up an object as an obj in Maya, I should be able to open it in TG2 and see it like I see it in Maya?

Im just not sure if this is something I already know how to do, and just did not know what its called, or if its an entirely different process than what I have done so far.

Some guidance is most welcome!
It has been eaten.

gregtee

Baking a map generally refers to the process of rendering a texture onto the uv set if a piece of geo.   I've never heard anything with regards to actual displacement or with regards to modeling before. 
Supervisor, Computer Graphics
D I G I T A L  D O M A I N

TheBadger

Funny, I have mostly heard about it in the context of modeling, and only for terrains here in the forums.  :-[
It has been eaten.

cyphyr

I think software like ZBrush allows you do "bake" out a high resolution displacement/bump/normal map that can be applied to a low resolution model to add detail that would otherwise be impossible.
Richard
www.richardfraservfx.com
https://www.facebook.com/RichardFraserVFX/
/|\

Ryzen 9 5950X OC@4Ghz, 64Gb (TG4 benchmark 4:13)

Walli

that depends on what you want to bake. For example you can create a building with a proper UV map. To speed up the rendering later on, you could bake detailed lighting or ambient occlusion into the texture. So lighting/ambient occlusion would be part of the texture of this object.
In return later on when rendering the scene, you can get away with lower render settings, because you already baked in the detail before. This can save al ot of time on animations.

Another option is if you have a highly detailed geometry, which usually would be to heavy to render. There you can bake the details from the hires object, to a lowres object. The lowres object then would make use of normal maps (if you wnt to stay as lowpoly as possible), or a displacement map.

Basically you can bake alot of information into a texture, with all benefits and drawbacks.

TheBadger

Ahhhhhhhh :)

Ok, so this is starting to make some sense.

ok! Thanks guys, thanks Walli

Walli,
can you describe the basic process that you use (in general terms) to Bake two or more maps into a texture?
What differentiates baking from simply using opacity and or blending modes in photoshop to put multiple 2d layers into one image texture?
At what point in the process is something Baked, thereby making it a different thing than what the photoshop example describes?

And lastly, is "baking" (the term) just something people say to describe the process? Because I have note seen a "Bake" button in any of my software... It may be silly to ask this way, but I just want to be sure I am able to separate industry speak, from actual software functions... If that makes sense.

Thanks again 8)
It has been eaten.

Walli

again thats very different and often depends on your Software. Actually most 3D appliaction have something like Bake. And all work different ;-)

In many cases you can choose what kind of information you want to bake (lets say for example GLobal Illumination, direct light and shadow) and then you get three bitmaps. Which you then could belnd together, again depends on what you want to do with it.

There are also free standalone tools available, like that one: http://getsmak.com/


Oshyan

Badger, just to re-state from an absolute baseline perspective, the concept of "baking" is to take something that is procedural or otherwise calculated dynamically at run/render time, and turn it into something *static*, non-procedural. The result is generally more portable as well, i.e. exportable to other packages. But the important concept is that you take something dynamic and make it static, hence the "bake" terminology; you're "fixing" something (in the sense of "to make firm, stable, or stationary"). You lose the benefits of dynamic/procedural functions, but you gain portability, potential render time improvements, etc.

Baking can be done for many types of 3D elements, from procedural noise functions, to spline curves, to rendering calculations like Global Illumination, and it can be done in several ways, too. For example with simple displacement of a sphere from a procedural noise function, it could be called "baking" both to rasterize that noise function and turn it into an image map for displacement, *as well as* to calculate the final geometry at a given resolution and actually make the new object a "post-displaced" version, i.e. if you exported the geometry, it would have all the shapes and distortions that the displacement function created (and would be very high poly as a result, most likely).

The reason I am trying to clarify is that "baking" is really nothing like "simply using opacity and or blending modes in Photoshop to put multiple 2d layers into one image", so I suspected there was still some misunderstanding. Does that clear things up at all?

I realize there is still a lot missing in the explanation in terms of specific baking functions in various apps, what can/should be baked, why and when, but it's really a topic with somewhat broad scope, and also somewhat specific to each app. I hope, however, that once you understand the basic concept you can begin to intuit its value (or lack thereof) for your particular needs, and to identify the functions in the apps you use that equate to "baking", even if they're not called that. Off the top of my head, baking is basically useful for 3 major things in CG: cross-application data interchange (e.g. ZBrush displacement map baking), render speed improvements (e.g. bake a procedural texture to an image map so that the procedural function doesn't have to be calculated dynamically anymore, it's just a simple image look-up), and stabilizing procedural calculations (e.g. GI cache in TG2, or any other situation where you can perform a procedural calculation once and share or interpolate it across multiple frames or multiple systems making calculations). I may be missing some other uses, so others please jump in as-needed.

So, to answer some of your original questions, provided your target application supports the same material functions as Maya (e.g. displacement), and that your output formats (base geometry and image for displacement) are supported, then yes in theory the target application (or any arbitrary app) should render the object similar to Maya. In the case of TG, of course, you know that objects only render with displacement when Raytrace Objects is disabled, but other than that yes, a model with a baked displacement map (displacement baked to an image) should render similarly in TG2.

- Oshyan

TheBadger

Walli
Thanks for the link and the info. SMAK! is windows only, but I will look for a stand alone that I can use. I did find the "Bake" bottons in Maya, they were hidden in sub menus as I should have guessed :o  But I think using a stand alone apart from Maya's lunatic UI, will help me focus and learn. So thanks, its a good idea!
Also SMAK looks like a nice software. Its free and it looks like it works well. Also the tut video on the page you linked is pretty funny.

Oshyan,


Thanks for the great information! I need to spend some more time reading your post and trying things out. Its going to have to be hands on because I need to get Ulco's deer to work well out of mudbox ;D . This will be interesting.
It has been eaten.

TheBadger

#9
Oshyan,


Ok so I understand in principal what this is now, and all of the things you referred to. In practice however, I am still having a ton of difficulties.


My issue is that I must go from Mudbox to maya, and then to TG2. And while maya-mudbox automates the process (mostly), it uses normals in the baking. In fact the only instruction I can find about backing, nearly everything talks about normals. So Im still not sure how the steps go for the software Im using. Perhaps I can bake the normals down to a displacement map? Will work on it.


THe other issue is based on what you wrote. I will need to have RTO turned off in order to see the model (if I ever get the bake right) in TG anyway. Is that correct?.. The baked model would have to come in as a form of displacement, and I would have to have RTO off.


I may need to go for one of thees 3rd party baking softs walli mentioned after all.


Lastly, I could avoid baking down a sculpt by importing directly into TG.

I did get a test model directly from mudbox to TG (many millions of polygons, it opened and I could move around with no issues). I could see it as a wire frame (basically looked like a solid object :o ) but It would not render out. I know this has to do with the .obj I made in mudbox, I could not get the textures to attach to the file correctly.


Mudbox does output in FBX and that is easier to do then .obj. for this option I need to wait.

If anyone has some step by step instructions for getting a sculpt to TG2 from mudbox through maya, I would really love to hear em'

if anyone has anything to say, please do


P.S. I am starting to believe that everyone who makes software, is a sadist. ;)




It has been eaten.

Tangled-Universe

Quote from: TheBadger on March 28, 2013, 12:20:56 AM
P.S. I am starting to believe that everyone who makes software, is a sadist.  ;)

Ghehe definitely know what you mean there, but of course it has little to do with being a sadist.

I noticed lately in discussions on other boards that more and more users get tired of the Autodesk like UI and "ease" of use etc. of so many software packages, ZBrush included.
There's an increasing aggrevation about this and that's why packages like Modo are increasing in popularity at high rate.

If you look at the people behind Modo then you understand better why and how.
These people have >20 years experience in the VFX industry and know the workhorse's needs inside out, resulting in well designed tools and maximized ease of use.
These guys are users who make software and not engineers, like Autodesk dev.

Engineers should remain engineers and design tech, but NOT software, not its UI and not the way of working.

Two very good examples of this is at my work:

I sometimes work with a fluorescence microscope (Zeiss AxioVert 200) attached to a PC with software which would also be suitable for steering rockets or performing quantum mechanical experiments.
This technically amazing and beautiful microscope is made by engineers and techs, but unfortunately they also made this software where labels for filters and cameras are all labeled by their technical productname instead of "Monochrome camera" or "color camera".
No, they are labeled as something like "ICC3a NM2b". Ridiculous.

Then the other way around is medical equipment which needs to be handled by people with different levels of background and education plus that they need to be fool-proof because you don't want to damage the patient potentially.
It's designed from a pure end-user perspective with the need for safety.
There software is super-easy, straightforward, fool-proof, fast etc. etc.

This also explains, for me, Apple's success. For example.

Anyway, deviating now, sorry :)

Cheers,
Martin

TheBadger

#11
I would use modo, Martin.
I like what I have seen of it a lot, and some other soft too. But Autodesk in their wisdom, and seeing that people want to use other software, made all of their own software free to use and learn with.
If I had a bunch of cash to spare I would change over to specialized soft for each aspect of 3d work. But I can't right now. So I'm stuck fighting a difficult workflow. I really spend most of my time dealing with software issues rather than using it to produce work, and this is near infuriating.


But I'm not likely to quit. Eventually all will be clear and Ill get it done.


"This also explains, for me, Apple's success. For example."

Yeah. I wish they would do a 3d app like they did for final cut. Final cut is great, I like it as much or more than I liked avid when I was editing. One thing about apple is they take great care in making things to be accessible. And when they do a pro app, it really shows.
Although, with their consumer stuff, they can also dumb things down way to much. At any rate, I only have autodesk to work with right now... THANK HEAVEN FOR YOU GUYS AND THIS COMMNUNITY!!!
It has been eaten.

Oshyan

Apple didn't make Final Cut, and it used to be cross-platform. They bought the company that made it, then made it Mac-only, and then the only *major* revision they have since made to the software, Final Cut X, got major criticism from a majority of users of previous Final Cut versions. Apple is great at consumer-oriented software, their pro-oriented stuff is more hit and miss (software-wise). Aperture seems nice, other than that...

- Oshyan

TheBadger

^^Hmmm, did not know that. I guess maya was not originally autodesk too? At any rate, things are more complex then they need to be, it feels.
It has been eaten.

TheBadger

#14
Oh, Oshyan. I did want to say one thing more on this as broader point. TG can easily handle 10s of millions of polygons *very well*. And I am finding that TG is probably the best way to put my sculpts on display in a environmental context.


But as I read through the forums dedicated to sculpting Im not seeing to many mentions about TG. I can tell you for SURE, that TG handles millions of polygons better than Maya does. Actually even better than the sculpting programs them selves. (from the perspective of my mid level system)


And there is all of this talk about how to display the sculpts people make. They talk about tips and tricks and techniques to display their work. And all of this is in the context of the fact that no matter how good a sculpt looks in a program like Maya, it never looks as good as a pure (high poly) sculpt. Something is always lost, even if its hard to see.


But for me TG2 can solve a great deal of those issues. I mean I can literally populate a forest with sculpted trees! Try doing that in maya.


Now I know in most cases its ideal to get poly counts down to small numbers, thus this thread. But just in terms of showing off sculptures, TG2 could really solve a lot of peoples problems, I would guess.


Just saying.


It has been eaten.