Teilen Sie Ihre Erfahrunge und Wünsche mit uns und anderen Usern!

0
Fixed

Unity Editor NullReferenceException when clicking on GameObjects

AndreS vor 2 Jahren in realvirtual.io Starter and Professional aktualisiert von Support vor 2 Jahren 3

Hello,

i am experiencing NullReferenceExceptions and out of Bounds - Debug.LogErrors in the Unity Editor with the Game4Automation Professional Package installed.

Steps to recreate the behaviour are 

- take a empty project

- import the G4A Professional 2020.15 package

- click on the "PlasticBox" Gameobject

You will be flooded with following errors:

Image 548


Retrieving array element that was out of bounds
UnityEditor.SerializedProperty:GetArrayElementAtIndex (int)
NaughtyAttributes.Editor.ReorderableListPropertyDrawer/<>c__DisplayClass6_0:b__2 (int) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/ReorderableListPropertyDrawer.cs:78)
UnityEditorInternal.ReorderableList:CacheIfNeeded ()
UnityEditorInternal.ReorderableList:GetListElementHeight ()
UnityEditorInternal.ReorderableList:DoLayoutList ()
NaughtyAttributes.Editor.ReorderableListPropertyDrawer:OnGUI_Internal (UnityEngine.Rect,UnityEditor.SerializedProperty,UnityEngine.GUIContent) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/ReorderableListPropertyDrawer.cs:89)
NaughtyAttributes.Editor.SpecialCasePropertyDrawerBase:OnGUI (UnityEngine.Rect,UnityEditor.SerializedProperty) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/SpecialCasePropertyDrawerBase.cs:32)
NaughtyAttributes.Editor.NaughtyEditorGUI:PropertyField_Implementation (UnityEngine.Rect,UnityEditor.SerializedProperty,bool,NaughtyAttributes.Editor.NaughtyEditorGUI/PropertyFieldFunction) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/Utility/NaughtyEditorGUI.cs:47)
NaughtyAttributes.Editor.NaughtyEditorGUI:PropertyField_Layout (UnityEditor.SerializedProperty,bool) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/Utility/NaughtyEditorGUI.cs:29)
NaughtyAttributes.Editor.NaughtyInspector:DrawSerializedProperties () (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/NaughtyInspector.cs:87)
NaughtyAttributes.Editor.NaughtyInspector:OnInspectorGUI () (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/NaughtyInspector.cs:47)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)


NullReferenceException: Object reference not set to an instance of an object
UnityEditor.PropertyHandler.GetHeight (UnityEditor.SerializedProperty property, UnityEngine.GUIContent label, System.Boolean includeChildren) (at <3371b3e2e5754acd87e600e068350da5>:0)
UnityEditor.EditorGUI.GetPropertyHeightInternal (UnityEditor.SerializedProperty property, UnityEngine.GUIContent label, System.Boolean includeChildren) (at <3371b3e2e5754acd87e600e068350da5>:0)
UnityEditor.EditorGUI.GetPropertyHeight (UnityEditor.SerializedProperty property, UnityEngine.GUIContent label, System.Boolean includeChildren) (at <3371b3e2e5754acd87e600e068350da5>:0)
UnityEditor.EditorGUI.GetPropertyHeight (UnityEditor.SerializedProperty property) (at <3371b3e2e5754acd87e600e068350da5>:0)
NaughtyAttributes.Editor.ReorderableListPropertyDrawer+<>c__DisplayClass6_0.b__2 (System.Int32 index) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/ReorderableListPropertyDrawer.cs:78)
UnityEditorInternal.ReorderableList.CacheIfNeeded () (at <3371b3e2e5754acd87e600e068350da5>:0)
UnityEditorInternal.ReorderableList.GetListElementHeight () (at <3371b3e2e5754acd87e600e068350da5>:0)
UnityEditorInternal.ReorderableList.DoLayoutList () (at <3371b3e2e5754acd87e600e068350da5>:0)
NaughtyAttributes.Editor.ReorderableListPropertyDrawer.OnGUI_Internal (UnityEngine.Rect rect, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/ReorderableListPropertyDrawer.cs:89)
NaughtyAttributes.Editor.SpecialCasePropertyDrawerBase.OnGUI (UnityEngine.Rect rect, UnityEditor.SerializedProperty property) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/PropertyDrawers_SpecialCase/SpecialCasePropertyDrawerBase.cs:32)
NaughtyAttributes.Editor.NaughtyEditorGUI.PropertyField_Implementation (UnityEngine.Rect rect, UnityEditor.SerializedProperty property, System.Boolean includeChildren, NaughtyAttributes.Editor.NaughtyEditorGUI+PropertyFieldFunction propertyFieldFunction) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/Utility/NaughtyEditorGUI.cs:47)
NaughtyAttributes.Editor.NaughtyEditorGUI.PropertyField_Layout (UnityEditor.SerializedProperty property, System.Boolean includeChildren) (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/Utility/NaughtyEditorGUI.cs:29)
NaughtyAttributes.Editor.NaughtyInspector.DrawSerializedProperties () (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/NaughtyInspector.cs:87)
NaughtyAttributes.Editor.NaughtyInspector.OnInspectorGUI () (at Assets/game4automation/private/Tools/NaughtyAttributes/Editor/NaughtyInspector.cs:47)
UnityEditor.UIElements.InspectorElement+<>c__DisplayClass59_0.b__0 () (at :0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)




