MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/Falcor / FALCOR_SCRIPT_BINDING

Function FALCOR_SCRIPT_BINDING

Source/Falcor/Scene/Scene.cpp:4276–4378  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4274 }
4275
4276 FALCOR_SCRIPT_BINDING(Scene)
4277 {
4278 using namespace pybind11::literals;
4279
4280 FALCOR_SCRIPT_BINDING_DEPENDENCY(Material)
4281 FALCOR_SCRIPT_BINDING_DEPENDENCY(Rectangle)
4282 FALCOR_SCRIPT_BINDING_DEPENDENCY(Light)
4283 FALCOR_SCRIPT_BINDING_DEPENDENCY(GridVolume)
4284 FALCOR_SCRIPT_BINDING_DEPENDENCY(Animation)
4285 FALCOR_SCRIPT_BINDING_DEPENDENCY(AABB)
4286 FALCOR_SCRIPT_BINDING_DEPENDENCY(Camera)
4287 FALCOR_SCRIPT_BINDING_DEPENDENCY(EnvMap)
4288 FALCOR_SCRIPT_BINDING_DEPENDENCY(SDFGrid)
4289
4290 // RenderSettings
4291 pybind11::class_<Scene::RenderSettings> renderSettings(m, "SceneRenderSettings");
4292 renderSettings.def_readwrite("useEnvLight", &Scene::RenderSettings::useEnvLight);
4293 renderSettings.def_readwrite("useAnalyticLights", &Scene::RenderSettings::useAnalyticLights);
4294 renderSettings.def_readwrite("useEmissiveLights", &Scene::RenderSettings::useEmissiveLights);
4295 renderSettings.def_readwrite("useGridVolumes", &Scene::RenderSettings::useGridVolumes);
4296 renderSettings.def_readwrite("diffuseAlbedoMultiplier", &Scene::RenderSettings::diffuseAlbedoMultiplier);
4297 renderSettings.def(pybind11::init<>([](bool useEnvLight, bool useAnalyticLights, bool useEmissiveLights, bool useGridVolumes, float diffuseAlbedoMultiplier) {
4298 Scene::RenderSettings settings;
4299 settings.useEnvLight = useEnvLight;
4300 settings.useAnalyticLights = useAnalyticLights;
4301 settings.useEmissiveLights = useEmissiveLights;
4302 settings.useGridVolumes = useGridVolumes;
4303 settings.diffuseAlbedoMultiplier = diffuseAlbedoMultiplier;
4304 return settings;
4305 }), "useEnvLight"_a = true, "useAnalyticLights"_a = true, "useEmissiveLights"_a = true, "useGridVolumes"_a = true, "diffuseAlbedoMultiplier"_a = 1.f);
4306 renderSettings.def("__repr__", [](const Scene::RenderSettings& self) {
4307 return fmt::format(
4308 "SceneRenderSettings(useEnvLight={}, useAnalyticLights={}, useEmissiveLights={}, useGridVolumes={}, diffuseAlbedoMultiplier={})",
4309 self.useEnvLight ? "True" : "False",
4310 self.useAnalyticLights ? "True" : "False",
4311 self.useEmissiveLights ? "True" : "False",
4312 self.useGridVolumes ? "True" : "False",
4313 self.diffuseAlbedoMultiplier
4314 );
4315 });
4316
4317 // Scene
4318 pybind11::class_<Scene, ref<Scene>> scene(m, "Scene");
4319
4320 scene.def_property_readonly(kStats.c_str(), [](const Scene* pScene) { return toPython(pScene->getSceneStats()); });
4321 scene.def_property_readonly(kBounds.c_str(), &Scene::getSceneBounds, pybind11::return_value_policy::copy);
4322 scene.def_property(kCamera.c_str(), &Scene::getCamera, &Scene::setCamera);
4323 scene.def_property(kEnvMap.c_str(), &Scene::getEnvMap, &Scene::setEnvMap);
4324 scene.def_property_readonly(kAnimations.c_str(), &Scene::getAnimations);
4325 scene.def_property_readonly(kCameras.c_str(), &Scene::getCameras);
4326 scene.def_property_readonly(kLights.c_str(), &Scene::getLights);
4327 scene.def_property_readonly(kGridVolumes.c_str(), &Scene::getGridVolumes);
4328 scene.def_property_readonly("volumes", &Scene::getGridVolumes); // PYTHONDEPRECATED
4329 scene.def_property(kCameraSpeed.c_str(), &Scene::getCameraSpeed, &Scene::setCameraSpeed);
4330 scene.def_property(kAnimated.c_str(), &Scene::isAnimated, &Scene::setIsAnimated);
4331 scene.def_property(kLoopAnimations.c_str(), &Scene::isLooped, &Scene::setIsLooped);
4332 scene.def_property(kRenderSettings.c_str(), pybind11::overload_cast<>(&Scene::getRenderSettings, pybind11::const_), &Scene::setRenderSettings);
4333

Callers

nothing calls this directly

Calls 6

setCameraBoundsMethod · 0.80
getGeometryIDsMethod · 0.80
toPythonFunction · 0.70
AABBClass · 0.70
getMethod · 0.45
replaceMaterialMethod · 0.45

Tested by

no test coverage detected