mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-30 08:44:19 -04:00
Merge pull request #38 from eswartz/pr-savemaps-lens
Allow passing custom lens to saveCubeMap/saveSphereMap
This commit is contained in:
commit
176606ef15
@ -2466,7 +2466,8 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
def saveCubeMap(self, namePrefix = 'cube_map_#.png',
|
def saveCubeMap(self, namePrefix = 'cube_map_#.png',
|
||||||
defaultFilename = 0, source = None,
|
defaultFilename = 0, source = None,
|
||||||
camera = None, size = 128,
|
camera = None, size = 128,
|
||||||
cameraMask = PandaNode.getAllCameraMask()):
|
cameraMask = PandaNode.getAllCameraMask(),
|
||||||
|
sourceLens = None):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Similar to screenshot(), this sets up a temporary cube map
|
Similar to screenshot(), this sets up a temporary cube map
|
||||||
@ -2494,6 +2495,9 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
if camera == None:
|
if camera == None:
|
||||||
camera = base.camera
|
camera = base.camera
|
||||||
|
|
||||||
|
if sourceLens == None:
|
||||||
|
sourceLens = base.camLens
|
||||||
|
|
||||||
if hasattr(source, "getWindow"):
|
if hasattr(source, "getWindow"):
|
||||||
source = source.getWindow()
|
source = source.getWindow()
|
||||||
|
|
||||||
@ -2504,7 +2508,8 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
|
|
||||||
# Set the near and far planes from the default lens.
|
# Set the near and far planes from the default lens.
|
||||||
lens = rig.find('**/+Camera').node().getLens()
|
lens = rig.find('**/+Camera').node().getLens()
|
||||||
lens.setNearFar(base.camLens.getNear(), base.camLens.getFar())
|
|
||||||
|
lens.setNearFar(sourceLens.getNear(), sourceLens.getFar())
|
||||||
|
|
||||||
# Now render a frame to fill up the texture.
|
# Now render a frame to fill up the texture.
|
||||||
rig.reparentTo(camera)
|
rig.reparentTo(camera)
|
||||||
@ -2525,7 +2530,7 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
defaultFilename = 0, source = None,
|
defaultFilename = 0, source = None,
|
||||||
camera = None, size = 256,
|
camera = None, size = 256,
|
||||||
cameraMask = PandaNode.getAllCameraMask(),
|
cameraMask = PandaNode.getAllCameraMask(),
|
||||||
numVertices = 1000):
|
numVertices = 1000, sourceLens = None):
|
||||||
"""
|
"""
|
||||||
This works much like saveCubeMap(), and uses the graphics
|
This works much like saveCubeMap(), and uses the graphics
|
||||||
API's hardware cube-mapping ability to get a 360-degree view
|
API's hardware cube-mapping ability to get a 360-degree view
|
||||||
@ -2550,6 +2555,9 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
if camera == None:
|
if camera == None:
|
||||||
camera = base.camera
|
camera = base.camera
|
||||||
|
|
||||||
|
if sourceLens == None:
|
||||||
|
sourceLens = base.camLens
|
||||||
|
|
||||||
if hasattr(source, "getWindow"):
|
if hasattr(source, "getWindow"):
|
||||||
source = source.getWindow()
|
source = source.getWindow()
|
||||||
|
|
||||||
@ -2568,7 +2576,7 @@ class ShowBase(DirectObject.DirectObject):
|
|||||||
|
|
||||||
# Set the near and far planes from the default lens.
|
# Set the near and far planes from the default lens.
|
||||||
lens = rig.find('**/+Camera').node().getLens()
|
lens = rig.find('**/+Camera').node().getLens()
|
||||||
lens.setNearFar(base.camLens.getNear(), base.camLens.getFar())
|
lens.setNearFar(sourceLens.getNear(), sourceLens.getFar())
|
||||||
|
|
||||||
# Set up the scene to convert the cube map. It's just a
|
# Set up the scene to convert the cube map. It's just a
|
||||||
# simple scene, with only the FisheyeMaker object in it.
|
# simple scene, with only the FisheyeMaker object in it.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user