Skip to content

Commit

Permalink
Merge branch 'release/v3.3.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
VaLiuM09 committed Nov 7, 2023
2 parents 3b09193 + cc0b0fa commit 2a77453
Show file tree
Hide file tree
Showing 25 changed files with 396 additions and 85 deletions.
15 changes: 14 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,19 @@
# Changelog - VR Builder

**v3.3.1 (2023/09/28 - Current)**
**v3.3.2 (2023/10/31 - Current)**

*[Added]*
- It is now possible to add proximity detection to VR Builder teleportation anchors. This means that the anchor will send a teleported event readable by VR Builder even if the user gets near it by continuous locomotion or walking, without teleporting. Click the "Add Teleportation Proximity Entry" button on the teleportation anchor to instantiate the necessary components.
- Added support for the Cognitive3D integration.
- Added drawer for selectable value between int and data property reference.

*[Changed]*
- The touchable property now recognizes touch from any direct interactor, not only from interactors parented to the user scene object.

*[Fixed]*
- Fixed issue when having punctuation in the name of a localization table.

**v3.3.1 (2023/09/28)**

*[Added]*
- Added auto-configuration options to VR Builder's custom Teleportation Area and Anchor components. You can now use the provided buttons to automatically configure the teleport interactable to work with the VR Builder rig, and, in the case of the Anchor, you have the option to set up the default anchor. Note that this functionality is no longer available on the Teleportation Property.
Expand Down
3 changes: 2 additions & 1 deletion Documentation/vr-builder-manual.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ It is also possible to add other `Process Scene Object`s on the rig in order to

### Process Editor

The process editor lets you design the process of your VR application. You can open the process editor from `Tools > VR Builder > Open Process Editor` or `Window > VR Builder > Process Editor`. The process editor for the demo scene should look like this.
The process editor lets you design the process of your VR application. You can open the process editor from `Tools > VR Builder > Process Editor` or `Window > VR Builder > Process Editor`. The process editor for the demo scene should look like this.

![Process editor](images/workflow-editor.png)

