Пример #1
0
    public void TestTransformKernelUpdate()
    {
        //Arrange
        DCLBuilderInWorldEntity entity = entityHandler.CreateEmptyEntity(scene, Vector3.zero, Vector3.zero);

        //Act
        biwBridge.EntityTransformReport(entity.rootEntity, scene);

        //Assert
        CheckMessageReceived();
    }
Пример #2
0
    private void ReportTransform()
    {
        if (DCLTime.realtimeSinceStartup >= nextTimeToUpdateTransform)
        {
            foreach (DCLBuilderInWorldEntity entity in selectedEntities)
            {
                builderInWorldBridge.EntityTransformReport(entity.rootEntity, sceneToEdit);
            }

            nextTimeToUpdateTransform = DCLTime.realtimeSinceStartup + msBetweenTransformUpdates / 1000f;
        }
    }
Пример #3
0
    public void ReportTransform(bool forceReport = false)
    {
        foreach (DCLBuilderInWorldEntity entity in selectedEntities)
        {
            if (!entity.HasMovedSinceLastReport() && !forceReport)
            {
                return;
            }
            builderInWorldBridge.EntityTransformReport(entity.rootEntity, sceneToEdit);
            entity.PositionReported();
        }

        lastTransformReportTime = DCLTime.realtimeSinceStartup;
    }
Пример #4
0
    public void CreateFloor(CatalogItem floorSceneObject)
    {
        Vector3 initialPosition = new Vector3(ParcelSettings.PARCEL_SIZE / 2, 0, ParcelSettings.PARCEL_SIZE / 2);

        Vector2Int[] parcelsPoints = sceneToEdit.sceneData.parcels;

        foreach (Vector2Int parcel in parcelsPoints)
        {
            DCLBuilderInWorldEntity decentralandEntity = biwCreatorController.CreateSceneObject(floorSceneObject, false, true);
            decentralandEntity.rootEntity.OnShapeUpdated += OnFloorLoaded;
            decentralandEntity.transform.position         = WorldStateUtils.ConvertPointInSceneToUnityPosition(initialPosition, parcel);
            dclBuilderMeshLoadIndicatorController.ShowIndicator(decentralandEntity.rootEntity.gameObject.transform.position, decentralandEntity.rootEntity.entityId);

            GameObject floorPlaceHolder = GameObject.Instantiate(floorPrefab, decentralandEntity.rootEntity.gameObject.transform.position, Quaternion.identity);
            floorPlaceHolderDict.Add(decentralandEntity.rootEntity.entityId, floorPlaceHolder);
            builderInWorldBridge?.EntityTransformReport(decentralandEntity.rootEntity, sceneToEdit);
        }

        builderInWorldEntityHandler.DeselectEntities();
        lastFloorCalalogItemUsed = floorSceneObject;
    }