diff --git a/Assets/Dojo/.DS_Store b/Assets/Dojo/.DS_Store index dfe7d526..88b96c13 100644 Binary files a/Assets/Dojo/.DS_Store and b/Assets/Dojo/.DS_Store differ diff --git a/Assets/Dojo/Plugins/iOS/libdojo_c.a.meta b/Assets/Dojo/Plugins/iOS/libdojo_c.a.meta new file mode 100644 index 00000000..76019109 --- /dev/null +++ b/Assets/Dojo/Plugins/iOS/libdojo_c.a.meta @@ -0,0 +1,27 @@ +fileFormatVersion: 2 +guid: 7553a8a1ac5234dce9c952fca2f06e59 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Dojo/Plugins/iOS/libdojo_c.dylib.meta b/Assets/Dojo/Plugins/iOS/libdojo_c.dylib.meta index 538964cc..1e2876f7 100644 --- a/Assets/Dojo/Plugins/iOS/libdojo_c.dylib.meta +++ b/Assets/Dojo/Plugins/iOS/libdojo_c.dylib.meta @@ -11,6 +11,26 @@ PluginImporter: isExplicitlyReferenced: 0 validateReferences: 1 platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 1 + Exclude Linux64: 1 + Exclude OSXUniversal: 1 + Exclude WebGL: 1 + Exclude Win: 1 + Exclude Win64: 1 + Exclude iOS: 0 + - first: + Android: Android + second: + enabled: 0 + settings: + AndroidSharedLibraryType: Executable + CPU: ARMv7 - first: Any: second: @@ -19,15 +39,44 @@ PluginImporter: - first: Editor: Editor second: - enabled: 1 + enabled: 0 settings: + CPU: AnyCPU DefaultValueInitialized: true + OS: AnyOS + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: None - first: Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: None + - first: + iPhone: iOS second: enabled: 1 settings: + AddToEmbeddedBinaries: false CPU: AnyCPU + CompileFlags: + FrameworkDependencies: userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Dojo/Runtime/Starknet/FieldElement.cs b/Assets/Dojo/Runtime/Starknet/FieldElement.cs index 672885db..7be580a3 100644 --- a/Assets/Dojo/Runtime/Starknet/FieldElement.cs +++ b/Assets/Dojo/Runtime/Starknet/FieldElement.cs @@ -56,23 +56,20 @@ public FieldElement(string hex) public FieldElement(dojo.FieldElement fieldElement) { - inner = fieldElement; + // We don't want to refer to the same memory as the original field element. + // As we might want to free it - potentially slower + // TODO: benchmark copies? + fieldElement.data.CopyTo(inner.data); } - public FieldElement(byte[] bytes) + public FieldElement(Span bytes) { if (bytes.Length != 32) { throw new ArgumentException("Byte array must be 32 bytes.", nameof(bytes)); } - unsafe - { - fixed (byte* ptr = &inner._data[0]) - { - Marshal.Copy(bytes, 0, (IntPtr)ptr, bytes.Length); - } - } + bytes.CopyTo(inner.data); } // This handles BigIntegers as well as primitive types diff --git a/Assets/Dojo/Runtime/Torii/ToriiClient.cs b/Assets/Dojo/Runtime/Torii/ToriiClient.cs index 0700c381..fec87e4d 100644 --- a/Assets/Dojo/Runtime/Torii/ToriiClient.cs +++ b/Assets/Dojo/Runtime/Torii/ToriiClient.cs @@ -87,7 +87,6 @@ public List Entities(dojo.Query query) for (var i = 0; i < (int)result._ok.data_len; i++) { entities.Add(new Entity(result._ok.data[i])); - dojo.entity_free(&result._ok.data[i]); } dojo.carray_free(result._ok.data, result._ok.data_len); @@ -180,7 +179,7 @@ private void RegisterEntityStateUpdateEvent(dojo.FieldElement[] entities, bool d { mappedModels[i] = new Model(models.data[i]); // cleanup model - dojo.model_free(&models.data[i]); + // dojo.model_free(&models.data[i]); } // only run this when in unity play mode diff --git a/Assets/Spawn And Move/Scenes/SampleScene.unity b/Assets/Spawn And Move/Scenes/SampleScene.unity index 263e6fdf..56b3a243 100644 --- a/Assets/Spawn And Move/Scenes/SampleScene.unity +++ b/Assets/Spawn And Move/Scenes/SampleScene.unity @@ -453,9 +453,9 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: masterPrivateKey: 0x1800000000300000180000000000030000000000003006001800006600 - masterAddress: 0x517ececd29116499f4a1b64b094da79ba08dfd54a3edaa316134c41f8160973 + masterAddress: 0x6162896d1d7ab204c7ccac6dd5f8e9e7c25ecd5ae4fcb4ad32e57786bb46e03 worldManager: {fileID: 2019443015} - worldActionsAddress: 0x3e274b7d85fd0415bec56a5d831c3854f7308bbb26d486993cfc49e5a5fb788 + worldActionsAddress: 0x297bde19ca499fd8a39dd9bedbcd881a47f7b8f66c19478ce97d7de89e6112e --- !u!4 &998234501 Transform: m_ObjectHideFlags: 0