{"id":7552,"date":"2023-10-02T14:40:58","date_gmt":"2023-10-02T13:40:58","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=7552"},"modified":"2023-10-02T14:40:58","modified_gmt":"2023-10-02T13:40:58","slug":"nowhere-entities","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/","title":{"rendered":"Nowhere Entities &#038; Adding Interaction"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a0515b9e6ce7\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a0515b9e6ce7\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#the-room\" >The Room<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#source\" >Source<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#player\" >Player<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#teleporter\" >Teleporter<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#screen\" >Screen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#content\" >Content<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#portal\" >Portal<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#trigger\" >Trigger<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#linkblock\" >LinkBlock<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.katsbits.com\/codex\/nowhere-entities\/#seat\" >Seat<\/a><\/li><\/ul><\/nav><\/div>\n<p>In principle rooms in Nowhere, Spaces, can be as simple as a mesh and a Player spawn location. While there may be a point to doing that, for a more interactive experience a host of Nowhere specific <b>entities<\/b> are available in the <b>:: NWR :: Entities<\/b> subsection of the toolkit that facilitate more engagement with a space and\/or Users therein. Using a simple room these options will be explored below.<\/p>\n<blockquote style=\"background-color: #9d2600; color: #fff;\"><p><b>Important<\/b>: the Nowhere toolkit is under active development. Available properties and options, and consequently the information below, are subject to change.<\/p><\/blockquote>\n<h3><span class=\"ez-toc-section\" id=\"the-room\"><\/span>The Room<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The scene being used throughout is a simple low-polygon Minecraft style, multi-level platformer. The meshes have been optimised, that is faces not seen are removed, each accompanied by an appropriate constructed Collision hull. The materials assigned to the mesh are configured to use standard <b>Principled BSDF<\/b> materials for all <i>world<\/i> objects and a <a href=\"https:\/\/www.katsbits.com\/codex\/nowhere-basics\/\">Background<\/a> node material for the sky so it self-illuminates correctly. The scene also includes two <b>Sun<\/b> light sources; a primary directional source and a secondary acting to lighten shadows, further enhanced with <a href=\"https:\/\/www.katsbits.com\/codex\/vertex-painting\/\">Vertex Painted<\/a> shading.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"source\"><\/span>Source<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p><b>Suitability<\/b>: Beginner+.<br \/>\n<b>Source<\/b>: <a href=\"https:\/\/www.katsbits.com\/files\/nowhere\/katsbits_nowhere-minecraft-source.zip\">KatsBits \u2013 Nowhere Minecraft Source<\/a> (c. 250 KB &#8211; *.blend, *.gltf, *.fbx, *.png), Compatible with Blender 3.6 LTS.<\/p>\n<blockquote><p><b>Design note<\/b>: the collision hull is typically assigned a colour tinted material for ease of use, but this is entirely optional. Where it&#8217;s a duplication of the &#8216;game mesh&#8217; it may also include a UV map. In either case, both UVs and materials are ignored on import of collision components into Nowhere.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/entities-scene.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/entities-scene.jpg\" alt=\"Multi-level Nowhere Space\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The scene into which various Nowhere entities will be placed, a simple blocky Minecraft style platformer.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"player\"><\/span>Player<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Player<\/b> entity defines where the User appears in Nowhere. It&#8217;s not a positional absolute, instead it provides general location information; the players position when spawned varies slightly depending on how the Space loads, or how the players loads in to. Generally speaking this is the first entity to be added as the toolkit object itself, the flattened conical shape, acts as a secondary scaling reference, that is, it provides a visual cue for a scene and how big it should be relative to the User.<\/p>\n<blockquote><p><b>Design note<\/b>: although Nowhere and Blender use the same Units of measurement, dropping in a Player nodule helps with proportional scene design.<\/p><\/blockquote>\n<p>To add, in the <b>:: NWR :: Entities<\/b> subsection click the <b>Player<\/b> button [1] &#8211; if one is not already placed a red 2 x 2 x 0.5 metre\/unit, flattened cone [2], will appear at the 3D Cursors location. In Object Mode use the <b>Move<\/b> (<span class=\"shortcutkey\">G<\/span>) or <b>Rotate<\/b> (<span class=\"shortcutkey\">R<\/span>) manipulation widgets to then move or rotate the object into place.<\/p>\n<blockquote><p><b>Design note<\/b>: the Player module can be scaled in Blender but this is ignored by Nowhere to ensure all User avatars are the same size and don&#8217;t consume rendering resources disproportionately to render. Some additional points to note about using the Player entity;<\/p>\n<ul>\n<li>the Player entity faces forward along the <b>Y<\/b> axis (Local orientation) [i] &#8211; the back of the cone is the point, the front, the flat face.<\/li>\n<li>if they Player entity is placed flush with the ground plain (or other surface), in Nowhere the Users avatar actually appears 1 metre\/unit above this [ii]. In Blender this means the Player entity object represents a volume that&#8217;s <b>3H x 2W x 0.5D<\/b> (height\/width\/depth) rather than the <b>2H x 2W x 0.5D<\/b> indicated by the object itself. This difference may affect the feel of a Space if not compensated for.<\/li>\n<li>the Users &#8216;avatar&#8217; appears on the front face of the <b>Player<\/b> module in Nowhere.<\/li>\n<li>in Blender, if a spot is already available, additional Player spots will appear at the location of the last placed iteration.<\/li>\n<li>if several Player spots are available in a Space, User loading is randomised between them.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-player-position.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-player-position.jpg\" alt=\"Nowhere Player position\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The Player entity represents a number of key aspects of a Space so how it&#8217;s placed affects initial Space behaviour when the User loads, in particular its orientation [i] and height from the ground plain [ii].<\/i>\n<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-player.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-player.jpg\" alt=\"Nowhere Player entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The Player entity [2] is typically the first object to be added as it helps with scaling scenes in Blender so they&#8217;re correctly scaled for Nowhere &#8211; at least one is needed.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"teleporter\"><\/span>Teleporter<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Teleport<\/b> entity teleports or moves the User from one location to another on activation. In Blender the entity is a pair of primitive objects colour-coded primary yellow; a trigger volume [3], labelled <b>teleport<\/b>, and a destination marker [4], labelled <b>teleport_dest<\/b>. Neither is visible in Nowhere so a prompt [6] needs to place to indicate where the trigger volume is located [7]. Once the User is within activation distance the entity can then be initiated.<\/p>\n<blockquote><p><b>Design note<\/b>: the teleport entity objects are initially labelled <b>teleport<\/b> and <b>teleport_dest<\/b>, &#8220;<b><i>teleport<\/i><\/b>&#8221; being the identifier that indicates what the objects are and what links them together as a trigger \u00bb target pairing. To use multiple teleporters, their names will need to be updated to indicate secondary or additional groups without disturbing the underlying naming convention by, for example in the <b>Outliner<\/b> double-click each entry to add an incremental numerical append, i.e. <b>teleport<i>_2<\/i><\/b> and <b>teleport_dest<i>_2<\/i><\/b>, <b>teleport<i>_3<\/i><\/b> and <b>teleport_dest<i>_3<\/i><\/b> and so on.<\/p><\/blockquote>\n<p>To add, in <b>:: NWR :: Entities<\/b> click the <b>Teleporter<\/b> button [5]. A pair of mesh objects will appear at the 3D Cursors location; a 2 x 2 x 2 cube and a 2 x 2 x 0.5 flattened cone. In Object Mode use the manipulation widgets to move the objects into position, the cube being a trigger volume the player interacts with to initiate the operation, and the cone being the destination the User is transported to. To visually assist the User a marker or other visual aid should be placed indicating the approximate location of the trigger volume.<\/p>\n<blockquote><p><b>Design note<\/b>: the trigger volume can be resized in Object Mode or Edit Mode to loosely surround or encapsulate the visual prompt placed to guide the Player &#8211; <i>when resized or scaled the volume should retain its primitive convex shape and should not be edited further<\/i>. Once modified <b>Apply<\/b> then needs to be used &#8211; <b>Object \u00bb Apply \u00bb All Transforms<\/b>. Some additional points;<\/p>\n<ul>\n<li>the destination cone faces forward along the Y axis (Local orientation) &#8211; the back being the cones tip or point, the front being the flat face.<\/li>\n<li>where the destination cone is placed with bottom touching the ground, Users typically stand 1 metre\/unit above this in Nowhere.<\/li>\n<li>for ease of use the trigger volume should be large enough to be readily accessible.<\/li>\n<\/ul>\n<\/blockquote>\n<blockquote style=\"background-color: #fc0; color: #000;\"><p><b>Important<\/b>: teleport triggers are not distance or geometrically occluded so can be activated even though they, and their respective UI elements, may not be visible to the User. In other words, the &#8216;mouse over&#8217; action essentially &#8216;passes-through&#8217; meshes [iii].<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-teleport-trigger-occlusion.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-teleport-trigger-occlusion.jpg\" alt=\"Geometric occlusion\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Teleporter triggers can be activated through meshes [iii] &#8211; shown above, a trigger volume and its UI element are not visible to the User, who stands below the upper platform, but the volume can still be activated (&#8216;active selection&#8217; mouse cursor not shown).<\/i>\n<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-teleporter.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-teleporter.jpg\" alt=\"Teleport entity in Blender\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The <b>Teleporter<\/b> entity is a pair of objects; a trigger [3] and target [4]. To add click the <b>Teleporter<\/b> button [5] in the entities section.<\/i><\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-teleport-prompt.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-teleport-prompt.jpg\" alt=\"Teleport prompt\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>A prompt [6] (green &#8216;up&#8217; arrow) may be needed to indicate where the Teleport trigger volume is [7] (shown as Bounding Box in Blender for clarity) as the entity objects are not visible in Nowhere.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"screen\"><\/span>Screen<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Screen<\/b> entity is a placeholder, a flat surface that can be configured to display live video that&#8217;s broadcast into the Space. It can be resized and placed wherever needed. To add, in the <b>:: NWR :: Entities<\/b> section click the <b>Screen<\/b> button [8]. A plain with a placeholder material and image assignment will appear at the 3D Cursors location. Use the manipulation widgets to size and\/or position [9] the entity for viewing.<\/p>\n<blockquote style=\"background-color: #fc0; color: #000;\"><p><b>Important<\/b>: Screens are containers or <a href=\"https:\/\/urnowhere.notion.site\/Broadcast-Screen-Share-Streaming-d531361e28b44459bde2af89f769560e\" rel=\"noopener\" target=\"_blank\">editable areas<\/a> room admins can change live\/in real-time once a Space is published to Nowhere.<\/p><\/blockquote>\n<blockquote><p><b>Design note<\/b>: some additional points about Screen entities;<\/p>\n<ul>\n<li>broadcasts can be projected to available screens, or the scene background [iv]. In <b>Screen Properties<\/b> set the <b>Placement<\/b> to <b>Scene<\/b> (screen entity) or <b>Background<\/b> (skybox).\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-screen-project.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-screen-project.jpg\" alt=\"Broadcast projection\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Broadcasts can be projected onto available screens or the background depending on the <b>Screen properties<\/b> setting [iv].<\/i><\/p>\n<\/li>\n<li>multiple screens can be placed, the names of which can be modified to include a numerical append to uniquely identify each screen, e.g. <b>Screen<i>_1<\/i><\/b>, <b>Screen<i>_2<\/i><\/b>, <b>Screen<i>_3<\/i><\/b> and so on &#8211; <i>Blender appends an incremental value automatically upon duplication, i.e. *.001, *.002, etc.<\/i><\/li>\n<li>where several screens are used they will all display the same broadcast input (???).<\/li>\n<li>screen orientation is indicated by text, SCREEN, displayed on the entity itself so they should be positioned for that to be legible.<\/li>\n<\/ul>\n<\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-screen.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-screen.jpg\" alt=\"Nowhere Screen entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The <b>Screen<\/b> entity is a flat plain that broadcasts video into a Space. It doesn&#8217;t need any setup aside from being scaling and\/or positioned as required.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"content\"><\/span>Content<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>A <b>Content<\/b> entity is a placeholder, a flat plain that accommodates the inclusion, display or use of images, movies and audio files in a Space. To add, in <b>:: NWR :: Entities<\/b> click the <b>Content<\/b> button [10]. A flat plain carrying a placeholder image will appear centred at the 3D Cursors location [11]. Use the manipulation widgets to resize and\/or position the entity where it needs to be.<\/p>\n<blockquote style=\"background-color: #fc0; color: #000;\"><p><b>Important<\/b>: Content panels are <a href=\"https:\/\/urnowhere.notion.site\/Custom-Frames-dfe9c9932d8645ef8765d55f5e3ea787\" rel=\"noopener\" target=\"_blank\">containers or editable areas<\/a> room admins can change live or in real-time once a Space is published to Nowhere.<\/p><\/blockquote>\n<blockquote><p><b>Design note<\/b>: generally speaking the <b>Content<\/b> entity is designed to be a &#8216;point of interest&#8217; element for Spaces as it allows for the inclusion of media independently of the rooms design. In this way media can be managed on the fly after publishing to Nowhere. Some additional considerations for Content entity use;<\/p>\n<ul>\n<li>multiple Content panels can be placed in a scene, each able to display media independently of each other once published to Nowhere<\/li>\n<li>where multiple instances are used each needs a unique label &#8211; Blender appends an incremental value automatically upon duplication, i.e. *.001, *.002, etc., but this can be changed in the Outliner.<\/li>\n<li>media associated with the entity can be displayed on the panel itself or scene background. In <b>Content properties<\/b> set the <b>Placement<\/b> by clicking the <b>Scene<\/b> or <b>Background<\/b> buttons [v].\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-content-placement.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-content-placement.jpg\" alt=\"Content panel placement\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Media can be displayed on the Content panel itself or the scene background by setting the <b>Scene<\/b> or <b>Background<\/b> [v] option in <b>Content properties<\/b>.<\/i><\/li>\n<li>supported media formats; *.jpg, *.png, *.mp4 and *.mp3.<\/li>\n<li>the entities material\/image is a placeholder.<\/li>\n<li>orientation is indicated by text, CONTENT, displayed on the entity itself so should be positioned for that to be legible.<\/li>\n<\/ul>\n<\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-content.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-content.jpg\" alt=\"[descriptive alt image text here]\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>In the entities panel click the Content button [10] to include images [11], movies and audio in a scene.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"portal\"><\/span>Portal<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Portal<\/b> entity is similar to the Teleporter except it transports the User to another World wholly independent of the scene within which the Portal is placed. To add, in the <b>:: NWR :: Entities<\/b> panel click the <b>Portal<\/b> button [12]. An object shaped like a door will appear centred on the 3D Cursor [13]. Use the manipulation widgets to move, rotate (but not scale) into position.<\/p>\n<blockquote style=\"background-color: #fc0; color: #000;\"><p><b>Important<\/b>: the target or destination is set or configured by a rooms admin once a Space is uploaded to Nowhere.<\/p><\/blockquote>\n<blockquote><p><b>Design note<\/b>: in Blender, the Portal entity is simply a placeholder for what is another preconfigured effect in Nowhere. Some additional notes to keep in mind;<\/p>\n<ul>\n<li>as they may take a moment to trigger, portals should be placed to accommodate Users passing through the entity before activation and transport to the new destination.<\/li>\n<li>a portals appearance (currently) cannot be modified.<\/li>\n<\/ul>\n<\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-portal.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-portal.jpg\" alt=\"Nowhere Portal entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The <b>Portal<\/b> entity [12] teleports the User to another world. It can be moved [13] and rotated but generally shouldn&#8217;t be scaled to avoid issues.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"trigger\"><\/span>Trigger<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Trigger<\/b> entity is an event activator defined by the volume or area the entity object occupies, placed near another object for example, it can trigger an animation to start or stop depending on Users interaction with the entity. To add, in the <b>:: NWR :: Entities<\/b> section click the <b>Trigger<\/b> button [14]. A yellow cylinder will appear at the 3D Cursors location [15]. Using the manipulation widgets, move and\/or scale the volume into place depending on usage requirements, then in the <b>Trigger properties<\/b> panel, set the events the entity is to activate.<\/p>\n<blockquote><p><b>Design note<\/b>: an example of using a trigger entity would be as an area [vi] in front of an animated object [vii] that has two Action sequences; an &#8216;<i>on<\/i>&#8216; state and an &#8216;<i>off<\/i>&#8216; state. When the User enters the Trigger volume, based on the <b>Trigger properties<\/b> set, the &#8216;on&#8217; animation plays [viii], that can be set to <b>Loop<\/b> (checkbox), so long as the User remains inside the volume. Upon exiting the &#8216;off&#8217; sequence [ix] can be played (also optionally <b>Loop<\/b>), or the &#8216;on&#8217; action simply stopped. The same trigger can activate multiple events, objects or animations based on the properties set.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-trigger-properties.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entity-trigger-properties.jpg\" alt=\"Trigger properties\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>A simple Trigger entity set up that has the volume [vi] near an object [vii] that is triggered to play [viii] or stop [ix] based on the properties set in the control panel.<\/i><\/p>\n<p>Additional points;<\/p>\n<ul>\n<li>setting the <b>Broadcasting<\/b> option to either <b>Local<\/b> or <b>Global<\/b> makes the triggered event visible to the User activating it or everyone in the scene.<\/li>\n<\/ul>\n<\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-trigger.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-trigger.jpg\" alt=\"Nowhere Trigger entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The Trigger entity [14] is a volume that can be used to activate animations and other effects based on where it&#8217;s placed [15] and what it triggers.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"linkblock\"><\/span>LinkBlock<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>A <b>LinkBlock<\/b> is a trigger volume that opens another application when clicked or activated by the User, a volume can be placed around a prompt, that when clicked, opens a particular page or website. To add, in the <b>:: NWR :: Entities<\/b> section click the <b>LinkBlock<\/b> button. A large light-grey cube will appear centred on the 3D Cursors location. Using the manipulation tools, move, rotate or scale the volume into position as required.<\/p>\n<blockquote style=\"background-color: #fc0; color: #000;\"><p><b>Important<\/b>: the target or destination of a <b>LinkBlock<\/b> is set or configured by a rooms admin once a Space is uploaded to Nowhere.<\/p><\/blockquote>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-linkblock.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-linkblock.jpg\" alt=\"Nowhere LinkBlock entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The LinkBlock [16] is a trigger volume [17] similar to other entities that can be used to activate an event. It can also be scaled to fit any visual prompts as might be needed for User engagement.<\/i><\/p>\n<h3><span class=\"ez-toc-section\" id=\"seat\"><\/span>Seat<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <b>Seat<\/b> entity is a volume or area within which the User essentially &#8216;sits&#8217; or is &#8216;locked&#8217; in place, unaffected by the scene (gravity or friction in particular). To add, in <b>:: NWR :: Entities<\/b> click the <b>Seat<\/b> button [18]. A pink cube [19] will appear centred  on the 3D Cursor. Use the manipulation widgets to position, move and\/or rotate, as needed.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-seat.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/nowhere\/nowhere-entities-seat.jpg\" alt=\"Nowhere Seat entity\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The Seat [18] entity [19] locks the User in place so they unaffected by the scenes gravity or movement properties.<\/i><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":7563,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34,1006,1001,230],"tags":[622,120,990,1020,802,1007,1002,637,1010,1003,948],"class_list":["post-7552","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-metaverse","category-nowhere-metaverse","category-tutorials","tag-animation","tag-blender","tag-collision","tag-entities","tag-gltf","tag-metaverse","tag-nowhere","tag-rooms","tag-spaces","tag-toolkit","tag-trigger"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/7552","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/comments?post=7552"}],"version-history":[{"count":79,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/7552\/revisions"}],"predecessor-version":[{"id":7711,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/7552\/revisions\/7711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/7563"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=7552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=7552"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=7552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}