Question about textures in imported fbx models

   57352   32   0
User Avatar
Member
37 posts
Joined: April 2008
Offline
Ok, this is how far I've gotten:

There are still many things to improve and learn, but I'm glad you guys pointed me into the proper direction

@Steven: how do you enable AO rendering?

regards,
Alvaro
User Avatar
Member
1634 posts
Joined: July 2005
Offline
Hi,

Please download the file here [pointy.tv].

The file is already set up to render with Ambient Occlusion which you enable with the VEX Global Illumination shader. Also, I added Facet SOPs to each object to recompute their normals and also cusp them.

I'll post more information another time.

Thanks for sharing the scene!

Cheers!
steven
User Avatar
Member
37 posts
Joined: April 2008
Offline
Great! New stuff to learn from

Thanks to you for the scene. Downloading immediately. Hope to see more tips and any other info you want to share on this regard

I'll try to upload another architectural scene soon so we can keep on testing stuff.

Regards,

Alvaro
User Avatar
Member
37 posts
Joined: April 2008
Offline
Wow! Impressive!

How did you create the GI light Steven? It's such a complex node! :shock: :shock:
Is it a preset?
Also, why did you set all of the material features in the OGL section? And not as in the screenshots I posted above? What's the difference and advantage of the materials you used?

Where can I check how you added the Facet SOPS for normal calculation? I just noticed that when I select some of the objects they're highlighted in red and not the usual yellow. Are these the ones with normals checked?

Your textures are set to your absolute path (C:\steven\downloads\etc….) can they be set in a relative way so that they find the textures in the same folder where you place the .hip or .hipnc file? (was my file setup the same way?)
and finally, You created 2 render nodes; PBR and Mantra, can HD render both or will it have some limitations with one of them?

sorry for so many questions, but your scene was an information quake for the things I was beginning to understand!!! hehehehe

regards,

Alvaro
User Avatar
Member
1634 posts
Joined: July 2005
Offline
Hi Alvaro,
afecelis
Wow! Impressive!

How did you create the GI light Steven? It's such a complex node! :shock: :shock:
Is it a preset?
I didn't create the GI light. I used a Light Template Object which allows me to assign the VEX Global Illumination shader found under SHOPs.

Also, why did you set all of the material features in the OGL section? And not as in the screenshots I posted above? What's the difference and advantage of the materials you used?
I'm not sure I understand you completely here. I used some hscript commands to change all of the material parameters for the test. I don't think I changed any material.

Where can I check how you added the Facet SOPS for normal calculation? I just noticed that when I select some of the objects they're highlighted in red and not the usual yellow. Are these the ones with normals checked?
If you go into each object, I added a Facet SOP to the File SOP which contains the geometry. You can switch between the SOPs to see the difference. This is also important for Ambient Occlusion or rendering with PBR.

I'm not sure what do you mean by “highlighted in red”? I might have seen something similar but can you post a screenshot?

Your textures are set to your absolute path (C:\steven\downloads\etc….) can they be set in a relative way so that they find the textures in the same folder where you place the .hip or .hipnc file? (was my file setup the same way?)
I believe the FBX Import searches for the image files & set the path. Maybe there should be a RFE to set a relative path instead.

To change the absolute path to a relative path (in the same directoryof the hip file), you can open the Textport (Alt+Shift+t) or Windows menu > Hscript Textport and do the following:
opchange -i c:\/steven\/downloads\/interior \$HIP
$HIP is a variable that contains the path to the hip file. Do echo $HIP in the textport to see what I mean.

and finally, You created 2 render nodes; PBR and Mantra, can HD render both or will it have some limitations with one of them?
HD will render with both ROPs (Render OPs) without limitations up to a resolution of 1920x1080.

sorry for so many questions, but your scene was an information quake for the things I was beginning to understand!!! hehehehe
No apologies please. I should apologise for not providing more information in the first place.

I'll try to get to your other questions soon.

Cheers!
steven
User Avatar
Member
350 posts
Joined: Jan. 2008
Offline
Hi Alvaro,

This is going to be an accumulated post to answer those questions I feel I have enough knowledge to answer.
afecelis
btw. Could you upload a render of your material-corrected scene?
Sorry for not saying this earlier, but I didn't go and convert every material in the scene. I've simply looked at one of them to see what was wrong, and let you know why you were seeing white/grey surfaces. It is also possible that you could change something in Blender to make the file export properly.

afecelis
When you say “set emmisive to zero” do you mean the emmision multiplier value? Same with diffuse color to 1, do you mean the diffuse multiplier?
For emissive, I really meant either/or. The both get multiplied to together in the end anyway, so whether you set the colour or the multiplier does not matter (in this case). For diffuse, though, the multiplier controls overall diffuse contribution, which includes texture colour, so you would probably want diffuse colour at (0,0,0) and diffuse coefficient at 1.0 (or something like this; the point is, when diffuse is zero, all of diffuse contribution sources, including texture colour, get multiplied by zero).

afecelis
But then I shall remove the materials embedded in the FBX's “materials” node, prior to assigning the new shaders, right? Or will they be automatically removed when assigning the new materials?
Let me first clarify the distinction between materials and shaders: materials in Houdini contain one or more shaders, such as a surface shader or a displacement shader. Note that after import, each FBX object references an entire material.