Expand Down Expand Up @@ -958,6 +958,7 @@ Lastly, there are some [step-by-step tutorials](https://www.mindport.co/vr-build
VR Builder is based on the open source edition of the [Innoactive Creator](https://www.innoactive.io/creator). While Innoactive helps enterprises to scale VR training, we adopted this tool to provide value for smaller content creators looking to streamline their VR development processes.

Like Innoactive, we believe in the value of open source and will continue to support this approach together with them and the open source community.
This means you are welcome to contribute to the [VR Builder GitHub repositories](https://github.com/MindPort-GmbH).

## Contact and Support

Expand Down
Binary file modified Documentation/vr-builder-manual.pdf
Binary file not shown.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,8 @@ You can find comprehensive documentation in the [Documentation](/Documentation/v

VR Builder is based on the open source edition of the [Innoactive Creator](https://www.innoactive.io/creator). While Innoactive helps enterprises to scale VR training, we adopted this tool to provide value for content creators looking to streamline their VR development processes.

Like Innoactive, we believe in the value of open source and will continue to support this approach together with them and the open source community.
Like Innoactive, we believe in the value of open source and will continue to support this approach together with them and the open source community.
This means you are welcome to contribute to the [VR Builder GitHub repositories](https://github.com/MindPort-GmbH).

## Contact and Support

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
using UnityEditor;
using VRBuilder.Core.ProcessUtils;
using VRBuilder.Editor.UI.Drawers;

namespace VRBuilder.Editor.Core.UI.Drawers
{
/// <summary>
/// Implementation of <see cref="ProcessVariableDrawer{T}"/> that draws int variables.
/// </summary>
[DefaultProcessDrawer(typeof(ProcessVariable<int>))]
internal class IntProcessVariableDrawer : ProcessVariableDrawer<int>
{
/// <inheritdoc/>
protected override int DrawConstField(int value)
{
return EditorGUILayout.IntField("", value);
}
}
}

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
using UnityEngine;
using Newtonsoft.Json;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using VRBuilder.Core.Utils;
using UnityEngine;
using UnityEngine.Scripting;
using VRBuilder.Core.Attributes;
using VRBuilder.Core.SceneObjects;
using VRBuilder.Core.Configuration;
using Object = UnityEngine.Object;
using VRBuilder.Core.ProcessUtils;
using UnityEngine.Scripting;
using VRBuilder.Core.Properties;
using System.Collections.Generic;
using VRBuilder.Core.SceneObjects;
using VRBuilder.Core.Utils;
using Object = UnityEngine.Object;

namespace VRBuilder.Core.Behaviors
{
Expand All @@ -22,7 +22,7 @@ public class ConfettiBehavior : Behavior<ConfettiBehavior.EntityData>
{
[DisplayName("Spawn Confetti")]
[DataContract(IsReference = true)]
public class EntityData : IBehaviorData
public class EntityData : IBehaviorData, IBehaviorExecutionStages
{
/// <summary>
/// Bool to check whether the confetti machine should spawn above the user or at the position of the position provider.
Expand All @@ -35,7 +35,7 @@ public class EntityData : IBehaviorData
/// Name of the process object where to spawn the confetti machine.
/// Only needed if "Spawn Above User" is not checked.
/// </summary>
#if CREATOR_PRO
#if CREATOR_PRO
[OptionalValue]
#endif
[DataMember]
Expand Down Expand Up @@ -63,23 +63,21 @@ public class EntityData : IBehaviorData
[DisplayName("Duration")]
public float Duration { get; set; }

/// <summary>
/// Activation mode of this behavior.
/// </summary>
/// <inheritdoc />
[DataMember]
public BehaviorExecutionStages ExecutionStages { get; set; }

public GameObject ConfettiMachine { get; set; }

public Metadata Metadata { get; set; }

[IgnoreDataMember]
public string Name
{
get
{
string positionProvider = "user";
if(IsAboveUser == false)
if (IsAboveUser == false)
{
positionProvider = PositionProvider.IsEmpty() ? "[NULL]" : PositionProvider.Value.GameObject.name;
}
Expand Down Expand Up @@ -196,7 +194,7 @@ public override void End()
{
if (ShouldExecuteCurrentStage(Data))
{
foreach(GameObject confettiMachine in confettiMachines)
foreach (GameObject confettiMachine in confettiMachines)
{
Object.Destroy(confettiMachine);
}
Expand All @@ -206,7 +204,7 @@ public override void End()
}

/// <inheritdoc />
public override void FastForward() {}
public override void FastForward() { }

private bool ShouldExecuteCurrentStage(EntityData data)
{
Expand Down Expand Up @@ -244,7 +242,7 @@ public override IStageProcess GetActivatingProcess()
{
return new EmitConfettiProcess(Data, BehaviorExecutionStages.Activation);
}

/// <inheritdoc />
public override IStageProcess GetDeactivatingProcess()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
using UnityEngine;
using Newtonsoft.Json;
using System.Collections;
using System.Runtime.Serialization;
using UnityEngine;
using UnityEngine.Scripting;
using VRBuilder.Core.Attributes;
using VRBuilder.Core.Audio;
using VRBuilder.Core.Configuration;
using VRBuilder.Core.Configuration.Modes;
using Newtonsoft.Json;
using UnityEngine.Scripting;

namespace VRBuilder.Core.Behaviors
{
Expand All @@ -21,19 +21,16 @@ public class PlayAudioBehavior : Behavior<PlayAudioBehavior.EntityData>, IOption
/// The "play audio" behavior's data.
/// </summary>
[DataContract(IsReference = true)]
public class EntityData : IBackgroundBehaviorData
public class EntityData : IBackgroundBehaviorData, IBehaviorExecutionStages
{
/// <summary>
/// An audio data that contains an audio clip to play.
/// </summary>
[DataMember]
public IAudioData AudioData { get; set; }

/// <summary>
/// A property that determines if the audio should be played at activation or deactivation (or both).
/// </summary>
/// <inheritdoc />
[DataMember]
[DisplayName("Execution stages")]
public BehaviorExecutionStages ExecutionStages { get; set; }

/// <summary>
Expand All @@ -60,7 +57,7 @@ public string Name
{
string executionStages = "";

switch(ExecutionStages)
switch (ExecutionStages)
{
case BehaviorExecutionStages.Activation:
executionStages = " on activation";
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 2a77453

Please sign in to comment.