PDA

View Full Version : static mesh with material from maya again



Den
11-13-2009, 03:16 AM
I wanted import some static meshes from maya , about 100 textures.
Why it is no material import in Unreal engine? It cannot be true, it is a complete nightmare!!!
I do not ask about automatic updates of models /textures here :mad:

maybe exist by side one exporter or importer to bring meshes in UDK without this big trouble?
It is teoretically possible to write one?
sure this few lines code can save lives.

hope somebody from epic can help us maya users here.

i cannot believe, really...unreal engine 3 :eek::eek::eek:

Brexer
11-13-2009, 03:22 AM
Its far from a few lines of code, or it would be in already.

If you wish, you could try making it, noone stopping you :)

And if your mesh have 100 textures, you might have totally other problems, i mean, even a character only have 2 or 3 normally..

Also, importing and setting up textures is a 1 time job, just save the pack for later use.

sueds
11-13-2009, 03:32 AM
I had a similar problem with a level but when you export it it end up having many texture. You could have done it with an fbx file for example but of course UE3 don't allow this type of media.

But it's true for a hyped engine it's a bit surprising.

Denny
11-13-2009, 04:00 AM
Tell me how the importer to UDK should understand how to render your materials? Unreal doesn't handle textures like other engines, it handles it as materials - shader instructions. To render a texture you need a material which is applied to the mesh.

So what exactly is the problem here?

Den
11-13-2009, 04:01 AM
I am sure that is few lines.
to use texture path and apply material at imported object is few lines in maya.
the Epic program is not customizable, not userfriendly that is the prob.

Brexer, open one level please. You see there is no 2-3 textures only.

I mean if somebody want to bring new content ins engine it is a trouble, again and again.

Epic please give us statement about!!!
maybe in UDK 5-10? We wait then..

Den
11-13-2009, 04:16 AM
Denny, the problem is that there is a **** to bring content in Unreal engine.

I am fan of the middleware too and believe that Epic can help us.

Sure, it is no technical problem. If Epic want they do it easy. we are in 2009.

ffejnosliw
11-13-2009, 04:26 AM
I'm sorry, but getting content from a 3D application into Unreal is probably the easiest process you will find among game engines.

Sure, you cannot just click export and it converts your materials from Maya into Unreal materials...but how could it? Maya's materials are custom to its architecture and are not meant to be evaluated or rendered in real-time. Plus, how does Unreal know how you want that material set up? How does it account for things you set up in Maya that don't even exist in Unreal?

The process is about as simple and straightforward as it could be: Export the mesh, import the mesh, import the texture(s), create the material, apply the material to the mesh. I don't know what more you could want within the realm of things that are actually possible and feasible.

Den
11-13-2009, 04:40 AM
ffejnosliw are you all crazy? Why you all try to undertake the problem?
import the texture(s), create the material(s), apply the material to the mesh.
100 materials or maybe 1000? want somebody do the job?
It should be done by program!!!!

it is not clear? try the unity then you know how it work.

Believe, it can be very, very easy done by Epic.
but if you all say: Oh how should Unreal handle it? then Epic do nothing, sure.

roxtar
11-13-2009, 04:57 AM
I've got the same opinion.
The way UDK handles imported meshes is very problematic. And 100 texturs on one object is not a problem at all. at least not in games, where you have got hand-made levels and terrain.
You are able to open up the ase files in ms editor and in there you can read the whole material names from max (maybe the same thing in maya) and even if i use a material, that has already been imported to UDK, the editor does not recognize that.
And this one really can't be a big problem.
In the ase file there is also the excact path to your file. so why can't udk just set up a basic material with only the given texture in the diffuse slot. that would help a lot.

ffejnosliw
11-13-2009, 05:07 AM
100 textures on one object is a serious problem. First of all, a material can only have 13 texture samples in it I believe. So that means you are looking at a minimum of what...7 materials applied to one mesh. So that means that mesh now requires a minimum of 7 draw calls in order to render it. Draw calls are slow because the render state has to be changed for each one. And this doesn't even take into account the amount of memory you will be eating up for those 100 textures for each mesh. 100 textures for a level maybe...for a mesh...no. You are doing something wrong if you need 100 textures for a single mesh. The vast majority of meshes use 1 material. That means at most 13 textures, but they usually do not even come close to using the maximum.

Just because you can use 100 textures on a single mesh does not mean you should. And Epic creating tools to enable you to would be a terrible idea as it would encourage people to use bad judgment and create bad habits. You should be trying to use as few of any resource as possible when doing game development, not the complete opposite.

Den
11-13-2009, 05:43 AM
ffejnosliw, Please post no offtop here.
I talked not about 100 textures in one mesh.
It is only one mesh in your level?
If you do not have to import something in Unreal open please Sanctuary level and check static meshes

roxtar
11-13-2009, 05:50 AM
I was not talking about normal objects. But when you take a big city house for example, it is easier to use several tileable textures instead of unwrapping the whole house so that it uses only one or two textures. Now imagine, you want to create a whole city with slightly different types of your houses. You will have to create these "baked" textures for every modified house. Don't tell me, that this is how it should be done. And if so, you've probably never made content for a roll playing game with great levels, citys, etc.

ffejnosliw
11-13-2009, 06:01 AM
One mesh in your level is an even worse idea as you will get no occlusion and every single poly will have to be lit and rendered each frame. A house or any building is the same way. It should be made up of modular pieces such as walls, doorways, etc. that you put together inside the editor in your map. each of those pieces should have one material, or maybe two at the most, applied to it.

This isn't automatic material creation, but UnrealEd will automatically assign the materials to the meshes if you set them up right and import them in the right order.

If we want the assignments to work automatically when we import the mesh, make sure to use texture names that are NOT identical to the file names, since these are not the final materials yet. For example, here we used the extension _raw.

Important update: UE3 codebases since November 29, 2004 have an import art path which uses the material names, not the raw bitmap names, from the ASE file for use with the automatic material matching in the unreal editor. If, for a material slot, there are no matching material name fields in the ASE, the importer falls back to using the bitmap filename field. A warning: early versions of this new code (December 2004) would collapse a material slot if no matching material is found in the editor for that slot.

IMPORTANT: It is the name of the Shading Groups (NOT the names of the Materials) in Maya which must match the names of the Materials in the Unreal Editor in order for automatic matching to occur.

Denny
11-13-2009, 07:00 AM
Den >> If you feel the 30 sec setup time to make a simple material is an issue for you I'm afraid you're way too stressed to work with game development. The content management system in Unreal is blazingly fast compared to other engines like Source and Unity. Also as ffejnosliw has said several times, whatever mesh you're trying to import with hundreds of materials on it must be the most badly optimized mesh ever in Unreal history.

Plastik
11-13-2009, 07:24 AM
As for me, something like this would be nice:

http://img197.imageshack.us/img197/4818/udkexporterfull.th.jpg (http://img197.imageshack.us/img197/4818/udkexporterfull.jpg)

:D

Den
11-13-2009, 07:48 AM
Denny>> Maybe my bad English prevent you and ffejnosliw to understand the problem?
i am Sorry if.

1. I talked not about one mesh with 100 textures.
To help you: imagine you have 100 meshes with 1 texture for every mesh in your Level.

2. I work for Game industry. Even in Wii one level can have tousend meshes and hundreds of textures.

3.I use Maya for modeling and have to bring objects and textures in UDK.

4. I talk not about object management inside Unreal Editor.
You mentioned Unity.
By saving Maya scene meshes are updated automatically inside Unity.
The same with Photoshop. And it is only one aspect of good integration.
Can you imagine HOW it helps to develop content???

I do not say UDK is bad and stupid.But to import textures manually, create materials,rename, apply to objects cost many time!!!!!

I wish only that Epic do simply material import with a mesh. HOPE it is clear yet?

so why can't udk just set up a basic material with only the given texture in the diffuse slot. that would help a lot.
full agree!

Denny
11-13-2009, 08:05 AM
I work in the industry too Den. Last day I made a full scene containing two static meshes with five material slots each. It took me about 6-8 hours to build the meshes and about 5 minutes to set up the material nodes and assign the material to the meshes.

I highly doubt the way you work now is even close to how you should work with Unreal. You make it sound as if your workload has been doubled because you don't get an automatic update when saving your file.

roxtar
11-13-2009, 09:08 AM
The ones that are trying to soft.pedal this issue. This way to import is not state of the art importing. In another project, the exporter in the 3d programme made the basics himself. There are many Engines out there, which are working completely different. And when you have to bring your levelmesh into the game, with different stone, grass, wood textures, then there is no other way, to have the editor set up the materials itself.
This auto material detection does not work with my installation of UDK...