Created
December 4, 2019 12:47
-
-
Save Pranavpaharia/423f99d9157290b9093c2303b23f7e2a to your computer and use it in GitHub Desktop.
Maptilemanager.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Fill out your copyright notice in the Description page of Project Settings. | |
#include "SWP_MapTileManager.h" | |
#include "Components/StaticMeshComponent.h" | |
#include "Engine/StaticMesh.h" | |
#include "UObject/ConstructorHelpers.h" | |
#include "SWP_WorldPlayerPawn.h" | |
#include "Runtime/Renderer/Public/PrimitiveSceneInfo.h" | |
#include "Runtime/ImageWriteQueue/Public/ImageWriteBlueprintLibrary.h" | |
#include "Runtime/Engine/Public/HighResScreenshot.h" | |
#include "Runtime/ImageWriteQueue/Public/ImageWriteTask.h" | |
#include "Runtime/ImageWriteQueue/Public/ImageWriteQueue.h" | |
#include "Runtime/ImageWriteQueue/Public/ImagePixelData.h" | |
#include "HttpService.h" | |
#include "Runtime/AssetRegistry/Public/AssetRegistryModule.h" | |
#include "Runtime/ImageWrapper/Public/IImageWrapper.h" | |
#include "Runtime/ImageWrapper/Public/IImageWrapperModule.h" | |
#include "SWP_SaveManager.h" | |
#include "Kismet/GameplayStatics.h" | |
#include "SmartWorldPro.h" | |
class ASWP_WorldPlayerPawn; | |
class UImageWriteBlueprintLibrary; | |
class FImageWriteTask; | |
class IImageWriteQueue; | |
// Sets default values | |
ASWP_MapTileManager::ASWP_MapTileManager() | |
{ | |
struct FConstructorStatics | |
{ | |
ConstructorHelpers::FObjectFinderOptional<UStaticMesh> PlaneMesh; | |
FConstructorStatics() : PlaneMesh(TEXT("StaticMesh'/Engine/BasicShapes/Plane.Plane'")) | |
{ | |
} | |
}; | |
static FConstructorStatics ConstructorStatics; | |
// Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. | |
PrimaryActorTick.bCanEverTick = true; | |
// Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. | |
PrimaryActorTick.bCanEverTick = true; | |
ManagerRoot = CreateDefaultSubobject<USceneComponent>(TEXT("ManagerRoot")); | |
ManagerRoot = RootComponent; | |
plane00 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane00")); | |
plane00->SetupAttachment(ManagerRoot); | |
plane00->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane00->SetVisibility(false); | |
plane01 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane01")); | |
plane01->SetupAttachment(ManagerRoot); | |
plane01->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane01->SetVisibility(false); | |
plane02 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane02")); | |
plane02->SetupAttachment(ManagerRoot); | |
plane02->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane02->SetVisibility(false); | |
plane03 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane03")); | |
plane03->SetupAttachment(ManagerRoot); | |
plane03->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane03->SetVisibility(false); | |
plane04 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane04")); | |
plane04->SetupAttachment(ManagerRoot); | |
plane04->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane04->SetVisibility(false); | |
plane10 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane10")); | |
plane10->SetupAttachment(ManagerRoot); | |
plane10->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane10->SetVisibility(false); | |
plane11 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane11")); | |
plane11->SetupAttachment(ManagerRoot); | |
plane11->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane11->SetVisibility(false); | |
plane12 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane12")); | |
plane12->SetupAttachment(ManagerRoot); | |
plane12->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane12->SetVisibility(false); | |
plane13 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane13")); | |
plane13->SetupAttachment(ManagerRoot); | |
plane13->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane13->SetVisibility(false); | |
plane14 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane14")); | |
plane14->SetupAttachment(ManagerRoot); | |
plane14->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane14->SetVisibility(false); | |
plane20 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane20")); | |
plane20->SetupAttachment(ManagerRoot); | |
plane20->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane20->SetVisibility(false); | |
plane21 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane21")); | |
plane21->SetupAttachment(ManagerRoot); | |
plane21->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane21->SetVisibility(false); | |
plane22 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane22")); | |
plane22->SetupAttachment(ManagerRoot); | |
plane22->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane22->SetVisibility(false); | |
plane23 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane23")); | |
plane23->SetupAttachment(ManagerRoot); | |
plane23->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane23->SetVisibility(false); | |
plane24 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane24")); | |
plane24->SetupAttachment(ManagerRoot); | |
plane24->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane24->SetVisibility(false); | |
plane30 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane30")); | |
plane30->SetupAttachment(ManagerRoot); | |
plane30->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane30->SetVisibility(false); | |
plane31 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane31")); | |
plane31->SetupAttachment(ManagerRoot); | |
plane31->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane31->SetVisibility(false); | |
plane32 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane32")); | |
plane32->SetupAttachment(ManagerRoot); | |
plane32->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane32->SetVisibility(false); | |
plane33 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane33")); | |
plane33->SetupAttachment(ManagerRoot); | |
plane33->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane33->SetVisibility(false); | |
plane34 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane34")); | |
plane34->SetupAttachment(ManagerRoot); | |
plane34->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane34->SetVisibility(false); | |
plane40 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane40")); | |
plane40->SetupAttachment(ManagerRoot); | |
plane40->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane40->SetVisibility(false); | |
plane41 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane41")); | |
plane41->SetupAttachment(ManagerRoot); | |
plane41->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane41->SetVisibility(false); | |
plane42 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane42")); | |
plane42->SetupAttachment(ManagerRoot); | |
plane42->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane42->SetVisibility(false); | |
plane43 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane43")); | |
plane43->SetupAttachment(ManagerRoot); | |
plane43->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane43->SetVisibility(false); | |
plane44 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Plane44")); | |
plane44->SetupAttachment(ManagerRoot); | |
plane44->SetStaticMesh(ConstructorStatics.PlaneMesh.Get()); | |
plane44->SetVisibility(false); | |
static ConstructorHelpers::FObjectFinder<UMaterial> EngineTestMat(TEXT("Material'/Engine/EngineDebugMaterials/DebugMeshMaterial.DebugMeshMaterial'")); | |
static ConstructorHelpers::FObjectFinder<UMaterial> TileTestMat(TEXT("Material'/Game/SWPContent/Materials/Mat_Tile.Mat_Tile'")); | |
static ConstructorHelpers::FObjectFinder<UMaterialInstance>TileTestMatInst(TEXT("MaterialInstanceConstant'/Game/SWPContent/Materials/Mat_Tile_Inst1.Mat_Tile_Inst1'")); | |
if (EngineTestMat.Succeeded() && DEBUG_TILECOMPONENTS == 1) | |
{ | |
mStaticMesh = EngineTestMat.Object; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Earth Material Found")); | |
} | |
if (TileTestMatInst.Succeeded()) | |
{ | |
mTileInst = TileTestMatInst.Object; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tile Material Found")); | |
} | |
mapLat = 28.507878f; | |
mapLon = 77.085348f; | |
rows = 5; | |
columns = 5; | |
zoomLevel = 10; | |
qualityLevel = 2; | |
SaveTimer = 5.f; | |
currentSaveTimer = 0.f; | |
cacheTileMap.Reserve(120); | |
if (DEBUG_TILECOMPONENTS == 1) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Grid Rows: %s Units and Column: %s Units respectively"), *FString::FromInt(rows), *FString::FromInt(columns)); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("ZoomLevel Value: %s Units and QualityLevel: %s Units respectively"), *FString::FromInt(zoomLevel), *FString::FromInt(qualityLevel)); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("No Default Location Set. Loading Hard Coded Initial Location")); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Map Latitude : %f and Longitude : %f respectively"), mapLat, mapLon); | |
} | |
} | |
void ASWP_MapTileManager::PostInitializeComponents() | |
{ | |
Super::PostInitializeComponents(); | |
planes.Add(plane00); | |
planes.Add(plane01); | |
planes.Add(plane02); | |
planes.Add(plane03); | |
planes.Add(plane04); | |
planes.Add(plane10); | |
planes.Add(plane11); | |
planes.Add(plane12); | |
planes.Add(plane13); | |
planes.Add(plane14); | |
planes.Add(plane20); | |
planes.Add(plane21); | |
planes.Add(plane22); | |
planes.Add(plane23); | |
planes.Add(plane24); | |
planes.Add(plane30); | |
planes.Add(plane31); | |
planes.Add(plane32); | |
planes.Add(plane33); | |
planes.Add(plane34); | |
planes.Add(plane40); | |
planes.Add(plane41); | |
planes.Add(plane42); | |
planes.Add(plane43); | |
planes.Add(plane44); | |
this->Tags.Add(MapActorTag); | |
//float xbounds = plane00->Bounds.BoxExtent.X; | |
//float ybounds = plane00->Bounds.BoxExtent.Y; | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane X bounds %f") , xbounds); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane Y bounds %f"), ybounds); | |
// | |
//FVector pos = FVector(-4*xbounds, 0, xbounds); | |
//pos = FVector(0, 0, 0); | |
// | |
//plane00->SetRelativeLocation(pos); | |
//plane00->SetVisibility(true); | |
// | |
//mInstance = UMaterialInstanceDynamic::Create(mStaticMesh, this); | |
////mInstance = UMaterialInstanceDynamic::Create(plane00->GetStaticMesh()->GetMaterial(0), this); | |
//mInstance->SetVectorParameterValue("Color", FLinearColor::MakeRandomColor()); | |
//plane00->SetMaterial(0, mInstance); | |
//pos = FVector(-0.5f*xbounds, 1.5f* ybounds, 0); | |
////plane00->SetRelativeLocation(pos, false, nullptr, ETeleportType::None); | |
////plane00->SetRelativeRotation(FRotator(90,0,0),false,nullptr,ETeleportType::None); | |
//plane00->SetVisibility(true); | |
//mInstance = UMaterialInstanceDynamic::Create(mStaticMesh, this); | |
//mInstance->SetVectorParameterValue("Color", FLinearColor::MakeRandomColor()); | |
//ReferencePlane->SetMaterial(0, mInstance); | |
//ReferencePlane->SetRelativeScale3D(FVector(10, 10, 10)); | |
//ReferencePlane->SetRelativeLocation(FVector(0, 0, 0), false, nullptr, ETeleportType::None); | |
// | |
//for (int i = 0;i<planes.Num();i++) | |
//{ | |
// planes[i]->SetRelativeRotation(FRotator(0, 90, 0), false, nullptr, ETeleportType::None); | |
// //planes[i]->SetVisibility(true); | |
// mInstance = UMaterialInstanceDynamic::Create(mTileInst, this); | |
// mInstance->SetVectorParameterValue("Color", FLinearColor::MakeRandomColor()); | |
// planes[i]->SetMaterial(0, mInstance); | |
//} | |
} | |
// Called when the game starts or when spawned | |
void ASWP_MapTileManager::BeginPlay() | |
{ | |
Super::BeginPlay(); | |
//Init Save Game Object | |
InstantiateSaveGameObject(); | |
/*Get HUD Ref pointer*/ | |
HUDRef = Cast<AASWP_HUD>(GetWorld()->GetFirstPlayerController()->GetHUD()); | |
/*Set the Value of the Actor to Origin*/ //SetActorLocation(FVector(650, -400, 450), false, nullptr, ETeleportType::None); | |
SetActorLocation(FVector(0,0, 0), false, nullptr, ETeleportType::None); | |
/*Calculate the Center Tile ID Based on Zoom Level and MapLat And MapLon*/ | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
/*Generate Tile ID for all grid elements*/ | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
/*Create the Grid with the mentioned Rows and Colums*/ | |
CreateMapGrid(rows, columns); | |
/*Create Web Request based on Tile Data calculated for each tile*/ | |
CreateWebRequestForTiles(); | |
//FVector2D newVEc = LatLonToMeters(28.507878, 77.085348); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Center Tile in Meters is X: %f , Y : %f "), newVEc.X,newVEc.Y); | |
/*Rearrange the tile components based on the Mercater Projection Coordinates*/ | |
RearrangeGridElements(mapLat, mapLon, tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY); | |
//tileViewTimerDelegate = FTimerDelegate::CreateUObject(this, &ASWP_MapTileManager::CheckTileVisibleTimer); | |
// GetWorldTimerManager().SetTimer(tileViewTimerHandle,this, &ASWP_MapTileManager::CheckTileVisibleTimer, 0.5f, true); | |
} | |
void ASWP_MapTileManager::CreateWebRequestForTiles() | |
{ | |
//Request for Plane00 | |
FString str1; | |
str1 = FString::FromInt(tileStructureMap[plane00]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane00]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane00]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane00(tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"),*str1); | |
} | |
else | |
{ | |
//FString ThePath = FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
FString ThePath = str1; | |
LoadSavedTexturePlane00(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane01 | |
str1 = FString::FromInt(tileStructureMap[plane01]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane01]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane01]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane01(tileStructureMap[plane01]->ZoomLevel, tileStructureMap[plane01]->TileX, tileStructureMap[plane01]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane01(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane02 | |
str1 = FString::FromInt(tileStructureMap[plane02]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane02]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane02]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane02(tileStructureMap[plane02]->ZoomLevel, tileStructureMap[plane02]->TileX, tileStructureMap[plane02]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane02(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane03 | |
str1 = FString::FromInt(tileStructureMap[plane03]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane03]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane03]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane03(tileStructureMap[plane03]->ZoomLevel, tileStructureMap[plane03]->TileX, tileStructureMap[plane03]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane03(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane04 | |
str1 = FString::FromInt(tileStructureMap[plane04]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane04]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane04]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane04(tileStructureMap[plane04]->ZoomLevel, tileStructureMap[plane04]->TileX, tileStructureMap[plane04]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane04(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
//Request for Plane10 | |
str1 = FString::FromInt(tileStructureMap[plane10]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane10]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane10]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane10(tileStructureMap[plane10]->ZoomLevel, tileStructureMap[plane10]->TileX, tileStructureMap[plane10]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane10(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane11 | |
str1 = FString::FromInt(tileStructureMap[plane11]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane11]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane11]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane11(tileStructureMap[plane11]->ZoomLevel, tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane11(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane12 | |
str1 = FString::FromInt(tileStructureMap[plane12]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane12]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane12]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane12(tileStructureMap[plane12]->ZoomLevel, tileStructureMap[plane12]->TileX, tileStructureMap[plane12]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane12(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane13 | |
str1 = FString::FromInt(tileStructureMap[plane13]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane13]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane13]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane13(tileStructureMap[plane13]->ZoomLevel, tileStructureMap[plane13]->TileX, tileStructureMap[plane13]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane13(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane14 | |
str1 = FString::FromInt(tileStructureMap[plane14]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane14]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane14]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane14(tileStructureMap[plane14]->ZoomLevel, tileStructureMap[plane14]->TileX, tileStructureMap[plane14]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane14(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
//Request for Plane20 | |
str1 = FString::FromInt(tileStructureMap[plane20]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane20]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane20]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane20(tileStructureMap[plane20]->ZoomLevel, tileStructureMap[plane20]->TileX, tileStructureMap[plane20]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane20(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane21 | |
str1 = FString::FromInt(tileStructureMap[plane21]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane21]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane21]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane21(tileStructureMap[plane21]->ZoomLevel, tileStructureMap[plane21]->TileX, tileStructureMap[plane21]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane21(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane22 | |
str1 = FString::FromInt(tileStructureMap[plane22]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane22]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane22]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane22(tileStructureMap[plane22]->ZoomLevel, tileStructureMap[plane22]->TileX, tileStructureMap[plane22]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane22(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane23 | |
str1 = FString::FromInt(tileStructureMap[plane23]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane23]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane23]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane23(tileStructureMap[plane23]->ZoomLevel, tileStructureMap[plane23]->TileX, tileStructureMap[plane23]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane23(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane24 | |
str1 = FString::FromInt(tileStructureMap[plane24]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane24]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane24]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane24(tileStructureMap[plane24]->ZoomLevel, tileStructureMap[plane24]->TileX, tileStructureMap[plane24]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane24(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
//Request for Plane30 | |
str1 = FString::FromInt(tileStructureMap[plane30]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane30]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane30]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane30(tileStructureMap[plane30]->ZoomLevel, tileStructureMap[plane30]->TileX, tileStructureMap[plane30]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane30(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane31 | |
str1 = FString::FromInt(tileStructureMap[plane31]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane31]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane31]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane31(tileStructureMap[plane31]->ZoomLevel, tileStructureMap[plane31]->TileX, tileStructureMap[plane31]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane31(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane32 | |
str1 = FString::FromInt(tileStructureMap[plane32]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane32]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane32]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane32(tileStructureMap[plane32]->ZoomLevel, tileStructureMap[plane32]->TileX, tileStructureMap[plane32]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane32(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane33 | |
str1 = FString::FromInt(tileStructureMap[plane33]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane33]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane33]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane33(tileStructureMap[plane33]->ZoomLevel, tileStructureMap[plane33]->TileX, tileStructureMap[plane33]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane33(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane34 | |
str1 = FString::FromInt(tileStructureMap[plane34]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane34]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane34]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane34(tileStructureMap[plane34]->ZoomLevel, tileStructureMap[plane34]->TileX, tileStructureMap[plane34]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane34(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
//Request for Plane40 | |
str1 = FString::FromInt(tileStructureMap[plane40]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane40]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane40]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane40(tileStructureMap[plane40]->ZoomLevel, tileStructureMap[plane40]->TileX, tileStructureMap[plane40]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane40(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane41 | |
str1 = FString::FromInt(tileStructureMap[plane41]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane41]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane41]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane41(tileStructureMap[plane41]->ZoomLevel, tileStructureMap[plane41]->TileX, tileStructureMap[plane41]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane41(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane42 | |
str1 = FString::FromInt(tileStructureMap[plane42]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane42]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane42]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane42(tileStructureMap[plane42]->ZoomLevel, tileStructureMap[plane42]->TileX, tileStructureMap[plane42]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane42(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane43 | |
str1 = FString::FromInt(tileStructureMap[plane43]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane43]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane43]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane43(tileStructureMap[plane43]->ZoomLevel, tileStructureMap[plane43]->TileX, tileStructureMap[plane43]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane43(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
////Request for Plane44 | |
str1 = FString::FromInt(tileStructureMap[plane44]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane44]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane44]->ZoomLevel) + TEXT("Z"); | |
if (!FindTileMapInDatabase(str1)) | |
{ | |
CreateWebRequestPlane44(tileStructureMap[plane44]->ZoomLevel, tileStructureMap[plane44]->TileX, tileStructureMap[plane44]->TileY, qualityLevel); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File not found. Create HTTP Web Request for %s"), *str1); | |
} | |
else | |
{ | |
FString ThePath = str1;// FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + str1; | |
LoadSavedTexturePlane44(ThePath); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Map File Found. Loading from database")); | |
} | |
} | |
void ASWP_MapTileManager::CreateMapGrid(int r, int c) | |
{ | |
blocklength = 100.0f; | |
int planeIndex = 0; | |
float xPos = 0; | |
float yPos = 0; | |
//this->SetActorRotation(FRotator(180, 0, 0), ETeleportType::None); | |
for (int i = 0; i < r; i++) | |
{ | |
for (int j = 0; j < c; j++) | |
{ | |
xPos = i * blocklength; | |
yPos = j * blocklength; | |
planes[planeIndex]->SetRelativeLocation(FVector(-xPos, yPos, 0)); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
// mInstance = UMaterialInstanceDynamic::Create(plane00->GetStaticMesh()->GetMaterial(0), this); | |
//mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::MakeRandomColor()); | |
planes[planeIndex]->SetMaterial(0, mTileInstDyn); | |
planes[planeIndex]->SetVisibility(true); | |
planes[planeIndex]->SetRelativeRotation(FRotator(0, 90, 0), false, nullptr, ETeleportType::None); | |
planeIndex++; | |
} | |
} | |
} | |
FTileIDStruct ASWP_MapTileManager::CalculateTileIDForCenterGridElement(float latitude, float longitude, int zoomLvl) | |
{ | |
FTileIDStruct tileIDStruct; | |
int32 x = 0; | |
int32 y = 0; | |
x = (int32)FMath::FloorToFloat((longitude + 180.0f) / 360.f * FMath::Pow(2.0, zoomLvl)); | |
//y = FMath::FloorToInt((1-FMath::Log2(FMath::Tan(latitude*PI/180.f)+ 1.f/FMath::Cos(latitude * PI/180)/) | |
y = (int32)FMath::FloorToFloat((1.0 - FMath::Loge(FMath::Tan(latitude * PI / 180.0) + 1.0 / FMath::Cos(latitude * PI / 180.0)) / PI) / 2.0 * FMath::Pow(2.0, zoomLvl)); | |
tileIDStruct.TileX = x; | |
tileIDStruct.TileY = y; | |
tileIDStruct.ZoomLevel = zoomLvl; | |
FString TileXStr = FString::FromInt(x); | |
FString TileYStr = FString::FromInt(y); | |
FString ZoomStr = FString::FromInt(zoomLvl); | |
if(DEBUG_TILEINITIALIZE == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Center Tile Structure: TileX:%s TileY:%s ZoomLevel:%s "), *TileXStr, *TileYStr, *ZoomStr); | |
return tileIDStruct; | |
} | |
void ASWP_MapTileManager::GenerateTileIDForGridElements(FTileIDStruct idInfo) | |
{ | |
plane00Struct->TileX = idInfo.TileX - 2; | |
plane00Struct->TileY = idInfo.TileY - 2; | |
plane00Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[0], plane00Struct); | |
tileName00 = FString::FromInt(plane00Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane00Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane00Struct->TileY); | |
//planes[0]->Rename(compName00,nullptr,0); | |
// UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane00 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, tileStructureMap[plane00]->ZoomLevel); | |
plane01Struct->TileX = idInfo.TileX - 2; | |
plane01Struct->TileY = idInfo.TileY -1; | |
plane01Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[1], plane01Struct); | |
tileName01 = FString::FromInt(plane01Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane01Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane01Struct->TileY); | |
//planes[1]->Rename(compName01, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane01 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane01]->TileX, tileStructureMap[plane01]->TileY, tileStructureMap[plane01]->ZoomLevel); | |
plane02Struct->TileX = idInfo.TileX - 2; | |
plane02Struct->TileY = idInfo.TileY; | |
plane02Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[2], plane02Struct); | |
tileName02 = FString::FromInt(plane02Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane02Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane02Struct->TileY); | |
//planes[2]->Rename(compName02, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane02 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane02]->TileX, tileStructureMap[plane02]->TileY, tileStructureMap[plane02]->ZoomLevel); | |
//tileName03 = TEXT(""); | |
plane03Struct->TileX = idInfo.TileX - 2; | |
plane03Struct->TileY = idInfo.TileY + 1; | |
plane03Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[3], plane03Struct); | |
tileName03 = FString::FromInt(plane03Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane03Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane03Struct->TileY); | |
//const TCHAR* compName02 = *tileName02; | |
//planes[2]->Rename(compName02, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane02 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane02]->TileX, tileStructureMap[plane02]->TileY, tileStructureMap[plane02]->ZoomLevel); | |
plane04Struct->TileX = idInfo.TileX - 2; | |
plane04Struct->TileY = idInfo.TileY + 2; | |
plane04Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[4], plane04Struct); | |
tileName04 = FString::FromInt(plane04Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane04Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane04Struct->TileY); | |
plane10Struct->TileX = idInfo.TileX - 1; | |
plane10Struct->TileY = idInfo.TileY - 2; | |
plane10Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[5], plane10Struct); | |
tileName10 = FString::FromInt(plane10Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane10Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane10Struct->TileY); | |
plane11Struct->TileX = idInfo.TileX - 1; | |
plane11Struct->TileY = idInfo.TileY - 1; | |
plane11Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[6], plane11Struct); | |
tileName11 = FString::FromInt(plane11Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane11Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane11Struct->TileY); | |
//planes[4]->Rename(compName11, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane11 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane11].TileX, tileStructureMap[plane11].TileY, tileStructureMap[plane11].ZoomLevel); | |
plane12Struct->TileX = idInfo.TileX - 1; | |
plane12Struct->TileY = idInfo.TileY; | |
plane12Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[7], plane12Struct); | |
tileName12 = FString::FromInt(plane12Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane12Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane12Struct->TileY); | |
//planes[5]->Rename(compName12, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane12 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane12].TileX, tileStructureMap[plane12].TileY, tileStructureMap[plane12].ZoomLevel); | |
plane13Struct->TileX = idInfo.TileX - 1; | |
plane13Struct->TileY = idInfo.TileY + 1; | |
plane13Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[8], plane13Struct); | |
tileName13 = FString::FromInt(plane13Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane13Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane13Struct->TileY); | |
plane14Struct->TileX = idInfo.TileX - 1; | |
plane14Struct->TileY = idInfo.TileY + 2; | |
plane14Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[9], plane14Struct); | |
tileName14 = FString::FromInt(plane14Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane14Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane14Struct->TileY); | |
plane20Struct->TileX = idInfo.TileX; | |
plane20Struct->TileY = idInfo.TileY - 2; | |
plane20Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[10], plane20Struct); | |
tileName20 = FString::FromInt(plane20Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane20Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane20Struct->TileY); | |
plane21Struct->TileX = idInfo.TileX; | |
plane21Struct->TileY = idInfo.TileY - 1; | |
plane21Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[11], plane21Struct); | |
tileName21 = FString::FromInt(plane21Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane21Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane21Struct->TileY); | |
plane22Struct->TileX = idInfo.TileX; | |
plane22Struct->TileY = idInfo.TileY; | |
plane22Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[12], plane22Struct); | |
tileName22 = FString::FromInt(plane22Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane22Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane22Struct->TileY); | |
plane23Struct->TileX = idInfo.TileX; | |
plane23Struct->TileY = idInfo.TileY + 1; | |
plane23Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[13], plane23Struct); | |
tileName23 = FString::FromInt(plane23Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane23Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane23Struct->TileY); | |
//planes[7]->Rename(compName21, nullptr, 0); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Plane21 Stats: Tile Data X %s | Tile Data Y: %s | Tile Data Zoom: %s"), tileStructureMap[plane21].TileX, tileStructureMap[plane21].TileY, tileStructureMap[plane21].ZoomLevel); | |
plane24Struct->TileX = idInfo.TileX; | |
plane24Struct->TileY = idInfo.TileY + 2; | |
plane24Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[14], plane24Struct); | |
tileName24 = FString::FromInt(plane24Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane24Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane24Struct->TileY); | |
plane30Struct->TileX = idInfo.TileX + 1; | |
plane30Struct->TileY = idInfo.TileY - 2; | |
plane30Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[15], plane30Struct); | |
tileName30 = FString::FromInt(plane30Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane30Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane30Struct->TileY); | |
plane31Struct->TileX = idInfo.TileX + 1; | |
plane31Struct->TileY = idInfo.TileY - 1; | |
plane31Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[16], plane31Struct); | |
tileName31 = FString::FromInt(plane31Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane31Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane31Struct->TileY); | |
plane32Struct->TileX = idInfo.TileX + 1; | |
plane32Struct->TileY = idInfo.TileY; | |
plane32Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[17], plane32Struct); | |
tileName32 = FString::FromInt(plane32Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane32Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane32Struct->TileY); | |
plane33Struct->TileX = idInfo.TileX + 1; | |
plane33Struct->TileY = idInfo.TileY + 1; | |
plane33Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[18], plane33Struct); | |
tileName33 = FString::FromInt(plane33Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane33Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane33Struct->TileY); | |
plane34Struct->TileX = idInfo.TileX + 1; | |
plane34Struct->TileY = idInfo.TileY + 2; | |
plane34Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[19], plane34Struct); | |
tileName34 = FString::FromInt(plane34Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane34Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane34Struct->TileY); | |
plane40Struct->TileX = idInfo.TileX + 2; | |
plane40Struct->TileY = idInfo.TileY - 2; | |
plane40Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[20], plane40Struct); | |
tileName40 = FString::FromInt(plane40Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane40Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane40Struct->TileY); | |
plane41Struct->TileX = idInfo.TileX + 2; | |
plane41Struct->TileY = idInfo.TileY - 1; | |
plane41Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[21], plane41Struct); | |
tileName41 = FString::FromInt(plane41Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane41Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane41Struct->TileY); | |
plane42Struct->TileX = idInfo.TileX + 2; | |
plane42Struct->TileY = idInfo.TileY; | |
plane42Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[22], plane42Struct); | |
tileName42 = FString::FromInt(plane42Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane42Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane42Struct->TileY); | |
plane43Struct->TileX = idInfo.TileX + 2; | |
plane43Struct->TileY = idInfo.TileY + 1; | |
plane43Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[23], plane43Struct); | |
tileName43 = FString::FromInt(plane43Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane43Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane43Struct->TileY); | |
plane44Struct->TileX = idInfo.TileX + 2; | |
plane44Struct->TileY = idInfo.TileY + 2; | |
plane44Struct->ZoomLevel = idInfo.ZoomLevel; | |
tileStructureMap.Add(planes[24], plane44Struct); | |
tileName44 = FString::FromInt(plane44Struct->ZoomLevel) + | |
TEXT(",") + | |
FString::FromInt(plane44Struct->TileX) + | |
TEXT(",") + | |
FString::FromInt(plane44Struct->TileY); | |
} | |
/* | |
double ASWP_MapTileManager::TileYtoNWLatitude(int y, int zoom) | |
{ | |
auto n = FMath::Pow(2.0, zoom); | |
auto lat_rad = FMath::Atan(FMath::Sinh(PI * (1 - 2 * y / n))); | |
auto lat_deg = lat_rad * 180.0 / PI; | |
return lat_deg; | |
} | |
double ASWP_MapTileManager::TileXtoNWLongitude(int x, int zoom) | |
{ | |
auto n = FMath::Pow(2.0, zoom); | |
auto lon_deg = x / n * 360.0 - 180.0; | |
return lon_deg; | |
} | |
FDirectionBounds ASWP_MapTileManager::TileIDToBounds(int x, int y, int zoom) | |
{ | |
FDirectionBounds fbounds = FDirectionBounds(FVector2D::ZeroVector, FVector2D::ZeroVector); | |
auto sw = FVector2D(TileYtoNWLatitude(y, zoom), TileXtoNWLongitude(x + 1, zoom)); | |
auto ne = FVector2D(TileYtoNWLatitude(y + 1, zoom), TileXtoNWLongitude(x, zoom)); | |
fbounds.SouthWest = sw; | |
fbounds.NorthEast = ne; | |
return fbounds; | |
} | |
FVector2D ASWP_MapTileManager::TileIDToCenterLatitudeLongitude(int x, int y, int zoom) | |
{ | |
FDirectionBounds bb = TileIDToBounds(x, y, zoom); | |
FVector2D center = FVector2D::ZeroVector; | |
return center; | |
} | |
*/ | |
// Called every frame | |
void ASWP_MapTileManager::Tick(float DeltaTime) | |
{ | |
Super::Tick(DeltaTime); | |
if (bCheckSaveTimer) | |
{ | |
currentSaveTimer -= DeltaTime; | |
if (currentSaveTimer < 0) | |
{ | |
bCheckSaveTimer = false; | |
if (SaveTileData()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Save Data True")); | |
} | |
currentSaveTimer = 0; | |
} | |
} | |
if (HUDRef != nullptr) | |
{ | |
HUDRef->DebugStringValue = FString::FromInt(zoomLevel) + TEXT(" ZoomLevel"); | |
} | |
//CheckTileVisibleTimer(); | |
} | |
void ASWP_MapTileManager::GetTileIDsBasedOnZoomLevel(int zoomL) | |
{ | |
/*Calculate Important Variables which need to be calculated at every zoomlevel*/ | |
zoomLevel = zoomL; | |
/*Get the Map Center Lat and Long in 2D Vector Form*/ | |
MapCenterLatLong = FVector2D(mapLat, mapLon); | |
/*Get the reference Rectangle of whole grid*/ | |
ReferenceTileRect = TileBounds(FVector2D(tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY), zoomLevel); | |
/*Update the center mercartor constant based on the new map Latitude and Longitude*/ | |
CenterMerc = LatLonToMeters(mapLat, mapLon); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Zooming Started: Latitude: %d Longitude: %d"), mapLat, mapLon); | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
CreateWebRequestForTiles(); | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
RearrangeGridElements(mapLat, mapLon, tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY); | |
FVector Position = FVector(plane11->GetComponentLocation().X, plane11->GetComponentLocation().Y, 200); | |
ResetPawnPosition(Position); | |
} | |
void ASWP_MapTileManager::GetTileIDsBasedOnZoomLevel(int zoomL, FVector2D& CenterLatLong) | |
{ | |
/*Calculate Important Variables which need to be calculated at every zoomlevel*/ | |
zoomLevel = zoomL; | |
mapLat = CenterLatLong.X; | |
mapLon = CenterLatLong.Y; | |
/*Get the Map Center Lat and Long in 2D Vector Form*/ | |
MapCenterLatLong = FVector2D(mapLat, mapLon); | |
/*Get the reference Rectangle of whole grid*/ | |
ReferenceTileRect = TileBounds(FVector2D(tileStructureMap[plane22]->TileX, tileStructureMap[plane22]->TileY), zoomLevel); | |
/*Update the center mercartor constant based on the new map Latitude and Longitude*/ | |
CenterMerc = LatLonToMeters(mapLat, mapLon); | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
CreateWebRequestForTiles(); | |
/*centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
GenerateTileIDForGridElements(centerTileIDStruct);*/ | |
RearrangeGridElements(mapLat, mapLon, tileStructureMap[plane22]->TileX, tileStructureMap[plane22]->TileY); | |
FVector Position = FVector(plane11->GetComponentLocation().X, plane11->GetComponentLocation().Y, 200); | |
ResetPawnPosition(Position); | |
} | |
/* | |
void ASWP_MapTileManager::LoadData() | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request...")); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(TEXT("https://dev.virtualearth.net/REST/V1/Imagery/Map/Road/42.6564%2C-73.7638/13?mapSize=500,500&format=png&key=AkifuYNww2KS1pe9K37LkekrCDdfWiYMbfiF9djdY5x2oghRu2PjLxmVGAu_8ZMo")); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadDataFinished); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::OnLoadDataFinished(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("/Game/SWPContent/Materials/Textures/TestImage.TestImage"); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager,0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTex = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
ImageTex->MipGenSettings = TMGS_NoMipmaps; | |
ImageTex->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTex->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTex->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTex->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY* 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTex->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTex->UpdateResource(); | |
UpdateTextureData(ImageTex); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit")); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureData(const UTexture2D* ImageTex) | |
{ | |
for (int i = 0; i < planes.Num(); i++) | |
{ | |
planes[i]->SetRelativeRotation(FRotator(0, 90, 0), false, nullptr, ETeleportType::None); | |
planes[i]->SetVisibility(true); | |
mInstance = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mInstance->SetVectorParameterValue("Color", FLinearColor::White); | |
mInstance->SetTextureParameterValue("TileTexture", (UTexture*)ImageTex); | |
planes[i]->SetMaterial(0, mInstance); | |
} | |
} | |
*/ | |
//Create functions to test how the textures are coming with the given lat lon coordinates | |
void ASWP_MapTileManager::CreateWebRequestPlane00(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if(DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 00 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane00); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane01(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 01 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane01); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane02(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane02); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane03(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane03); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane04(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane04); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane10(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 10 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane10); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane11(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 11 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane11); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane12(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 12 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane12); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane13(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane13); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane14(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 14 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane14); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane20(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 20 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane20); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane21(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 21 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane21); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane22(int zoomLevel, int XValue, int YValue, int qValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(qValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 22 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane22); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane23(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane23); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane24(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane24); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane30(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane30); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane31(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane31); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane32(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane32); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane33(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane33); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane34(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane34); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane40(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane40); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane41(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane41); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane42(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane42); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane43(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane43); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::CreateWebRequestPlane44(int zoomLevel, int XValue, int YValue, int QualityValue) | |
{ | |
FString urlString = TEXT("https://api.maptiler.com/maps/bright/2/0/1@2x.png?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlLeft = TEXT("https://api.maptiler.com/maps/bright/"); | |
FString urlZoom = FString::FromInt(zoomLevel); | |
FString urlTileXValue = FString::FromInt(XValue); | |
FString urlTileYValue = FString::FromInt(YValue); | |
FString strSlash = TEXT("/"); | |
FString urlQuality = TEXT("@") + FString::FromInt(QualityValue) + TEXT("x.png"); | |
FString urlRight = TEXT("?key=M5fYrAs6rDU728IMT3fG"); | |
FString urlFinal = urlLeft + urlZoom + strSlash + urlTileXValue + strSlash + urlTileYValue + urlQuality + urlRight; | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Creating API Request For Plane 02 with the end point as %s"), *urlFinal); | |
TSharedRef<class IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest(); | |
HttpRequest->SetURL(urlFinal); | |
HttpRequest->SetVerb(TEXT("GET")); | |
HttpRequest->OnProcessRequestComplete().BindUObject(this, &ASWP_MapTileManager::OnLoadWebRequestFinishedPlane44); | |
HttpRequest->ProcessRequest(); | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane00(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 00")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane00 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane00->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane00->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane00->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane00->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane00->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane00->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane00->UpdateResource(); | |
//SaveTileInDatabase(tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, tileStructureMap[plane00]->ZoomLevel, ImageTexPlane00*); | |
UpdateTextureDatatoPlane00(ImageTexPlane00); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
//SaveTileInDatabase(tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, tileStructureMap[plane00]->ZoomLevel, ImageTexPlane00); | |
//SaveTileTexture(tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, tileStructureMap[plane00]->ZoomLevel, ImageTexPlane00); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit for Plane 00")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane01(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 01")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane01 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane01->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane01->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane01->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane01->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane01->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane01->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane01->UpdateResource(); | |
UpdateTextureDatatoPlane01(ImageTexPlane01); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit for Plane 01")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane02(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 02")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane02 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane02->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane02->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane02->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane02->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane02->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane02->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane02->UpdateResource(); | |
UpdateTextureDatatoPlane02(ImageTexPlane02); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 02")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane03(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 03")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane03 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane03->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane03->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane03->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane03->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane03->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane03->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane03->UpdateResource(); | |
UpdateTextureDatatoPlane03(ImageTexPlane03); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 03")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane04(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 04")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane04 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane04->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane04->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane04->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane04->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane04->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane04->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane04->UpdateResource(); | |
UpdateTextureDatatoPlane04(ImageTexPlane04); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 04")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane10(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit from Plane 10")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane10 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane10->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane10->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane10->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane10->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane10->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane10->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane10->UpdateResource(); | |
UpdateTextureDatatoPlane10(ImageTexPlane10); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit From Plane 10")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane11(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit from Plane 11")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane11 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane11->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane11->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane11->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane11->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane11->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane11->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane11->UpdateResource(); | |
UpdateTextureDatatoPlane11(ImageTexPlane11); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from plane 11")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane12(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit from plane 12")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
// UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane12 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane12->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane12->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane12->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane12->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane12->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane12->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane12->UpdateResource(); | |
UpdateTextureDatatoPlane12(ImageTexPlane12); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 12")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane13(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 13")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane13 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane13->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane13->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane13->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane13->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane13->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane13->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane13->UpdateResource(); | |
UpdateTextureDatatoPlane13(ImageTexPlane13); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 13")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane14(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 14")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane14 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane14->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane14->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane14->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane14->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane14->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane14->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane14->UpdateResource(); | |
UpdateTextureDatatoPlane14(ImageTexPlane14); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 14")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane20(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit from Plane 20")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane20 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane20->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane20->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane20->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane20->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane20->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane20->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane20->UpdateResource(); | |
UpdateTextureDatatoPlane20(ImageTexPlane20); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 20")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane21(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit from plane 21")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
// UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane21 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane21->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane21->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane21->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane21->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane21->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane21->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane21->UpdateResource(); | |
UpdateTextureDatatoPlane21(ImageTexPlane21); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane22(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
// UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane22 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane22->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane22->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane22->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane22->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane22->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane22->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane22->UpdateResource(); | |
UpdateTextureDatatoPlane22(ImageTexPlane22); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from plane 22")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane23(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 23")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane23 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane23->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane23->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane23->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane23->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane23->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane23->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane23->UpdateResource(); | |
UpdateTextureDatatoPlane23(ImageTexPlane23); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 23")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane24(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 24")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane24 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane24->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane24->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane24->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane24->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane24->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane24->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane24->UpdateResource(); | |
UpdateTextureDatatoPlane24(ImageTexPlane24); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 24")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane30(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 30")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane30 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane30->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane30->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane30->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane30->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane30->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane30->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane30->UpdateResource(); | |
UpdateTextureDatatoPlane30(ImageTexPlane30); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 30")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane31(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 31")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane31 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane31->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane31->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane31->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane31->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane31->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane31->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane31->UpdateResource(); | |
UpdateTextureDatatoPlane31(ImageTexPlane31); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 31")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane32(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 32")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane32 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane32->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane32->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane32->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane32->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane32->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane32->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane32->UpdateResource(); | |
UpdateTextureDatatoPlane32(ImageTexPlane32); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 32")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane33(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 33")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane33 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane33->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane33->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane33->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane33->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane33->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane33->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane33->UpdateResource(); | |
UpdateTextureDatatoPlane33(ImageTexPlane33); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 33")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane34(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 34")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane34 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane34->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane34->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane34->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane34->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane34->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane34->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane34->UpdateResource(); | |
UpdateTextureDatatoPlane34(ImageTexPlane34); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 34")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane40(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 40")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane40 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane40->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane40->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane40->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane40->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane40->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane40->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane40->UpdateResource(); | |
UpdateTextureDatatoPlane40(ImageTexPlane40); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 40")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane41(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 41")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane41 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane41->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane41->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane41->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane41->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane41->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane41->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane41->UpdateResource(); | |
UpdateTextureDatatoPlane41(ImageTexPlane41); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 41")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane42(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 42")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane42 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane42->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane42->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane42->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane42->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane42->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane42->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane42->UpdateResource(); | |
UpdateTextureDatatoPlane42(ImageTexPlane42); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 42")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane43(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 43")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane43 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane43->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane43->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane43->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane43->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane43->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane43->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane43->UpdateResource(); | |
UpdateTextureDatatoPlane43(ImageTexPlane43); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 43")); | |
} | |
} | |
void ASWP_MapTileManager::OnLoadWebRequestFinishedPlane44(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) | |
{ | |
if (bWasSuccessful && Response.IsValid()) | |
{ | |
FString TestImageTxt = TEXT("Texture2D'/BlankPlugin/SWPContent/Materials/Textures/TestImage.TestImage'"); | |
if (DEBUG_TILEAPIREQUEST == 1) | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Valid Response from API hit for Plane 44")); | |
IFileManager *eFileManager = &IFileManager::Get(); | |
IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper")); | |
TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG); | |
TArray<uint8> ImageData = Response->GetContent(); | |
if (FFileHelper::SaveArrayToFile(ImageData, *TestImageTxt, eFileManager, 0U)) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Tried Saving the File")); | |
} | |
if (FFileHelper::LoadFileToArray(ImageData, *TestImageTxt)) | |
{ | |
if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())) | |
{ | |
const TArray<uint8>* UncompressedBGRA = NULL; | |
if (ImageWrapper->GetRaw(ERGBFormat::BGRA, 8, UncompressedBGRA)) | |
{ | |
ImageTexPlane44 = UTexture2D::CreateTransient(ImageWrapper->GetWidth(), ImageWrapper->GetHeight(), PF_B8G8R8A8); | |
#if WITH_EDITORONLY_DATA | |
ImageTexPlane44->MipGenSettings = TMGS_NoMipmaps; | |
#endif | |
ImageTexPlane44->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//We need to get the height and width so that we do Realloc in Image Texture | |
int32 TexSizeX = ImageTexPlane44->PlatformData->Mips[0].SizeX; | |
int32 TexSizeY = ImageTexPlane44->PlatformData->Mips[0].SizeY; | |
//Find how the texture data is getting copied to Memcpy | |
uint8* TextureData = (uint8*)ImageTexPlane44->PlatformData->Mips[0].BulkData.Realloc(TexSizeX * TexSizeY * 4); | |
FMemory::Memcpy(TextureData, UncompressedBGRA->GetData(), UncompressedBGRA->Num()); | |
ImageTexPlane44->PlatformData->Mips[0].BulkData.Unlock(); | |
ImageTexPlane44->UpdateResource(); | |
UpdateTextureDatatoPlane44(ImageTexPlane44); | |
//FAssetRegistryModule::AssetCreated(ImageTex); | |
} | |
} | |
} | |
} | |
else | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Received Invalid Response From API hit from Plane 44")); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane00(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane00->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane00]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane00]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane00]->ZoomLevel) + TEXT("Z"); // tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel | |
//SaveTextureToDisk(ImageTexPlane00, str1); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane00, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane01(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane01->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane01]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane01]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane01]->ZoomLevel) + TEXT("Z"); // tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel | |
//SaveTextureToDisk(ImageTexPlane00, str1); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane01, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane02(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane02->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane02]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane02]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane02]->ZoomLevel) + TEXT("Z"); // tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel | |
//SaveTextureToDisk(ImageTexPlane00, str1); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane02, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane03(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane03->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane03]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane03]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane03]->ZoomLevel) + TEXT("Z"); // tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel | |
//SaveTextureToDisk(ImageTexPlane00, str1); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane03, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane04(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane04->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane04]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane04]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane04]->ZoomLevel) + TEXT("Z"); // tileStructureMap[plane00]->ZoomLevel, tileStructureMap[plane00]->TileX, tileStructureMap[plane00]->TileY, qualityLevel | |
//SaveTextureToDisk(ImageTexPlane00, str1); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane04, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane10(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane10->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane10]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane10]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane10]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane10, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane11(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane11->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane11]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane11]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane11]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane11, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane12(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane12->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane12]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane12]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane12]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane12, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane13(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane13->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane13]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane13]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane13]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane13, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane14(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane14->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane14]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane14]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane14]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane14, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane20(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane20->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane20]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane20]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane20]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane20, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane21(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane21->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane21]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane21]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane21]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane21, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane22(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane22->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane22]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane22]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane22]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane22, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane23(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane23->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane23]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane23]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane23]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane23, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane24(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane24->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane24]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane24]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane24]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane24, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane30(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane30->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane30]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane30]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane30]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane30, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane31(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane31->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane31]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane31]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane31]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane31, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane32(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane32->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane32]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane32]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane32]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane32, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane33(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane33->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane33]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane33]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane33]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane33, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane34(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane34->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane34]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane34]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane34]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane34, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane40(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane40->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane40]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane40]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane40]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane40, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane41(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane41->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane41]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane41]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane41]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane41, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane42(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane42->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane42]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane42]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane42]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane42, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane43(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane43->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane43]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane43]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane43]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane43, str1); | |
} | |
} | |
void ASWP_MapTileManager::UpdateTextureDatatoPlane44(const UTexture2D* img) | |
{ | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", (UTexture*)img); | |
plane44->SetMaterial(0, mTileInstDyn); | |
FString str1 = FString::FromInt(tileStructureMap[plane44]->TileX) + TEXT("X") + FString::FromInt(tileStructureMap[plane44]->TileY) + TEXT("Y") + FString::FromInt(tileStructureMap[plane44]->ZoomLevel) + TEXT("Z"); | |
if (AddTileIDinSaveGameObject(str1)) | |
{ | |
SaveTextureToDisk(ImageTexPlane44, str1); | |
} | |
} | |
FVector2D ASWP_MapTileManager::GeoToWorldPosition(double latitude, double longitude, FVector2D refPoint, float Scale /* = 1 */) | |
{ | |
float posx = longitude * OriginShift / 180; | |
float posy = FMath::Loge(FMath::Tan((90 + latitude) * PI / 360)) / (PI / 180); | |
posy = posy * OriginShift / 180; | |
return FVector2D((posx - refPoint.X) * Scale, (posy - refPoint.Y) * Scale); | |
} | |
float ASWP_MapTileManager::GetTileScaleInMeters(float latitude, int zoom) | |
{ | |
float ScaleValue = 40075016.685578 * (FMath::Cos(Deg2Rad * latitude) / FMath::Pow(2.f, zoom + 8)); | |
return ScaleValue; | |
} | |
float ASWP_MapTileManager::GetTileScaleInDegrees(float latitude, int zoom) | |
{ | |
return (float)(360.0f / FMath::Pow(2.f, zoom + 8)); | |
} | |
FVector2D ASWP_MapTileManager::LatLonToMeters(double latitude, double longitude) | |
{ | |
float posx = longitude * OriginShift / 180; | |
float posy = FMath::Loge(FMath::Tan((90 + latitude) * PI / 360)) / (PI / 180); | |
posy = posy * OriginShift / 180; | |
return FVector2D(posy, posx); | |
} | |
FVector2D ASWP_MapTileManager::PixelsToMeters(FVector2D p, int zoom) | |
{ | |
double res = Resolution(zoom); | |
float resF = res; | |
FVector2D vec1 = FVector2D((p.X * res) - OriginShift, -((p.Y * res) - OriginShift)); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Pixel To Meter Value is %s "), *vec1.ToString()); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Pixel To Meter || Vector P is %s "), *p.ToString()); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Pixel To Meter Value of Resolution %s "), *FString::SanitizeFloat(resF)); | |
return vec1; | |
} | |
FRectD ASWP_MapTileManager::TileBounds(FVector2D tileCoordinate, int zoom) | |
{ | |
FVector2D min = FVector2D::UnitVector; | |
FVector2D max = FVector2D::UnitVector; | |
min = PixelsToMeters(FVector2D(tileCoordinate.X * TileSize, tileCoordinate.Y * TileSize), zoom); | |
max = PixelsToMeters(FVector2D((tileCoordinate.X + 1) * TileSize, (tileCoordinate.Y + 1) * TileSize), zoom); | |
//min = PixelsToMeters(FVector2D(732 * TileSize, 426 * TileSize), zoom); | |
//max = PixelsToMeters(FVector2D(733 * TileSize, 427 * TileSize), zoom); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("In Tile Bounds method %s Min Vector Value "), *min.ToString()); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("In Tile Bounds method %s Max Vector Value "), *max.ToString()); | |
max = max - min; | |
max = FVector2D((max.X), (max.Y)); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("In Tile Bounds method %s Min Vector Value "), *min.ToString()); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("In Tile Bounds method %s Max Vector Value "), *max.ToString()); | |
return FRectD(min, max); | |
} | |
void ASWP_MapTileManager::GetNewLocation(UStaticMeshComponent& mesh,int x,int y,int z) | |
{ | |
//FTileIDStruct IDStruct = CalculateTileIDForCenterGridElement(28.507878, 77.085348, zoomLevel); | |
FRectD rectd = FRectD(FVector2D::ZeroVector, FVector2D::ZeroVector); | |
rectd = TileBounds(FVector2D(x, y), zoomLevel); | |
//FString str = FString::SanitizeFloat(rectd.Size.X); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("FRectD Size X Value : %s "), *str); | |
rectd = rectd.ReverseXY(rectd); | |
//float SizeByMeter = 0.f; | |
auto SizeByMeter = 100 / ReferenceTileRect.Size.X;//plane11->GetComponentScale().X / ReferenceTileRect.Size.X; | |
auto scaleFactor = 1;//FMath::Pow(2.f, zoomLevel); | |
FVector newpos = FVector((rectd.Center.X - CenterMerc.X)*SizeByMeter*scaleFactor, | |
(rectd.Center.Y - CenterMerc.Y)*SizeByMeter*scaleFactor, 0); | |
//auto val1 = SizeByMeter * scaleFactor; | |
//mesh.SetRelativeLocation(newpos,false,nullptr,ETeleportType::None); | |
//FVector newpos = FVector(x*100,y*100,0); | |
mesh.SetWorldLocation(newpos, false, nullptr, ETeleportType::None); | |
if (DEBUG_TILEINITIALIZE == 1) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("World Position is: %s of Plane name: %s "), *newpos.ToString(),*mesh.GetName()); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("SizeByMeter is: %s Scale Factor is : %s "), *FString::SanitizeFloat(SizeByMeter), *FString::SanitizeFloat(scaleFactor)); | |
} | |
} | |
void ASWP_MapTileManager::PanMapUsingKeyboard(float hValue,float vValue) | |
{ | |
float factor = panSpeed * GetTileScaleInDegrees(MapCenterLatLong.X,zoomLevel); | |
FVector2D latitudeLongitude = FVector2D(MapCenterLatLong.X + hValue * factor * 2.0f, MapCenterLatLong.Y + vValue * factor * 2.0f); | |
mapLat = latitudeLongitude.X; | |
mapLon = latitudeLongitude.Y; | |
MapCenterLatLong.X = latitudeLongitude.X; | |
MapCenterLatLong.Y = latitudeLongitude.Y; | |
if (DEBUG_TILEPANUPDATE == 1) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("New Latitude name: %f "), mapLat); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("New Longitude name: %f "), mapLon); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("New ZoomLevel name: %d "), zoomLevel); | |
} | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
CreateWebRequestForTiles(); | |
RearrangeGridElements(mapLat, mapLon, tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY); | |
} | |
FVector2D ASWP_MapTileManager::WorldToGeographyPosition(FVector realWorldPosition) | |
{ | |
FVector2D refPoint = CenterMerc; | |
double tscale = 1/ ReferenceTileRect.Size.X; | |
//tscale = tscale * 1000; | |
//auto final1 = FVector2D(realWorldPosition.Y / tscale, realWorldPosition.X / tscale); | |
auto pos = refPoint + FVector2D(realWorldPosition.X/tscale,realWorldPosition.Y/tscale); | |
if(DEBUG_TILEPOINTCLICK == 1) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("TScale Value %s and ZoomLevel Value: %s "), *FString::SanitizeFloat(tscale),*FString::FromInt(zoomLevel)); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("RefPoint %s "), *refPoint.ToString()); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Resultant Position is %s "), *pos.ToString()); | |
} | |
pos = MetersToLatLon(pos); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Lat Lon of Location %s is || %s "),*realWorldPosition.ToString(), *pos.ToString()); | |
return pos; | |
} | |
FVector2D ASWP_MapTileManager::MetersToLatLon(FVector2D MeterPosition) | |
{ | |
double vx = 0.f, vy = 0.f; | |
vx = (MeterPosition.Y / OriginShift) * 180; | |
vy = (MeterPosition.X / OriginShift) * 180; | |
vy = 180 / PI * (2 * FMath::Atan(FMath::Exp(vy * PI / 180)) - PI / 2); | |
if (DEBUG_TILEPOINTCLICK == 1) | |
{ | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("VX: %f "), vx); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("VY: %f "), vy); | |
} | |
return FVector2D(vy,vx); | |
} | |
void ASWP_MapTileManager::ResetPawnPosition(FVector Position) | |
{ | |
ASWP_WorldPlayerPawn* pwn = Cast<ASWP_WorldPlayerPawn>(GetWorld()->GetFirstPlayerController()->GetPawn()); | |
if (pwn) | |
{ | |
pwn->SetActorLocation(Position, false, nullptr, ETeleportType::None); | |
} | |
} | |
void ASWP_MapTileManager::RearrangeGridElements(double latitude, double longitude,int CenterX,int CenterY) | |
{ | |
MapCenterLatLong = FVector2D(latitude, longitude); | |
ReferenceTileRect = TileBounds(FVector2D(CenterX, CenterY), zoomLevel); | |
ReferenceTileRect = ReferenceTileRect.ReverseXY(ReferenceTileRect); | |
CenterMerc = LatLonToMeters(latitude, longitude); | |
if(DEBUG_TILEINITIALIZE == 1) | |
{ | |
FVector2D vec2 = ReferenceTileRect.Center; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Reference Tile Rect Center Value %s "), *vec2.ToString()); | |
vec2 = ReferenceTileRect.Min; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Reference Tile Rect Min Value %s "), *vec2.ToString()); | |
vec2 = ReferenceTileRect.Max; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Reference Tile Rect Max Value %s "), *vec2.ToString()); | |
vec2 = ReferenceTileRect.Size; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Reference Tile Rect Size Value %s "), *vec2.ToString()); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Reference Tile Rect Size: %s || Min: %s || Max: %s "), *ReferenceTileRect.Size.ToString(), *ReferenceTileRect.Min.ToString(), *ReferenceTileRect.Max.ToString()); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Center MErc: %s "), *CenterMerc.ToString()); | |
} | |
for (int planeIndex = planes.Num()-1; planeIndex > -1;planeIndex--) | |
{ | |
//planes[planeIndex] | |
GetNewLocation(*planes[planeIndex], | |
tileStructureMap[planes[planeIndex]]->TileX, | |
tileStructureMap[planes[planeIndex]]->TileY, | |
tileStructureMap[planes[planeIndex]]->ZoomLevel); | |
} | |
} | |
void ASWP_MapTileManager::CheckTileVisibleTimer() | |
{ | |
/*for (UStaticMeshComponent* Actor : planes) | |
{ | |
FPrimitiveSceneInfo* sceneInfo = Actor->SceneProxy->GetPrimitiveSceneInfo(); | |
float floatpointer = sceneInfo->LastRenderTime; | |
}*/ | |
FPrimitiveSceneInfo* sceneInfo = plane11->SceneProxy->GetPrimitiveSceneInfo(); | |
if (sceneInfo) | |
{ | |
float floatpointer = sceneInfo->LastRenderTime; | |
if (HUDRef) | |
HUDRef->DebugStringValue = TEXT("Plane11: ") + FString::SanitizeFloat(floatpointer); | |
} | |
sceneInfo = plane00->SceneProxy->GetPrimitiveSceneInfo(); | |
if (sceneInfo) | |
{ | |
float floatpointer = sceneInfo->LastRenderTime; | |
if (HUDRef) | |
HUDRef->DebugStringValue2 = TEXT("Plane00: ") + FString::SanitizeFloat(floatpointer); | |
} | |
sceneInfo = plane22->SceneProxy->GetPrimitiveSceneInfo(); | |
if (sceneInfo) | |
{ | |
float floatpointer = sceneInfo->LastRenderTime; | |
if (HUDRef) | |
HUDRef->DebugStringValue3 = TEXT("Plane22: ") + FString::SanitizeFloat(floatpointer); | |
} | |
} | |
void ASWP_MapTileManager::PanMapUsingMouse(const FVector2D& delMousePos) | |
{ | |
float factor = panSpeed * GetTileScaleInMeters(0, zoomLevel); | |
auto latlongdelta = MetersToLatLon(FVector2D(delMousePos.X * factor, delMousePos.Y * factor)); | |
mapLat = mapLat + latlongdelta.X; | |
mapLon = mapLon + latlongdelta.Y; | |
HUDRef->DebugStringValue2 = TEXT("Lat: ") + FString::SanitizeFloat(mapLat) + TEXT(" Lon: ") + FString::SanitizeFloat(mapLon); | |
mapLat = FMath::Clamp(mapLat, -mapLatMax, mapLatMax); | |
mapLon = FMath::Clamp(mapLon, -mapLonMax, mapLonMax); | |
/*Calculate the Center Tile ID Based on Zoom Level and MapLat And MapLon*/ | |
centerTileIDStruct = CalculateTileIDForCenterGridElement(mapLat, mapLon, zoomLevel); | |
/*Generate Tile ID for all grid elements*/ | |
GenerateTileIDForGridElements(centerTileIDStruct); | |
/*Create the Grid with the mentioned Rows and Colums*/ | |
CreateMapGrid(rows, columns); | |
/*Create Web Request based on Tile Data calculated for each tile*/ | |
CreateWebRequestForTiles(); | |
//FVector2D newVEc = LatLonToMeters(28.507878, 77.085348); | |
//UE_LOG(LogSmartWorldPro, Warning, TEXT("Center Tile in Meters is X: %f , Y : %f "), newVEc.X,newVEc.Y); | |
/*Rearrange the tile components based on the Mercater Projection Coordinates*/ | |
RearrangeGridElements(mapLat, mapLon, tileStructureMap[plane11]->TileX, tileStructureMap[plane11]->TileY); | |
//Calculate the position from center tile of the map | |
worldPawn->ResetAfterPanLimit(); | |
} | |
void ASWP_MapTileManager::SaveTileInDatabase(int TileX, int TileY, int zoomL, UTexture2D* tex2D) | |
{ | |
//FString PackageName = TEXT("/Game/MapTiles/"); | |
//FString TextureName = TEXT("Image101"); | |
//UPackage* Package = CreatePackage(NULL, *PackageName); | |
//Package->FullyLoad(); | |
//int test_length = 1024; | |
//uint8 TextureWidth = (uint8)test_length; | |
//uint8 TextureHeight = (uint8)test_length; | |
// | |
//UTexture2D* NewTexture = NewObject<UTexture2D>(Package, *TextureName, RF_Public | RF_Standalone | RF_MarkAsRootSet); | |
//const uint8* FormatedImageData = static_cast<const uint8*>(tex2D->PlatformData->Mips[0].BulkData.LockReadOnly()); | |
//NewTexture->AddToRoot(); // This line prevents garbage collection of the texture | |
//NewTexture->PlatformData = new FTexturePlatformData(); // Then we initialize the PlatformData | |
//NewTexture->PlatformData->SizeX = tex2D->GetSizeX(); | |
//NewTexture->PlatformData->SizeY = tex2D->GetSizeY(); | |
//NewTexture->PlatformData->NumSlices = 1; | |
//NewTexture->PlatformData->PixelFormat = EPixelFormat::PF_B8G8R8A8; | |
//uint8* Pixels = new uint8[TextureWidth * TextureHeight * 4]; | |
////Pixels = FormatedImageData; | |
// | |
// | |
//for (int32 y = 0; y < TextureHeight; y++) | |
//{ | |
// for (int32 x = 0; x < TextureWidth; x++) | |
// { | |
// int32 curPixelIndex = ((y * TextureWidth) + x); | |
// Pixels[4 * curPixelIndex] = 122; | |
// Pixels[4 * curPixelIndex + 1] = 122; | |
// Pixels[4 * curPixelIndex + 2] = 122; | |
// Pixels[4 * curPixelIndex + 3] = 122; | |
// } | |
//} | |
//// Allocate first mipmap. | |
//FTexture2DMipMap* Mip = new(NewTexture->PlatformData->Mips) FTexture2DMipMap(); | |
//Mip->SizeX = TextureWidth; | |
//Mip->SizeY = TextureHeight; | |
//// Lock the texture so it can be modified | |
//Mip->BulkData.Lock(LOCK_READ_WRITE); | |
//uint8* TextureData = (uint8*)Mip->BulkData.Realloc(TextureWidth * TextureHeight * 4); | |
//FMemory::Memcpy(TextureData, Pixels, sizeof(uint8) * TextureHeight * TextureWidth * 4); | |
//Mip->BulkData.Unlock(); | |
//NewTexture->Source.Init(TextureWidth, TextureHeight, 1, 1, ETextureSourceFormat::TSF_BGRA8, Pixels); | |
//NewTexture->UpdateResource(); | |
//Package->MarkPackageDirty(); | |
//FAssetRegistryModule::AssetCreated(NewTexture); | |
//FString PackageFileName = FPackageName::LongPackageNameToFilename(PackageName, FPackageName::GetAssetPackageExtension()); | |
//bool bSaved = UPackage::SavePackage(Package, NewTexture, EObjectFlags::RF_Public | EObjectFlags::RF_Standalone, *PackageFileName, GError, nullptr, true, true, SAVE_NoError); | |
//delete[] Pixels; | |
} | |
void ASWP_MapTileManager::SaveTileTexture(int TileX, int TileY, int zoomL, UTexture2D * tex2D) | |
{ | |
FString PackageName = TEXT("/Game/MapTiles/"); | |
FString TextureName = TEXT("Image101"); | |
UPackage* Package = CreatePackage(NULL, *PackageName); | |
Package->FullyLoad(); | |
FString DirName = TEXT("/Game/MapTiles/"); | |
FString FileName = TEXT("Image101"); | |
TextureCompressionSettings prevCompression = tex2D->CompressionSettings; | |
#if WITH_EDITORONLY_DATA | |
TextureMipGenSettings preMipSettings = tex2D->MipGenSettings; | |
#endif | |
tex2D->CompressionSettings = TextureCompressionSettings::TC_VectorDisplacementmap; | |
#if WITH_EDITORONLY_DATA | |
tex2D->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps; | |
#endif | |
tex2D->UpdateResource(); | |
FTexture2DMipMap* MM = &tex2D->PlatformData->Mips[0]; | |
TArray<FColor> OutBMP; | |
int w = MM->SizeX; | |
int h = MM->SizeY; | |
OutBMP.SetNumUninitialized(w*h); | |
FByteBulkData* RawImageData = &MM->BulkData; | |
//FColor* FormatedImageData = static_cast<FColor*>(RawImageData->Lock(LOCK_READ_WRITE)); | |
uint8* FormatedImageByteData = static_cast<uint8*>(RawImageData->Lock(LOCK_READ_WRITE)); | |
// if (FormatedImageData && FormatedImageData) | |
if(FormatedImageByteData) | |
{ | |
/*for (int i = 0; i < (w * h); ++i) | |
{ | |
OutBMP[i] = FormatedImageData[i]; | |
OutBMP[i].A = 255; | |
}*/ | |
RawImageData->Unlock(); | |
FIntPoint DestSize(w, h); | |
FString ResultPath; | |
FHighResScreenshotConfig& HighResScreenshotConfig = GetHighResScreenshotConfig(); | |
//HighResScreenshotConfig.Init(); //SaveImage(FileName, OutBMP, DestSize, nullptr); | |
//HighResScreenshotConfig.ImageWriteQueue | |
if (!ensureMsgf(HighResScreenshotConfig.ImageWriteQueue, TEXT("Unable to write images unless FHighResScreenshotConfig::Init has been called."))) | |
{ | |
// Do something | |
} | |
int test_length = 1024; | |
uint8 TextureWidth = (uint8)test_length; | |
uint8 TextureHeight = (uint8)test_length; | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Texture Width: %d "), TextureWidth); | |
UE_LOG(LogSmartWorldPro, Warning, TEXT("Texture Height: %d "), TextureHeight); | |
UTexture2D* NewTexture = NewObject<UTexture2D>(Package, *TextureName, RF_Public | RF_Standalone | RF_MarkAsRootSet); | |
NewTexture->AddToRoot();// This line prevents garbage collection of the texture | |
NewTexture->PlatformData = new FTexturePlatformData(); // Then we initialize the PlatformData | |
NewTexture->PlatformData->SizeX = TextureWidth; | |
NewTexture->PlatformData->SizeY = TextureHeight; | |
NewTexture->PlatformData->NumSlices = 1; | |
NewTexture->PlatformData->PixelFormat = EPixelFormat::PF_B8G8R8A8; | |
FTexture2DMipMap* Mip = new(NewTexture->PlatformData->Mips) FTexture2DMipMap(); | |
Mip->SizeX = TextureWidth; | |
Mip->SizeY = TextureHeight; | |
NewTexture->CompressionSettings = TextureCompressionSettings::TC_Displacementmap; | |
#if WITH_EDITORONLY_DATA | |
NewTexture->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps; | |
#endif | |
Mip->BulkData.Lock(LOCK_READ_WRITE); | |
uint8* TextureData = (uint8*)Mip->BulkData.Realloc(TextureWidth * TextureHeight * 4); | |
FMemory::Memcpy(TextureData, FormatedImageByteData, sizeof(uint8) * TextureHeight * TextureWidth * 4); | |
Mip->BulkData.Unlock(); | |
//NewTexture->Source.Init(TextureWidth, TextureHeight, 1, 1, ETextureSourceFormat::TSF_BGRA8, FormatedImageByteData); | |
/*NewTexture->UpdateResource(); | |
Package->SetDirtyFlag(true); | |
FAssetRegistryModule::AssetCreated(NewTexture);*/ | |
FString PackageFileName = FPackageName::LongPackageNameToFilename(PackageName, FPackageName::GetAssetPackageExtension()); | |
bool bSaved = UPackage::SavePackage(Package, NewTexture, EObjectFlags::RF_Public | EObjectFlags::RF_Standalone, *PackageFileName, GError, nullptr, true, true, SAVE_NoError); | |
delete FormatedImageByteData; | |
// Create ImageTask | |
//TUniquePtr<FImageWriteTask> ImageTask = MakeUnique<FImageWriteTask>(); | |
//// Pass bitmap to pixeldata | |
//ImageTask->PixelData = MakeUnique<TImagePixelData<FLinearColor>>(DestSize, MoveTemp(OutBMP)); | |
//ImageTask->PixelData = TUniquePtr<TImagePixelData<FLinearColor>>(DestSize, MoveTemp(OutBMP)); | |
//// Populate Task with config data | |
//HighResScreenshotConfig.PopulateImageTaskParams(*ImageTask); | |
//ImageTask->Filename = FileName; | |
//// Specify HDR as output format | |
////ImageTask->Format = EImageFormat::HDR; | |
//// Save the bitmap to disc | |
//TFuture<bool> CompletionFuture = HighResScreenshotConfig.ImageWriteQueue->Enqueue(MoveTemp(ImageTask)); | |
//if (CompletionFuture.IsValid()) | |
//{ | |
// CompletionFuture.Wait(); | |
//} | |
} | |
else | |
{ | |
UE_LOG(LogTemp, Error, TEXT("SaveTextureToDisk: could not access bulk data of texture! Texture: %s"), *tex2D->GetFullName()); | |
} | |
tex2D->CompressionSettings = prevCompression; | |
#if WITH_EDITORONLY_DATA | |
tex2D->MipGenSettings = preMipSettings; | |
#endif | |
} | |
void ASWP_MapTileManager::SaveTextureToDisk(UTexture2D* texture, const FString& file) | |
{ | |
// FString str1 = FString::FromInt(tileStructureMap[plane00]->TileX) + TEXT("/") + FString::FromInt(tileStructureMap[plane00]->TileY) + TEXT("/") + FString::FromInt(tileStructureMap[plane00]->ZoomLevel); | |
FString ThePath = FPaths::ConvertRelativePathToFull(FPaths::ProjectContentDir()) + TEXT("MapTiles/") + file; | |
//UE_LOG(LogTemp, Warning, TEXT("Path name is : %s"), *ThePath); | |
// Here I tried to work with a temporary texture, but that did not work. Changing the settings | |
// of the texture after copy did not have effect. | |
//UTexture2D* tempTex = texture->CreateTransient(texture->GetSizeX(), texture->GetSizeY()); | |
//void* dest = tempTex->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); | |
//texture->PlatformData->Mips[0].BulkData.GetCopy(&dest, false); | |
//tempTex->PlatformData->Mips[0].BulkData.Unlock(); | |
//tempTex->CompressionSettings = TextureCompressionSettings::TC_VectorDisplacementmap; | |
//tempTex->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps; | |
//tempTex->UpdateResource(); | |
//TextureCompressionSettings prevCompression = texture->CompressionSettings; | |
//TextureMipGenSettings prevMipSettings = texture->MipGenSettings; | |
//texture->CompressionSettings = TextureCompressionSettings::TC_VectorDisplacementmap; | |
//texture->MipGenSettings = TextureMipGenSettings::TMGS_NoMipmaps; | |
//texture->UpdateResource(); | |
//FTexture2DMipMap* MM = &texture->PlatformData->Mips[0]; | |
//TArray<FColor> OutBMP; | |
//int w = MM->SizeX; | |
//int h = MM->SizeY; | |
//OutBMP.SetNumUninitialized(w*h); | |
//FByteBulkData* RawImageData = &MM->BulkData; | |
//FColor* FormatedImageData = static_cast<FColor*>(RawImageData->Lock(LOCK_READ_ONLY)); | |
//if (FormatedImageData) | |
//{ | |
// for (int i = 0; i < (w*h); ++i) | |
// { | |
// OutBMP[i] = FormatedImageData[i]; | |
// OutBMP[i].A = 255; | |
// } | |
// RawImageData->Unlock(); | |
// FIntPoint DestSize(w, h); | |
// FString ResultPath; | |
// FHighResScreenshotConfig& HighResScreenshotConfig = GetHighResScreenshotConfig(); | |
// //HighResScreenshotConfig.SaveImage(file, OutBMP, DestSize, nullptr); | |
// | |
//} | |
//else | |
//{ | |
// UE_LOG(LogTemp, Error, TEXT("SaveTextureToDisk: could not access bulk data of texture! Texture: %s"), *texture->GetFullName()); | |
//} | |
//texture->CompressionSettings = prevCompression; | |
//texture->MipGenSettings = prevMipSettings; | |
FImageWriteOptions FOptions; | |
FOptions.bAsync = true; | |
FOptions.bOverwriteFile = true; | |
FOptions.CompressionQuality = 1; | |
FOptions.Format = EDesiredImageFormat::PNG; | |
UImageWriteBlueprintLibrary::ExportToDisk(texture, ThePath, FOptions); | |
} | |
bool ASWP_MapTileManager::InstantiateSaveGameObject() | |
{ | |
bool bLoaded = false; | |
mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::CreateSaveGameObject(USWP_SaveManager::StaticClass())); | |
mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::LoadGameFromSlot(mSaveGameSlot->SaveSlotName, 0)); | |
if (mSaveGameSlot != nullptr) | |
{ | |
bLoaded = true; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Save Game Object Successful!")); | |
ManagerTileList = mSaveGameSlot->MapTileList; | |
} | |
else | |
{ | |
mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::CreateSaveGameObject(USWP_SaveManager::StaticClass())); | |
check(mSaveGameSlot) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Create Save Game Instance successful!")); | |
mSaveGameSlot->PlayerName = TEXT("SWP Player"); | |
mSaveGameSlot->MapTileList.Empty(); | |
ManagerTileList = mSaveGameSlot->MapTileList; | |
if (UGameplayStatics::SaveGameToSlot(mSaveGameSlot, mSaveGameSlot->SaveSlotName, 0)) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Added Custom Player Name to Save Game Object!")); | |
} | |
} | |
} | |
return bLoaded; | |
} | |
bool ASWP_MapTileManager::FindTileMapInDatabase(FString texName) | |
{ | |
bool bLoaded = false; | |
FString mapTileName = TEXT("Image01"); | |
//check(mSaveGameSlot) | |
if (ManagerTileList.Num() < 1) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("NO Items in the Save Game Object")); | |
return bLoaded; | |
} | |
//if (mSaveGameSlot->MapTileList.Contains(texName)) | |
int32 indexID = 0; | |
if (ManagerTileList.Find(texName,indexID)) | |
{ | |
bLoaded = true; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Found the item in Save Game Object")); | |
return bLoaded; | |
} | |
else | |
{ | |
bLoaded = false; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Item not found in the Save Game Object")); | |
} | |
return bLoaded; | |
} | |
bool ASWP_MapTileManager::AddTileIDinSaveGameObject(FString texName) | |
{ | |
bool bAdded = false; | |
//check(mSaveGameSlot) | |
if (ManagerTileList.Contains(texName)) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Cannot Add Texture Name, already present in the list.")); | |
return bAdded; | |
} | |
else | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Added the item in the list.")); | |
ManagerTileList.Add(texName); | |
currentSaveTimer = SaveTimer; | |
bCheckSaveTimer = true; | |
bAdded = true; | |
} | |
return bAdded; | |
} | |
bool ASWP_MapTileManager::SaveTileData() | |
{ | |
bool sResult = false; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Calling Save Function.")); | |
//mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::CreateSaveGameObject(USWP_SaveManager::StaticClass())); | |
//mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::LoadGameFromSlot(mSaveGameSlot->SaveSlotName, 0)); | |
check(mSaveGameSlot) | |
mSaveGameSlot->MapTileList.Empty(); | |
mSaveGameSlot->MapTileList.Reserve(ManagerTileList.Num()); | |
mSaveGameSlot->MapTileList = ManagerTileList; | |
if (UGameplayStatics::SaveGameToSlot(mSaveGameSlot, TEXT("A1"), 0)) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Saving Values...!")); | |
mSaveGameSlot = Cast<USWP_SaveManager>(UGameplayStatics::LoadGameFromSlot(TEXT("A1"), 0)); | |
if(mSaveGameSlot != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Loaded New Values in Save Game Object!")); | |
ManagerTileList = mSaveGameSlot->MapTileList; | |
} | |
sResult = true; | |
} | |
return sResult; | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane00(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadStr1 = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".")+loadStr + TEXT("'"); | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/730X426Y10Z.730X426Y10Z'"); | |
const TCHAR* tchar = *loadStr1; | |
//UE_LOG(LogSaveGameManager, Warning, TEXT("%s"), *loadStr1); | |
//UE_LOG(LogSaveGameManager, Warning, TEXT("%s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
//UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 00")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane00->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane01(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
if (DEBUG_TILETEXTURE == DEBUG_ON) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
} | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
if (DEBUG_TILETEXTURE == DEBUG_ON) | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 01")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane01->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane02(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
if (DEBUG_TILETEXTURE == DEBUG_ON) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
} | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
if (DEBUG_TILETEXTURE == DEBUG_ON) | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 02")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane02->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane03(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 02")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane03->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane04(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 02")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane04->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane10(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 10")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane10->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane11(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 11")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane11->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane12(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 12")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane12->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane13(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 11")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane13->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane14(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 12")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane14->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane20(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 20")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane20->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane21(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane21->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane22(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane22->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane23(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane23->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane24(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane24->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane30(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 20")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane30->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane31(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane31->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane32(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane32->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane33(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane33->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane34(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane34->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane40(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 20")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane40->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane41(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane41->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane42(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane42->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane43(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 21")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane43->SetMaterial(0, mTileInstDyn); | |
} | |
} | |
void ASWP_MapTileManager::LoadSavedTexturePlane44(FString loadStr) | |
{ | |
// const TCHAR* tchar = *loadStr; | |
FString loadedStr = TEXT("Texture2D'/Game/MapTiles/") + loadStr + TEXT(".") + loadStr + TEXT("'");; | |
const TCHAR* tchar = *loadedStr; | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Load Path is: %s"), *loadStr); | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Original Path is Path is: %s"), *loadedStr); | |
if (loadStr.IsEmpty()) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Texture path is empty")); | |
return; | |
} | |
//UTexture* tempTex2D = Cast<UTexture>(StaticLoadObject(UTexture::StaticClass(), NULL, *(loadStr))); | |
//UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, TEXT("730X426Y10Z"),tchar,LOAD_None,nullptr);// , NULL, LOAD_None, NULL); | |
UTexture2D* tempTex2D = LoadObject<UTexture2D>(nullptr, tchar, nullptr, LOAD_None, NULL); | |
if (tempTex2D != nullptr) | |
{ | |
UE_LOG(LogSaveGameManager, Warning, TEXT("Got the texture. Saving Texture in Plane 22")); | |
mTileInstDyn = UMaterialInstanceDynamic::Create(mTileInst, this); | |
mTileInstDyn->SetVectorParameterValue("Color", FLinearColor::White); | |
mTileInstDyn->SetTextureParameterValue("TileTexture", tempTex2D); | |
plane44->SetMaterial(0, mTileInstDyn); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment