技术方向可行
使用鼠标轨迹生成偏移应用到材质上实现扭曲技术可行
This commit is contained in:
		| @ -83,9 +83,26 @@ bool UBusyGamePlayLibrary::GetCookMaterialStateConfig(const FName& RowName, FBus | ||||
| 	return GetTableConfig<FBusyCookMaterialStateConfig>(TEXT("CookMaterialStateConfig"), RowName, RowData); | ||||
| } | ||||
|  | ||||
| FLuaBPVar UBusyGamePlayLibrary::TestTable(const FName& RowName){ | ||||
| 	UDataTable* Table = UBusyGamePlayLibrary::GetGameDataTable("CookMaterialStateConfig"); | ||||
| 	auto Config = Table->FindRow<FTableRowBase>(RowName, "", true); | ||||
|  | ||||
| 	return FLuaBPVar(); | ||||
| FLuaBPVar UBusyGamePlayLibrary::CreateTextureBuffer(UObject* WorldContextObject){ | ||||
| 	// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | ||||
| 	auto DataTexture = UTexture2D::CreateTransient(512, 1, PF_R32_FLOAT); | ||||
| 	DataTexture->Filter = TF_Trilinear; | ||||
| 	DataTexture->AddressX = TA_Clamp; | ||||
| 	DataTexture->AddressY = TA_Clamp; | ||||
| 	DataTexture->UpdateResource(); | ||||
| 	return ULuaBlueprintLibrary::CreateVarFromObject(WorldContextObject, DataTexture); | ||||
| } | ||||
|  | ||||
| void UBusyGamePlayLibrary::UpdateTextureBuffer(UTexture2D *DataTexture, TArray<float> FloatData){ | ||||
| 	// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>д<EFBFBD><D0B4> | ||||
| 	DataTexture->GetPlatformData()->Mips[0]; | ||||
| 	FTexture2DMipMap& Mip = DataTexture->GetPlatformData()->Mips[0]; | ||||
| 	void* Data = Mip.BulkData.Lock(LOCK_READ_WRITE); | ||||
|  | ||||
| 	// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD> | ||||
| 	FMemory::Memcpy(Data, FloatData.GetData(), FloatData.Num() * sizeof(float)); | ||||
|  | ||||
| 	// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | ||||
| 	Mip.BulkData.Unlock(); | ||||
| 	DataTexture->UpdateResource(); | ||||
| } | ||||
|  | ||||
| @ -60,6 +60,10 @@ public: | ||||
| 	static bool GetCookMaterialStateConfig(const FName& RowName, FBusyCookMaterialStateConfig& RowData); | ||||
| 	 | ||||
| 	UFUNCTION(BlueprintPure) | ||||
| 	static FLuaBPVar TestTable(const FName& RowName); | ||||
| 	static FLuaBPVar CreateTextureBuffer(UObject* WorldContextObject); | ||||
|  | ||||
| 	UFUNCTION(BlueprintCallable) | ||||
| 	static void UpdateTextureBuffer(UTexture2D* DataTexture, TArray<float> FloatData); | ||||
|  | ||||
|  | ||||
| }; | ||||
|  | ||||
		Reference in New Issue
	
	Block a user