mirror of
https://git.datalinker.icu/kijai/ComfyUI-Hunyuan3DWrapper.git
synced 2026-05-15 16:49:12 +08:00
expose ortho_scale
This commit is contained in:
parent
a887220a54
commit
fb5a9d3229
@ -133,7 +133,7 @@ class MeshRender():
|
|||||||
camera_distance=1.45, camera_type='orth',
|
camera_distance=1.45, camera_type='orth',
|
||||||
default_resolution=1024, texture_size=1024,
|
default_resolution=1024, texture_size=1024,
|
||||||
use_antialias=True, max_mip_level=None, filter_mode='linear',
|
use_antialias=True, max_mip_level=None, filter_mode='linear',
|
||||||
bake_mode='linear', raster_mode='cr', device='cuda'):
|
bake_mode='linear', raster_mode='cr', device='cuda', ortho_scale=1.2,):
|
||||||
|
|
||||||
self.device = device
|
self.device = device
|
||||||
|
|
||||||
@ -159,7 +159,7 @@ class MeshRender():
|
|||||||
raise f'No raster named {self.raster_mode}'
|
raise f'No raster named {self.raster_mode}'
|
||||||
|
|
||||||
if camera_type == 'orth':
|
if camera_type == 'orth':
|
||||||
self.ortho_scale = 1.2
|
self.ortho_scale = ortho_scale
|
||||||
self.camera_proj_mat = get_orthographic_projection_matrix(
|
self.camera_proj_mat = get_orthographic_projection_matrix(
|
||||||
left=-self.ortho_scale * 0.5, right=self.ortho_scale * 0.5,
|
left=-self.ortho_scale * 0.5, right=self.ortho_scale * 0.5,
|
||||||
bottom=-self.ortho_scale * 0.5, top=self.ortho_scale * 0.5,
|
bottom=-self.ortho_scale * 0.5, top=self.ortho_scale * 0.5,
|
||||||
|
|||||||
16
nodes.py
16
nodes.py
@ -241,6 +241,7 @@ class Hy3DCameraConfig:
|
|||||||
"camera_elevations": ("STRING", {"default": "0, 0, 0, 0, 90, -90", "multiline": False}),
|
"camera_elevations": ("STRING", {"default": "0, 0, 0, 0, 90, -90", "multiline": False}),
|
||||||
"view_weights": ("STRING", {"default": "1, 0.1, 0.5, 0.1, 0.05, 0.05", "multiline": False}),
|
"view_weights": ("STRING", {"default": "1, 0.1, 0.5, 0.1, 0.05, 0.05", "multiline": False}),
|
||||||
"camera_distance": ("FLOAT", {"default": 1.45, "min": 0.1, "max": 10.0, "step": 0.001}),
|
"camera_distance": ("FLOAT", {"default": 1.45, "min": 0.1, "max": 10.0, "step": 0.001}),
|
||||||
|
"ortho_scale": ("FLOAT", {"default": 1.2, "min": 0.1, "max": 10.0, "step": 0.001}),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -249,7 +250,7 @@ class Hy3DCameraConfig:
|
|||||||
FUNCTION = "process"
|
FUNCTION = "process"
|
||||||
CATEGORY = "Hunyuan3DWrapper"
|
CATEGORY = "Hunyuan3DWrapper"
|
||||||
|
|
||||||
def process(self, camera_azimuths, camera_elevations, view_weights, camera_distance):
|
def process(self, camera_azimuths, camera_elevations, view_weights, camera_distance, ortho_scale):
|
||||||
angles_list = list(map(int, camera_azimuths.replace(" ", "").split(',')))
|
angles_list = list(map(int, camera_azimuths.replace(" ", "").split(',')))
|
||||||
elevations_list = list(map(int, camera_elevations.replace(" ", "").split(',')))
|
elevations_list = list(map(int, camera_elevations.replace(" ", "").split(',')))
|
||||||
weights_list = list(map(float, view_weights.replace(" ", "").split(',')))
|
weights_list = list(map(float, view_weights.replace(" ", "").split(',')))
|
||||||
@ -258,7 +259,8 @@ class Hy3DCameraConfig:
|
|||||||
"selected_camera_azims": angles_list,
|
"selected_camera_azims": angles_list,
|
||||||
"selected_camera_elevs": elevations_list,
|
"selected_camera_elevs": elevations_list,
|
||||||
"selected_view_weights": weights_list,
|
"selected_view_weights": weights_list,
|
||||||
"camera_distance": camera_distance
|
"camera_distance": camera_distance,
|
||||||
|
"ortho_scale": ortho_scale,
|
||||||
}
|
}
|
||||||
|
|
||||||
return (camera_config,)
|
return (camera_config,)
|
||||||
@ -310,15 +312,18 @@ class Hy3DRenderMultiView:
|
|||||||
selected_camera_azims = [0, 90, 180, 270, 0, 180]
|
selected_camera_azims = [0, 90, 180, 270, 0, 180]
|
||||||
selected_camera_elevs = [0, 0, 0, 0, 90, -90]
|
selected_camera_elevs = [0, 0, 0, 0, 90, -90]
|
||||||
camera_distance = 1.45
|
camera_distance = 1.45
|
||||||
|
ortho_scale = 1.2
|
||||||
else:
|
else:
|
||||||
selected_camera_azims = camera_config["selected_camera_azims"]
|
selected_camera_azims = camera_config["selected_camera_azims"]
|
||||||
selected_camera_elevs = camera_config["selected_camera_elevs"]
|
selected_camera_elevs = camera_config["selected_camera_elevs"]
|
||||||
camera_distance = camera_config["camera_distance"]
|
camera_distance = camera_config["camera_distance"]
|
||||||
|
ortho_scale = camera_config["ortho_scale"]
|
||||||
|
|
||||||
self.render = MeshRender(
|
self.render = MeshRender(
|
||||||
default_resolution=render_size,
|
default_resolution=render_size,
|
||||||
texture_size=texture_size,
|
texture_size=texture_size,
|
||||||
camera_distance=camera_distance)
|
camera_distance=camera_distance,
|
||||||
|
ortho_scale=ortho_scale)
|
||||||
|
|
||||||
self.render.load_mesh(mesh)
|
self.render.load_mesh(mesh)
|
||||||
|
|
||||||
@ -377,15 +382,18 @@ class Hy3DRenderMultiViewDepth:
|
|||||||
selected_camera_azims = [0, 90, 180, 270, 0, 180]
|
selected_camera_azims = [0, 90, 180, 270, 0, 180]
|
||||||
selected_camera_elevs = [0, 0, 0, 0, 90, -90]
|
selected_camera_elevs = [0, 0, 0, 0, 90, -90]
|
||||||
camera_distance = 1.45
|
camera_distance = 1.45
|
||||||
|
ortho_scale = 1.2
|
||||||
else:
|
else:
|
||||||
selected_camera_azims = camera_config["selected_camera_azims"]
|
selected_camera_azims = camera_config["selected_camera_azims"]
|
||||||
selected_camera_elevs = camera_config["selected_camera_elevs"]
|
selected_camera_elevs = camera_config["selected_camera_elevs"]
|
||||||
camera_distance = camera_config["camera_distance"]
|
camera_distance = camera_config["camera_distance"]
|
||||||
|
ortho_scale = camera_config["ortho_scale"]
|
||||||
|
|
||||||
self.render = MeshRender(
|
self.render = MeshRender(
|
||||||
default_resolution=render_size,
|
default_resolution=render_size,
|
||||||
texture_size=texture_size,
|
texture_size=texture_size,
|
||||||
camera_distance=camera_distance)
|
camera_distance=camera_distance,
|
||||||
|
ortho_scale=ortho_scale)
|
||||||
|
|
||||||
self.render.load_mesh(mesh)
|
self.render.load_mesh(mesh)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user