My Setup:


- Unity 2020.3.33f1 LTS ( this also occures at the newest released Unity 2021.3 LTS Version )

- an empty Project

What did i try?

- Scripting Define Symbols are set

Image 549

- the "game4automation -> apply standard settings" doesnt change anything

- deleting the current Version of NaughtyAttributes in the folder "Assets/game4automation/private/Tools" and importing the current release of NaughtyAttributes of github to the project

Everything is working as expected in old LTS Versions, like Unity 2020.3.19.

Antwort
Support vor 2 Jahren

Hi, thanks for the feedback. So it seems that it was indeed a Unity bug.

0
Beantwortet

Navigation in Game Modus

Tobias Berle vor 2 Jahren in realvirtual.io Starter and Professional aktualisiert vor 2 Jahren 3

Hallo Herr Strigl,


in meinem Projekt habe ich das game4automation asset hinzugefügt. Allerdings kann ich weder navigieren, noch reagiert der „Game“ Modus auf meine Mausklicks.

Wenn ich unter dem „Event System“ die „Add Default Input Modules“ lade wird mir folgender Fehler angezeigt. Wenn ich dies wie beschrieben ersetzte, funktionieren die Mausklicks in der „Game“ View aber bewegen kann ich mich immer noch nicht.

Image 544

Image 545

Image 546

Antwort
Support vor 2 Jahren

Game4Automation is using the old input system and it should work out off the box in an empty project. You don't need to add anything else - besides game4automation into your scene. Please check if your project settings are like this - specially active input handling and scripting define symbols:

0
Beantwortet

Device Mapping in ABB

Bo Adam vor 2 Jahren aktualisiert vor 2 Jahren 14

Hello,

I am working on connecting ABB robotstudio to game4automation, and I have a question about the device mapping. I have device mappings that go to +-120, How can I make this in robotstudio? I can only see it go up to 9 and then it becomes 1,1, 1,2 etc, does this count as 11,12 etc? 

Another question, Do I have to create empties in robotstudio for every missing device map? I saw the page but didnt understand why you had to create that much empties.

Antwort
Support vor 2 Jahren

Please try do do this. I am not able to test because currently I have not an ABB Robotstudio with your configuration. Hope it works.

Add Byte to Origin Data Type 

and replace Line 167 following in ABBRobotStudioInterface by this:

if (signal.OriginDataType.ToUpper() != "BYTE")
{
if (signal.GetType() == typeof(PLCInputInt) || signal.GetType() == typeof(PLCOutputInt))
{
if (lastbit)
posmemory = posmemory + 1;
bit = 0;
shm.bit = 0;
lastbit = false;
signal.Comment = $"MD{posmemory}";
accessor.Write(posheader, (byte) 10);
shm.type = SIGNALTYPE.INT;
posmemory = posmemory + 4;
}
}
else
{ if (signal.GetType() == typeof(PLCInputInt) || signal.GetType() == typeof(PLCOutputInt))
{
if (lastbit)
posmemory = posmemory + 1;
bit = 0;
shm.bit = 0;
lastbit = false;
signal.Comment = $"M{posmemory}";
accessor.Write(posheader, (byte) 8);
shm.type = SIGNALTYPE.BYTE;
posmemory = posmemory + 1;
}
}
0
Beantwortet

Hello Thomas,can I build an Android APP?

Stupiddog vor 2 Jahren in General Questions aktualisiert vor 2 Jahren 3

Hello Thomas,I connect my mobilephone with my PC through WIFI。But when I open PLCSIM advanced Interface in Android it does not appear a black window,so I can't connect my virtual PLC。If I want control my virtual PLC in Android what should I do?Can I do it?Thank you Thomas。

Image 536


Image 535

Image 537

Antwort
Support vor 2 Jahren

Hi, not all Interfaces are working on all Platforms. Unity is cross compiling to the destination platform but sometimes we need windows specific DLLs. PLCSim Advanced is not working on Android. But you could connect to it using the S7 interface. More information about platform limitations can be found here:

https://game4automation.com/documentation/current/platforms.html#Known-platform-limitations


Best regards

Thomas

0
Beantwortet

Error in opening secure channel [BadEncodingLimitsExceeded]

Juliano Cortes vor 2 Jahren in OPCUA4Unity aktualisiert von Support vor 3 Monaten 3

