mirror of
https://github.com/RaindropViewer/RaindropViewer.git
synced 2026-07-27 22:11:39 +00:00
a final checkpoint before I try to update LMV lib.
This commit is contained in:
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 95462efaa5b0f3a4cbdae982380e7a3b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -49,10 +49,7 @@ namespace Raindrop.Presenters
|
||||
public TMP_Text credError;
|
||||
#endregion
|
||||
|
||||
#region internal representations
|
||||
|
||||
private readonly string INIT_USERNAME = "username";
|
||||
private readonly string INIT_PASSWORD = "password";
|
||||
#region internal representations
|
||||
private Settings s;
|
||||
|
||||
public string Username
|
||||
|
||||
@@ -30,26 +30,34 @@ namespace Raindrop.Presenters
|
||||
{
|
||||
mainThread = System.Threading.Thread.CurrentThread;
|
||||
//instance.Client.Objects.ObjectUpdate += ObjectsOnObjectUpdate; //prims, foilage, attachments (for those that are static and we-just-saw-it)
|
||||
instance.Client.Objects.TerseObjectUpdate += ObjectsOnTerseObjectUpdate; //prims, avatars (for those that move often and hap-hazardly)
|
||||
//instance.Client.Objects.TerseObjectUpdate += ObjectsOnTerseObjectUpdate; //prims, avatars (for those that move often and hap-hazardly)
|
||||
}
|
||||
|
||||
private void ObjectsOnTerseObjectUpdate(object sender, TerseObjectUpdateEventArgs e)
|
||||
{
|
||||
GameObject obj;
|
||||
lock (objectsLock)
|
||||
{
|
||||
objects.TryGetValue(e.Prim.ID, out obj);
|
||||
|
||||
if (obj != null)
|
||||
// if (isOnMainThread())
|
||||
// {
|
||||
lock (objectsLock)
|
||||
{
|
||||
SetPrimTransformsOnMainThread(e.Prim, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
objects[e.Prim.ID] = RezNewObject(e.Prim);
|
||||
|
||||
}
|
||||
}
|
||||
GameObject obj;
|
||||
objects.TryGetValue(e.Prim.ID, out obj);
|
||||
if (obj != null)
|
||||
{
|
||||
SetPrimTransformsOnMainThread(e.Prim, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
RezNewObjectOnMainThread(e.Prim);
|
||||
objects[e.Prim.ID] = obj;
|
||||
}
|
||||
}
|
||||
// } else
|
||||
// {
|
||||
// UnityMainThreadDispatcher.Instance().Enqueue(() =>
|
||||
// {
|
||||
// ObjectsOnTerseObjectUpdate(sender, e);
|
||||
// });
|
||||
// }
|
||||
}
|
||||
|
||||
private void ObjectsOnObjectUpdate(object sender, PrimEventArgs e)
|
||||
@@ -92,7 +100,7 @@ namespace Raindrop.Presenters
|
||||
|
||||
if (primGO == null)
|
||||
{
|
||||
primGO = RezNewObject(e.Prim);
|
||||
RezNewObjectOnMainThread(e.Prim);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -103,10 +111,29 @@ namespace Raindrop.Presenters
|
||||
}
|
||||
}
|
||||
|
||||
private GameObject RezNewObject(Primitive e)
|
||||
|
||||
private void RezNewObjectOnMainThread(Primitive e)
|
||||
{
|
||||
|
||||
Debug.LogError("fixme");
|
||||
// GameObject go = new GameObject();
|
||||
// if (isOnMainThread())
|
||||
// {
|
||||
// RezNewObject(e, out go);
|
||||
//
|
||||
// } else
|
||||
// {
|
||||
// UnityMainThreadDispatcher.Instance().Enqueue(() =>
|
||||
// {
|
||||
// RezNewObjectOnMainThread(e, out goo);
|
||||
// });
|
||||
// }
|
||||
// goo = go;
|
||||
}
|
||||
|
||||
//make sure to run this only on Main thread.
|
||||
private void RezNewObject(Primitive e, out GameObject go)
|
||||
{
|
||||
GameObject primGO = new GameObject();
|
||||
// Debug.Log("newly seen obj. rezzing " + e.Prim.ID);
|
||||
if (e.Text != "" || e.Text != null)
|
||||
{
|
||||
// Debug.Log("prim has no props. " + e.Prim.ID); //this is for most prims.
|
||||
@@ -116,20 +143,10 @@ namespace Raindrop.Presenters
|
||||
Debug.Log("prim has property, but no name . " + e.ID); //i have never seen this before.
|
||||
}
|
||||
|
||||
|
||||
if (isOnMainThread())
|
||||
{
|
||||
primGO = CreatePrimGameObject(e);
|
||||
objects[e.ID] = primGO;
|
||||
return primGO;
|
||||
} else
|
||||
{
|
||||
UnityMainThreadDispatcher.Instance().Enqueue(() =>
|
||||
{
|
||||
RezNewObject(e);
|
||||
});
|
||||
}
|
||||
return primGO;
|
||||
go = CreatePrimGameObject(e);
|
||||
//objects[e.ID] = primGO;
|
||||
//return primGO;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
+509
-9184
File diff suppressed because it is too large
Load Diff
@@ -31,9 +31,6 @@ namespace Raindrop.Tests
|
||||
[TestFixture()]
|
||||
public class RaindropIntegrationTests
|
||||
{
|
||||
private bool loggedin;
|
||||
private bool testfail = false;
|
||||
|
||||
private RaindropNetcom netcom { get { return instance.Netcom; } }
|
||||
private RaindropInstance instance { get { return ServiceLocator.ServiceLocator.Instance.Get<RaindropInstance>(); } }
|
||||
|
||||
|
||||
@@ -713,7 +713,7 @@ PlayerSettings:
|
||||
additionalIl2CppArgs:
|
||||
scriptingRuntimeVersion: 1
|
||||
gcIncremental: 1
|
||||
assemblyVersionValidation: 1
|
||||
assemblyVersionValidation: 0
|
||||
gcWBarrierValidation: 0
|
||||
apiCompatibilityLevelPerPlatform:
|
||||
Android: 6
|
||||
|
||||
Reference in New Issue
Block a user