Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"


Chunkのアップデートの仕組みについて、よくわからないところがあり、問い合わさせていただきました。 具体的には、SlideShareにアップロードされている以下のスライド資料に関する質問になります。

「徹底解説!UE4を使ったモバイルゲーム開発におけるコンテンツアップデートの極意!」 https://www.slideshare.net/EpicGamesJapan/ue4-95204920



・変更がないChunkはハッシュ値が変化しないので再ダウンロードは行われない」 https://image.slidesharecdn.com/upload-180427074031/95/ue4-48-638.jpg





Blueprint上で“Request Content”ノードを使用して、Chunkのダウンロードを実装していますが、この場合ですと、ハッシュ値が参照されず、ハッシュ値が更新されていようといまいと、Chunkをダウンロードしてしまいます。


ハッシュ値を参照したChunkのアップデートはどのように実装するのが正しいのでしょうか。 Chunk周りにつきましては、web上の情報が非常に限られており、なかなか手がかりを得ることができません。 情報が記載されているwebページ(英語でも可)や、実装のヒント等、ご教示いただけましたら幸いです。


Product Version: UE 4.21
more ▼

asked Apr 24 '19 at 11:58 AM in Packaging & Deployment

avatar image


(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first


 if ((InstalledVersion != RemoteVersion && bInstallIsPatch == bRemoteIsPatch) || FilesHaveChanged(InstalledManifest, RemoteManifest, ChunkID))
 bool FHTTPChunkInstall::FilesHaveChanged(IBuildManifestPtr LocalManifest, IBuildManifestPtr RemoteManifest, int32 InInstallingChunkID)
     if (LocalManifest->GetDownloadSize() != RemoteManifest->GetDownloadSize())
         return true;
     // same number of files check to see if the file StartBuis out dated
     auto ChunkFolderName = FString::Printf(TEXT("%s%d"), TEXT("base"), InInstallingChunkID);
     auto ChunkInstallDir = FPaths::Combine(*InstallDir, *ChunkFolderName);
     FBuildPatchAppManifestPtr CurrentManifest = StaticCastSharedPtr< FBuildPatchAppManifest >(LocalManifest);
     FBuildPatchAppManifestPtr InstallManifest = StaticCastSharedPtr< FBuildPatchAppManifest >(RemoteManifest);
     TSet<FString> OutOfDateFiles;
     CurrentManifest->GetOutdatedFiles(InstallManifest.ToSharedRef(), ChunkInstallDir, OutOfDateFiles);
     return OutOfDateFiles.Num() > 0;
     return false;


 bool isHashMatch = true;
 TSet<FString> Tags;
 auto DonwloadSize = (double)RemoteManifest->GetDeltaDownloadSize(Tags, InstalledManifest.ToSharedRef());
 isHashMatch = DonwloadSize == 0;
 if (!isHashMatch || (InstalledVersion != RemoteVersion && bInstallIsPatch == bRemoteIsPatch))


more ▼

answered May 14 '19 at 09:11 AM

avatar image

Kaz.Okada STAFF
6 1

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question