Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/ambient_light.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class AmbientLight(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LIGHT_HEMI',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A light that illuminates all objects in the scene',
}

color: FloatVectorProperty(name="Color",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/ammo_shape.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ class AmmoShape(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'SCENE_DATA',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': '[DEPRECATED?] Define the physics shape of an entity',
}

type: EnumProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/audio.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ class Audio(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'deps': ['networked', 'audio-params'],
'icon': 'OUTLINER_OB_SPEAKER',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Load an audio file from a URL and play it.'
}

src: StringProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/audio_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ class AudioParams(HubsComponent):
'display_name': 'Audio Params',
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'version': (1, 0, 1)
'version': (1, 0, 1),
'tooltip': 'Define audio drop off settings',
}

overrideAudioSettings: BoolProperty(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ class AudioSettings(HubsComponent):
'node_type': NodeType.SCENE,
'panel_type': [PanelType.SCENE],
'icon': 'SPEAKER',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Define audio settings for the scene'
}

avatarDistanceModel: EnumProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/audio_source.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class AudioSource(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MOD_WAVE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Difine settings for an audio source attached to this object.',
}

onlyMods: BoolProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/audio_target.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,8 @@ class AudioTarget(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'deps': ['audio-params'],
'icon': 'SPEAKER',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A component that plays audio based on the distance between two entities'
}

srcNode: PointerProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/audio_zone.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ class AudioZone(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'deps': ['networked', 'audio-params'],
'icon': 'MATCUBE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Create an audio zone to control audio parameters within a specific area.'
}

inOut: BoolProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/billboard.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class Billboard(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'IMAGE_PLANE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Make this object always face the camera'
}

onlyY: BoolProperty(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class DirectionalLight(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LIGHT_SUN',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A light that emits parallel light in a specific direction, like the sun',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'A light that emits parallel light in a specific direction, like the sun',
'tooltip': 'Emit parallel light in a specific direction, like the sun',

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm really torn on this clause, "like the sun", because I think of that as object in space emitting light in all directions. I realize THIS is comparing to what the sun feels like on Earth though. What about adding a bit more?

'Emit parallel light in a specific direction, like how the sun's rays appear on Earth'

}

color: FloatVectorProperty(name="Color",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ class EnvironmentSettings(HubsComponent):
'node_type': NodeType.SCENE,
'panel_type': [PanelType.SCENE],
'icon': 'WORLD',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Define Background image and Evnironment settings',
}

toneMapping: EnumProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/fog.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class Fog(HubsComponent):
'node_type': NodeType.SCENE,
'panel_type': [PanelType.SCENE],
'icon': 'MOD_OCEAN',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add fog to the scene',
}

def draw(self, context, layout, panel):
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/frustrum.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class Frustrum(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'IMAGE_PLANE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A component that defines a frustrum'
}