I have this problem when I try connecting Prosys OPC UA server simulator: OPCUA Interface - Error in opening secure channel [BadEncodingLimitsExceeded]

I can connect with OPC watch like in game4automation documentation. Whats wrong?

Image 533

Image 534

Antwort
Support vor 3 Monaten
0
Fertiggestellt

game4automation Starter Edition Questions

game4automation用户 vor 2 Jahren aktualisiert von Support vor 2 Jahren 1

Hi Thomas, I'm having a problem with game4automation Starter Edition. After I connect to the S7-1200 and import the .sdf file, but the connection icon is gray, not colored as in the video, but I am following the video, is the starter version supporting the communication of the S7-1200? And how do I complete the communication, I have been worried about this for several days.I would very much like to have your help.

Image 532

Image 531

Antwort
Support vor 2 Jahren

Hard to say what your problem is. Yes for sure, Starter is supporting S7 interface. 

Is it an input or an output what you would like to use. Please make sure, that both are well outside the existing hardware IO adresses, otherwise the hardware status could overwrite the signals from the G4A S7 interface. Do you get any error messages in the console log. Please also check that your PLC is configured like described here:

https://game4automation.com/documentation/current/s7tcpip.html#Configuring-the-PLC

0
Beantwortet

Question about rotating transport surface

Bo Adam vor 2 Jahren in realvirtual.io Starter and Professional aktualisiert von Support vor 2 Jahren 2

Hello,

I am currently working on a project which uses a conveyor on a rotating axis. I got this all to work, but when the conveyor rotates the transport surface is in the wrong direction (It doesn't change with the rotation of the part) 

"Draaitafel" is the GameObject that rotates, it contains the transport surfaces (which are in the conveyor game object) and a frame +sensors. The drive script of the transport surfaces is made on the Conveyor gameobject. I have tried putting it on "Draaistation" but no success with that either.

Hope you can help! 

With kind regards,

Bo

0

Hello Thomas,I noticed PLCsim advanced Interface only support English name

Hello Thomas,I noticed PLCsim advanced Interface only support English name,when I input Chinese name it shows ???? in Unity and I could not use them。Could you support Chinese name in future?Most of people are not good at English in China,thank you Thomas。

Image 520

Image 521

0
Beantwortet

Integrating detailled hardware behavior models into Unity

unity vor 2 Jahren in realvirtual.io Starter and Professional aktualisiert von Support vor 2 Jahren 1

Good day to you,

We have been using your asset Game4Automation Professional for a few weeks now and are very impressed with its functionalities. We quickly found out that especially the interoperability between tools and the intransparency of different company landscapes make the biggest troubles.


We also use another VIBN tool that already provides many libraries and templates for behavior models of drives, for example. These are mapped in FBD or a similar language, and there is also an image of this as XML, which can apparently be used for the external VIBN tool's C# programming. How to use this, however, we neither know for the external tool nor for Game4Automation yet. In order not to have to create a new behavior model for the drives of our VIBN in Unity every time, it would be good if we could take over the existing models completely or at least only with small adjustments. Do you already have experience with this, or do you know customers who have to deal with the same problems?


After further research we came across FMI, among others, which is supported by G4A Pro. Is this interface the right one to integrate behavior models from, for example, a Sinamics S120 drive from Siemens into Unity?

Or do we always have to access a library of an external tool for this? We can't currently test the FMI export of the other VIBN tool because it costs extra, so we'd like to make sure we're on the right track before purchasing it.


Do you furthermore have experience whether component manufacturers share the behavior models of their products with customers (especially also as FMI)?

Antwort
Support vor 2 Jahren

Hi, 

FMI could be the future standard for behavioral model exchange, but currently it seems that you can't get FMUs of any component from the OEMs. And I'm pretty sure that you can't export FMUs from Simit, for example, and that Siemens doesn't provide FMUs for their own drives (Siemens is interested in selling Simit, not replacing it ;-)). Currently I would not rely on FMUs to replace own behavior models. Unfortunately, I don't see an industry accepted standard being available anytime soon. If you are a Simit user and have your own behavior models, then you can continue to use them and Simit along with Game4Automation.

I hope this helps, even though it may not be the answer I was hoping for.

Best regards

Thomas

0
Not a bug

OPCUA runs in player/editor but indicates "specified license not valid" in build (G4APro licensed)

Joel vor 2 Jahren in realvirtual.io Starter and Professional aktualisiert von Support vor 10 Monaten 10

In my application I use (this time) only the OPC UA connectivity of my G4A prof licensed installation. In player and editor all is working well but when I run a build the log shows "The specified license is not valid." and therefore makes no connection.

Antwort
Support vor 10 Monaten

Hi, I am in vacation until this Thursday. I think it will be best to look first into your project and to check. You can send us your NDA to info@game4automation.com and I can sign on Thursday morning.

Best regards

Thomas