PDA

View Full Version : Adding environment reflection maps to imported objects with baked lighting


seowen1
07-02-2019, 04:06 PM
Hello,

I have some objects that I would like to add environment reflection maps to OSGB imported objects that have baked lighting. I have no issue baking lighting into a shell material and exporting into Vizard as an OSGB from 3ds Max. My problem comes when I attempt to apply a reflection map dynamically to the object via scripting.

Here's my attempt:

self.cubemaps = []
self.cubemaps.append(viz.addEnvironmentMap('Enviro nments\\HangarCubemap\\HangarCubemap0.png'))

def addCubemapToVizObject(self, target, level=0):
if level < range(len(self.cubemaps)):
target.enable(viz.BLEND)
target.enable(viz.LIGHTING)
target.specular([1,1,1])
target.texture(self.cubemaps[level], unit=1)
target.appearance(viz.ENVIRONMENT_MAP, unit=1)
target.texblend(0.5, unit=1)



I can't seem to see the environment map at all, and I'm not sure I'm going about it correctly. I can create a basic sphere object and follow this tutorial:
https://docs.worldviz.com/vizard/latest/Tutorial__Environmental_mapping.htm

That achieves expected results, but something is different when I start playing with imported objects. Any help?

Jeff
07-06-2019, 01:41 AM
Take a look at the Reflection with Cube Maps (docs.worldviz.com/vizard/latest/reflection_with_cube_maps.htm) page in the Vizard Help for instructions on adding the map in Max. To get the cube map to best match the Vizard scene, you can capture the map in Inspector rather than Max. See the Saving Cube Maps from Inspector (http://kb.worldviz.com/articles/2925) article for more information.

Another option is the GLTF workflow in which cube maps are no longer considered a part of models, and instead are part of environments. This makes is so if you have many props, you don't have to do a new export for every environment you want to bring them into.

seowen1
07-09-2019, 05:44 AM
It seems like I'm aiming for the GLTF method then... but is there really not a way to just dynamically add a reflection map to an object via code?