culled: BoolProperty(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class HemisphereLight(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LIGHT_AREA',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add a hemispherical light, similar to a skydome'
}

skyColor: FloatVectorProperty(name="Sky Color",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/image.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ class Image(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'FILE_IMAGE',
'deps': ['networked'],
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Displays an image from a URL'
}

src: StringProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/link.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ class Link(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LINKED',
'deps': ['networked'],
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Create an interactable hyperlink'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Create an interactable hyperlink'
'tooltip': 'Display a preview of a website or Hubs asset that can be interacted with (behavior depends on the type of link). This can be combined with other components to override the auto-generated preview'

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Display a preview of interactive website or Hubs asset. If combined with other components, overrides auto-generated preview.'

}

href: StringProperty(name="Link URL", description="Link URL",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -760,7 +760,8 @@ class LoopAnimation(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LOOP_BACK',
'version': (1, 1, 0)
'version': (1, 1, 0),
'tooltip': 'Play a looping animation on the object or bone',
}

tracks_list: CollectionProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/media_frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ class MediaFrame(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'OBJECT_DATA',
'deps': ['networked'],
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add media like images, PDFs, and videos'
}

mediaType: EnumProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/mirror.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ class Mirror(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MOD_MIRROR',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Adds a planar mirror to the room'
}

color: FloatVectorProperty(name="Color",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class Model(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'SCENE_DATA',
'deps': ['networked'],
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Loads a 3D model (glb) from a URL'
}

src: StringProperty(name="Model URL", description="Model URL",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,8 @@ class MorphAudioFeedback(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'MOD_SMOOTH',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Control a shapekey for an avatar based on mic volume'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Control a shapekey for an avatar based on mic volume'
'tooltip': 'Use the user's transmitted audio to animate a shape key on the avatar'

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'User transmitted audio animates an avatar shape key'

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since an avatar can have many shape keys and this only modifies one, I'd suggest:
"Use the user's transmitted audio to animate a shape key of the avatar"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Blender notes said to avoid the word "Use" (and enable, active, and is) because they could be confused with Boolean operators.

I say, "pah"! Let's go with use. I think it fits in this case. :)

}

name: StringProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/nav_mesh.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ class NavMesh(HubsComponent):
'panel_type': [PanelType.OBJECT],
'icon': 'GRID',
'version': (1, 0, 1),
'deps': ['visible']
'deps': ['visible'],
'tooltip': 'A navmesh defines the area where avatars can walk'
}

@classmethod
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ class ParticleEmitter(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'PARTICLES',
'version': (1, 1, 0)
'version': (1, 1, 0),
'tooltip': 'Emit particles from this object'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Emit particles from this object'
'tooltip': 'Send forth a continuous stream of 2D billboarded images. This can be used to approximate things like fire, rain, smoke, and other effects'

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with not using "emit" and points for choosing "send forth". Thesaurus.com tells me that 'beam' might be better. I don't like "beam" with "stream" though. Emanate? too fancy. Back to 'send forth'.

'Send forth continuous stream of 2D billboarded images to approximate fire, rain, smoke, and other effects'

}

particleCount: IntProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/pdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ class PDF(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'deps': ['networked'],
'icon': 'FILE_IMAGE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Load a PDF from a URL and show it in the scene.'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Load a PDF from a URL and show it in the scene.'
'tooltip': 'Display a PDF from a URL'

}
src: StringProperty(
name="PDF URL", description="The web address of the PDF", default='https://example.org/PdfFile.pdf')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class PersonalSpaceInvader(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MATSHADERBALL',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Fade out other avatars if they get too close'
}

radius: FloatProperty(name="Radius",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/point_light.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class PointLight(HubsComponent):
'node_type': NodeType. NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LIGHT_POINT',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add a point light'
}

color: FloatVectorProperty(name="Color",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -654,7 +654,8 @@ class ReflectionProbe(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'MATERIAL',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A reflection probe is a type of light probe that captures the environment around it and uses that information to create reflections on objects in the scene',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'A reflection probe is a type of light probe that captures the environment around it and uses that information to create reflections on objects in the scene',
'tooltip': 'Define a specific area to apply the lighting and reflections from a spherical High Dynamic Range (HDR) image and allow baking the surrounding environment into a spherical HDR',

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Understanding this is above my pay grade but here goes:

'Define a lighting area via a spherical High Dynamic Range (HDR) image. Realistic reflections can then be baked into surrounding environment'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't quite right. The first sentence is okay (though it feels a bit weird not to be mentioning reflections directly). But for the second sentence, it's actually the other way around; the environment is baked into an image to use in the reflection probe, and the probe just facilitates baking this image.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I see. I'm happy going with your suggested wording @Exairnous . :)

}

envMapTexture: PointerProperty(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class ScaleAudioFeedback(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'GRAPH',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Control the scale of an object or bone based on mic volume'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Control the scale of an object or bone based on mic volume'
'tooltip': 'Use the user's transmitted audio to animate the scale of an object or bone in the avatar'

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Control the scale of how much user transmitted audio animates an object or bone.' I feel like this one needs a greater or lesser comment/explanation added like "Larger numbers cause greater movement" or something like that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This component is almost identical to the Morph Audio Feedback component (which is why I phrased it similarly), except it scales the bone between two values instead of morphing a shape key between two values. I'm not against adding in an additional comment, but if we do, I'd add it to the Morph Audio Feedback tooltip as well.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revised wording that @Heather-Elizabeth-Dodds and I came up with:

Suggested change
'tooltip': 'Control the scale of an object or bone based on mic volume'
'tooltip': 'Use the user's transmitted audio to animate the scale of an object or bone in the avatar. Larger numbers cause more movement'

}

minScale: FloatProperty(name="Min Scale",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,8 @@ class ScenePreviewCamera(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'CAMERA_DATA',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Define a camera for rendering a preview of the scene'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Define a camera for rendering a preview of the scene'
'tooltip': 'Define an empty as the lobby camera in Hubs. Also allows rendering a preview of the scene'

}

fov: FloatProperty(name="FOV", min=0, max=radians(180), default=radians(80), subtype="ANGLE", unit="ROTATION")
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/shadow.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class Shadow(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'MOD_MASK',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Make this object cast dynamic shadows'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Make this object cast dynamic shadows'
'tooltip': 'Control whether this object casts or receives dynamic shadows'

}

cast: BoolProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/simple_water.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class SimpleWater(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MOD_FLUIDSIM',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add an animated water surface to your scene'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Add an animated water surface to your scene'
'tooltip': 'Display an animated water surface in your scene'

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Display an animated water surface in scene'

}

color: FloatVectorProperty(name="Color",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/skybox.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class Skybox(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MAT_SPHERE_SKY',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Creates a procedural sky'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Creates a procedural sky'
'tooltip': 'Create a procedural sky background that provides lighting and reflections'

}

azimuth: FloatProperty(name="Time of Day",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/spawner.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class Spawner(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'MOD_PARTICLE_INSTANCE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Spawn objects (glb) loaded from a URL by dragging'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Spawn objects (glb) loaded from a URL by dragging'
'tooltip': 'Display an object (glb) loaded from a URL that users can create duplicates of by dragging on it'

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I never loved the word spawn for this. (eyeroll) How about generates?

'Drawing from an existing URL, generate an object (glb) that can optionally be duplicated'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add "by dragging on it" to the end? As it is, it doesn't inform the user how the object is duplicated, so to me, it sounds like I'd duplicate a copy by hovering over it, pressing spacebar, and cloning it (which doesn't work).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revised wording that @Heather-Elizabeth-Dodds and I came up with:

Suggested change
'tooltip': 'Spawn objects (glb) loaded from a URL by dragging'
'tooltip': 'Using an existing URL, generate an object (glb) that a user can optionally duplicate by dragging'

}

src: StringProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/spot_light.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ class SpotLight(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'LIGHT_SPOT',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Add a spot light'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Add a spot light'
'tooltip': 'Emit light in a cone from a single point'

}

color: FloatVectorProperty(name="Color",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/text.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ class Text(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'FONT_DATA',
'version': (1, 1, 0)
'version': (1, 1, 0),
'tooltip': 'Show customizable text in 3D space'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Show customizable text in 3D space'
'tooltip': 'Display customizable text in 3D space'

}

value: StringProperty(
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/uv_scroll.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ class UVScroll(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT],
'icon': 'TEXTURE_DATA',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Scroll the UVs of a material, generating an infinite scrolling effect'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Scroll the UVs of a material, generating an infinite scrolling effect'
'tooltip': 'Continuously animate the UVs of the material of your object to generate texture scrolling effects or sprite sheet animations'

}

speed: FloatVectorProperty(name="Speed",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/video.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ class Video(HubsComponent):
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'deps': ['networked', 'audio-params'],
'icon': 'FILE_MOVIE',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Play a video from a URL'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Play a video from a URL'
'tooltip': 'Display a video from a URL'

}

src: StringProperty(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ class VideoTextureSource(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'VIEW_CAMERA',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'A component that uses a video like a texture'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'A component that uses a video like a texture'
'tooltip': 'Broadcast video from the camera to a corresponding video texture target. A virtual video camera',

}

resolution: IntVectorProperty(name="Resolution",
Expand Down
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/visible.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ class Visible(HubsComponent):
'node_type': NodeType.NODE,
'panel_type': [PanelType.OBJECT, PanelType.BONE],
'icon': 'HIDE_OFF',
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': 'Hide this object from the camera'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': 'Hide this object from the camera'
'tooltip': 'Force the object, or the generated entities from some other components, to be either shown or hidden,

Copy link

@hobbs-Hobbler hobbs-Hobbler Apr 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I also don't know the details of this. Is "force" a necessary word for this? Blender's instructions are confusing. They say you should always describe the positive state.

Only describe the positive state of a toggle, not the negative
Don't: "Hide in Viewport"
Do: "Show in Viewport"

I'm going to suggest NO CHANGES to the suggested change for now.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's arguable whether "force" is necessary, but since you can use it to show the bounds of things like audio zones which are normally invisible (while most other things in Hubs are defaulted to visible) I went with saying you're forcing the state. As to Blender's instructions, most of the time I'd agree with them, but in this case I feel this better describes things because the component contains the toggle and so this isn't describing the toggle directly (I could be wrong though).

}

visible: BoolProperty(name="Visible", default=True)
3 changes: 2 additions & 1 deletion addons/io_hubs_addon/components/definitions/waypoint.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ class Waypoint(HubsComponent):
'gizmo': 'waypoint',
'icon': 'spawn-point.png',
'deps': ['networked'],
'version': (1, 0, 0)
'version': (1, 0, 0),
'tooltip': "Add a waypoint to teleport to, can also be a spawn point"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'tooltip': "Add a waypoint to teleport to, can also be a spawn point"
'tooltip': "Define a location that can be teleported to, or where users will enter the scene"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like this tooltip. I think it will help.

}

canBeSpawnPoint: BoolProperty(
Expand Down
Loading