feat: optionnal setting on host
This commit is contained in:
@ -22,6 +22,8 @@ import mathutils
|
|||||||
from .dump_anything import Loader, Dumper
|
from .dump_anything import Loader, Dumper
|
||||||
from .bl_datablock import BlDatablock
|
from .bl_datablock import BlDatablock
|
||||||
|
|
||||||
|
from ..utils import get_preferences
|
||||||
|
|
||||||
class BlScene(BlDatablock):
|
class BlScene(BlDatablock):
|
||||||
bl_id = "scenes"
|
bl_id = "scenes"
|
||||||
bl_class = bpy.types.Scene
|
bl_class = bpy.types.Scene
|
||||||
@ -101,19 +103,22 @@ class BlScene(BlDatablock):
|
|||||||
scene_dumper.depth = 1
|
scene_dumper.depth = 1
|
||||||
scene_dumper.include_filter = None
|
scene_dumper.include_filter = None
|
||||||
|
|
||||||
data['eevee'] = scene_dumper.dump(pointer.eevee)
|
pref = get_preferences()
|
||||||
data['cycles'] = scene_dumper.dump(pointer.cycles)
|
|
||||||
data['view_settings'] = scene_dumper.dump(pointer.view_settings)
|
if pref.sync_flags.sync_render_settings:
|
||||||
data['view_settings']['curve_mapping'] = scene_dumper.dump(pointer.view_settings.curve_mapping)
|
data['eevee'] = scene_dumper.dump(pointer.eevee)
|
||||||
|
data['cycles'] = scene_dumper.dump(pointer.cycles)
|
||||||
if pointer.view_settings.use_curve_mapping:
|
data['view_settings'] = scene_dumper.dump(pointer.view_settings)
|
||||||
scene_dumper.depth = 5
|
data['view_settings']['curve_mapping'] = scene_dumper.dump(pointer.view_settings.curve_mapping)
|
||||||
scene_dumper.include_filter = [
|
|
||||||
'curves',
|
if pointer.view_settings.use_curve_mapping:
|
||||||
'points',
|
scene_dumper.depth = 5
|
||||||
'location'
|
scene_dumper.include_filter = [
|
||||||
]
|
'curves',
|
||||||
data['view_settings']['curve_mapping']['curves'] = scene_dumper.dump(pointer.view_settings.curve_mapping.curves)
|
'points',
|
||||||
|
'location'
|
||||||
|
]
|
||||||
|
data['view_settings']['curve_mapping']['curves'] = scene_dumper.dump(pointer.view_settings.curve_mapping.curves)
|
||||||
|
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
@ -36,7 +36,7 @@ def random_string_digits(stringLength=6):
|
|||||||
"""Generate a random string of letters and digits """
|
"""Generate a random string of letters and digits """
|
||||||
lettersAndDigits = string.ascii_letters + string.digits
|
lettersAndDigits = string.ascii_letters + string.digits
|
||||||
return ''.join(random.choices(lettersAndDigits, k=stringLength))
|
return ''.join(random.choices(lettersAndDigits, k=stringLength))
|
||||||
|
|
||||||
|
|
||||||
class ReplicatedDatablock(bpy.types.PropertyGroup):
|
class ReplicatedDatablock(bpy.types.PropertyGroup):
|
||||||
type_name: bpy.props.StringProperty()
|
type_name: bpy.props.StringProperty()
|
||||||
@ -48,6 +48,13 @@ class ReplicatedDatablock(bpy.types.PropertyGroup):
|
|||||||
icon: bpy.props.StringProperty()
|
icon: bpy.props.StringProperty()
|
||||||
|
|
||||||
|
|
||||||
|
class ReplicationFlags(bpy.types.PropertyGroup):
|
||||||
|
sync_render_settings: bpy.props.BoolProperty(
|
||||||
|
name="Synchronize render settings",
|
||||||
|
description="Synchronize render settings (eevee and cycles only)",
|
||||||
|
default=True)
|
||||||
|
|
||||||
|
|
||||||
class SessionPrefs(bpy.types.AddonPreferences):
|
class SessionPrefs(bpy.types.AddonPreferences):
|
||||||
bl_idname = __package__
|
bl_idname = __package__
|
||||||
|
|
||||||
@ -68,6 +75,9 @@ class SessionPrefs(bpy.types.AddonPreferences):
|
|||||||
description='Distant host port',
|
description='Distant host port',
|
||||||
default=5555
|
default=5555
|
||||||
)
|
)
|
||||||
|
sync_flags: bpy.props.PointerProperty(
|
||||||
|
type=ReplicationFlags
|
||||||
|
)
|
||||||
supported_datablocks: bpy.props.CollectionProperty(
|
supported_datablocks: bpy.props.CollectionProperty(
|
||||||
type=ReplicatedDatablock,
|
type=ReplicatedDatablock,
|
||||||
)
|
)
|
||||||
@ -340,6 +350,7 @@ class SessionProps(bpy.types.PropertyGroup):
|
|||||||
classes = (
|
classes = (
|
||||||
SessionUser,
|
SessionUser,
|
||||||
SessionProps,
|
SessionProps,
|
||||||
|
ReplicationFlags,
|
||||||
ReplicatedDatablock,
|
ReplicatedDatablock,
|
||||||
SessionPrefs,
|
SessionPrefs,
|
||||||
)
|
)
|
||||||
|
@ -241,6 +241,9 @@ class SESSION_PT_settings_replication(bpy.types.Panel):
|
|||||||
|
|
||||||
# Right managment
|
# Right managment
|
||||||
if runtime_settings.session_mode == 'HOST':
|
if runtime_settings.session_mode == 'HOST':
|
||||||
|
row = layout.row()
|
||||||
|
row.prop(settings.sync_flags,"sync_render_settings")
|
||||||
|
|
||||||
row = layout.row(align=True)
|
row = layout.row(align=True)
|
||||||
row.label(text="Right strategy:")
|
row.label(text="Right strategy:")
|
||||||
row.prop(settings,"right_strategy",text="")
|
row.prop(settings,"right_strategy",text="")
|
||||||
|
Reference in New Issue
Block a user