mesh.set_textures(database["textures"]) mesh.set_scale(6371) pos = 6371 + 9000 mesh.set_pos(Point3(0, pos, 0)) render_pipeline.setEffect(mesh.node_path, "Effects/Earth.effect") mesh.reparent_to(base.render) sun_light = DirectionalLight() sun_pos = Vec3(10000, pos, 0) sun_light.setSunDistance(20000) sun_light.setPos(sun_pos) sun_light.setPssmTarget(base.cam, base.camLens) sun_light.setColor(Vec3(1.0)) sun_light.setShadowMapResolution(2048) sun_light.setCastsShadows(True) render_pipeline.addLight(sun_light) scattering = render_pipeline.getScattering() scattering.adjustSetting("atmosphereOffset", Vec3(0, pos, 0)) scattering.adjustSetting("atmosphereScale", Vec3(1.0)) render_pipeline.setScatteringSource(sun_light) controller = MovementController(base) controller.setup() base.accept("f3", toggleSceneWireframe) render_pipeline.reloadShaders() render_pipeline.onSceneInitialized() base.run()
render_pipeline.getMountManager().setBasePath( os.path.join(os.path.dirname(spacedrive.__file__), 'renderpipeline')) render_pipeline.getMountManager().setWritePath( os.path.join(cache_dir, 'Shaders')) render_pipeline.loadSettings('pipeline.ini') from spacedrive.renderpipeline.Code.DirectionalLight import DirectionalLight render_pipeline.create() dPos = Vec3(40, 40, 40) dirLight = DirectionalLight() dirLight.setDirection(dPos) dirLight.setShadowMapResolution(2048) dirLight.setCastsShadows(True) dirLight.setPos(dPos) dirLight.setColor(Vec3(6)) render_pipeline.addLight(dirLight) def toggleSceneWireframe(): sandbox.base.wireframe = not sandbox.base.wireframe if sandbox.base.wireframe: sandbox.base.render.setRenderModeWireframe() else: sandbox.base.render.clearRenderMode() sandbox.base.accept("f3", toggleSceneWireframe) sandbox.base.wireframe = False render_pipeline.onSceneInitialized() skybox = render_pipeline.getDefaultSkybox() skybox.reparentTo(render)