So you have two options: you can either replace entire materials (in which case you'll have to make sure that they're named exactly the same as the material node being replaced, otherwise you'll have to change references by hand), or you could simply replace individual surface shaders within each material, in which case no other changes will be necessary.

afecelis
Your textures are set to your absolute path (C:\steven\downloads\etc….) can they be set in a relative way so that they find the textures in the same folder where you place the .hip or .hipnc file? (was my file setup the same way?)
FBX import currently sets only absolute paths for textures at import time. I can see why this is inconvenient, and I'll try to change the importer to set relative paths as soon as possible.
Oleg Samus
Software Developer
Side Effects Software Inc.
User Avatar
Member
1634 posts
Joined: July 2005
Offline
Hi Oleg,
oleg
afecelis
Your textures are set to your absolute path (C:\steven\downloads\etc….) can they be set in a relative way so that they find the textures in the same folder where you place the .hip or .hipnc file? (was my file setup the same way?)
FBX import currently sets only absolute paths for textures at import time. I can see why this is inconvenient, and I'll try to change the importer to set relative paths as soon as possible.
This will be great! Thanks!

Cheers!
steven
User Avatar
Member
37 posts
Joined: April 2008
Offline
Nice! Thanks a lot Oleg for the explanations and the good news. I shall experiment a bit more to understand the whole material-shader concept. Houdini is so well-structured that forces you to think in an organized way in every aspect of 3d creation, and I think that's great! On to more tests.

Steven: thanks also for all your help and support (and patience). I feel very motivated when I see the level of experience and knowledge of the tool you got with Houdini. Your guidance and Oleg's care with us newbies make you feel welcome and comfortable here.

thanks a lot guys!

regards,
Alvaro

PS. Oleg: I shall also digg in the blender forums to see what's going on with the FBX exporter and if there's a “request-suggestion” forum in order to improve its compatibility.
User Avatar
Member
37 posts
Joined: April 2008
Offline
@Oleg: I already found out who the developer of the exporter is. He's also very kind and supportive and one of the main script developers for blender. From what I read in the forums, it seems like it's one of blender's newest strengths (the FBX exporter), and it's doing a great job integrating blender with other 3d packages, however, I'm sure he'd be interested to hear about the things we've discussed here.
Could you please help me by summarizing the most important points you feel that could be improved (based on the experience with the file we tested on this post) for the export process from blender?

best regards,
Alvaro
User Avatar
Member
350 posts
Joined: Jan. 2008
Offline
Hi Alvaro,
afecelis
Could you please help me by summarizing the most important points you feel that could be improved (based on the experience with the file we tested on this post) for the export process from blender?
Well, there's really only two items that may be going wrong on Blender's side of things:

1) It seems that the FBX diffuse factor and the FBX emissive factor are getting swapped on export from Blenderl; at the very least, diffuse coefficient gets set to 0. However, before blaming the FBX exporter in Blender, could you make sure that in your original Blender scene, the leaves material actually has any diffuse contribution? If it does, that means the exporter is mangling something; if it doesn't, that means that the problem might be in your original material setup in Blender.

2) The alpha blending values on textures seem to be set wrong, often to values like 3 or 5, while generally alpha value should be in the range . Here's a relevant snippet from the FBX file you gave me:

Texture: “Texture::plant.jpg”, “TextureVideoClip” {
Type: “TextureVideoClip”

Property: “Texture alpha”, “Number”, “A+”,5

}
Oleg Samus
Software Developer
Side Effects Software Inc.
User Avatar
Member
37 posts
Joined: April 2008
Offline
Great, thanks Oleg. I'll make sure about your points in my blender file. I think I know what's happening. The leaves got no bitmap added as a UV texture, they only have a color in their diffuse channel, no specular values, it's just a diffuse material with green. So this is the color that's showing up ok in Houdini. However, the other materials (the ones that are overly bright in Houdini) all have bitmaps in their UV channel and are unwrapped meshes. In blender (to get proper renders in external render engines like indigo, kerkythea or yafray) they recommend that when using bitmapped materials instead of native shaders it's better to set the diffuse color to white (as a way of making it neutral) so that the bitmap info prevails and doesn't get tinted by the color in the diffuse channel. So I guess this “white” is being translated into the excessive values we're getting in Houdini. I'll retake the interior scene and play around with blender values and export to FBX. I think it might only be a matter of adjusting the materials in blender prior to exporting the scene to FBX.

will report back soon.

regards,
Alvaro
User Avatar
Member
350 posts
Joined: Jan. 2008
Offline
stevenong
oleg
FBX import currently sets only absolute paths for textures at import time. I can see why this is inconvenient, and I'll try to change the importer to set relative paths as soon as possible.
This will be great! Thanks!
As of 9.1.244 (tomorrow's build), FBX importer supports relative paths using $HIP. Note that if you're merging the FBX file with an existing scene, the importer will attempt to make paths relative to the location of the current .hip file; if you're replacing the scene entirely, the paths will be made relative to the location of the FBX file, which means you have to save the resultant new Houdini scene into the same directory.

Also, FBX importer now allows File SOPs and File CHOPs to be unlocked after import, which means you can simply reference the original FBX file and its associated vertex caches on disk. The only exception currently are skinned objects, which are still locked.
Oleg Samus
Software Developer
Side Effects Software Inc.
User Avatar
Member
37 posts
Joined: April 2008
Offline
great! That's huge progress (besides the already great FBX support) ! Thanks Oleg!

I'll see what else can be improved on the blender side. Looking forward to the new build.

regards,

Alvaro
  • Quick Links