假日,是扯淡的日子,正如詩里扯的淡:
你是一樹一樹的花開,
是燕在樑間呢喃,
你是愛、是暖、是希望,
你是人間的四月天!
前情回顧:UE4扯淡大雜燴第一季
UnrealVS的蛋
UnrealVS 在 VS2015--Tools--Extension 中看不到了。
IDE里也看不到,不能使用
重新安裝UnrealVS,提示:
"The extension is already installed to all applicable products'
如果裝了微軟的插件開發(fā)包,
卸載微軟插件開發(fā)包,就正常了。
遠(yuǎn)離微軟,珍愛生命!
在組件中打印調(diào)試屏幕信息
AHUD::OnShowDebugInfo.AddStatic(&UAbilitySystemComponent::OnShowDebugInfo);
只有動(dòng)態(tài)廣播代理才可以在BP中訪問
非動(dòng)態(tài)代理如果加UPROPERTY(BlueprintAssignable) 修飾編譯報(bào)錯(cuò):
error : Unrecognized type 'FCooldownEffectAppliedDelegate_Native' - type must be a UCLASS, USTRUCT or UENUM
DebugGame Editor 調(diào)試無法斷點(diǎn)
刪除生成的dll可以解決,例如直接刪除目錄 Binaries\Win64
HP Bar方案
AStrategyHUD.DrawHealthBar
<占位項(xiàng)2>
DebugGame 模式下頻繁修改和編譯某個(gè)文件出現(xiàn)編譯卡死
這種情況,切換到Development Editor下,就好了。版本4.18。
自定義VS版本
方法一,在配置文件中設(shè)置:
/Config/DefaultEditorSettings.ini
[/Script/SourceCodeAccess.SourceCodeAccessSettings]
PreferredAccessor=VisualStudio2017
方法二:在編輯器中設(shè)置
烏龜GIT跳過代理
Settings -> Network -> Enable Proxy Server 選中后再
取消,再點(diǎn)應(yīng)用
被河蟹的Grandle的蛋
新版4.20 android打包時(shí),提示正在下載gradle-4.1-all.zip,然后就開在哪里了。
解決一:禁用grandle:Project Settings/Platforms/Android/APK Packaging/Enable Grandle Instead of Ant --> Flase
<占位項(xiàng)1>
<占位項(xiàng)2>
BP中節(jié)點(diǎn)沒有執(zhí)行連線
兩種情形,節(jié)點(diǎn)沒有執(zhí)行連線,表現(xiàn)為和變量一樣get
C++中,UFUNCTION是const
BP中,函數(shù)勾選了BlueprintPure
Opengles 3.1 skinning骨骼數(shù)限制75
如何是好
角色的骨骼可以比較多,但是skinning骨骼限制為75
https://docs.unrealengine.com/en-us/Platforms/Mobile/Meshes
https://forums.unrealengine.com/development-discussion/rendering/43185-character-s-skeletal-mesh-disappears-under-mobile-html-5-preview-rendering-level
Delicated Server啟動(dòng)的蛋
都好了后,服務(wù)器啟動(dòng)不起來。后來發(fā)現(xiàn),要Package Projects生成WIN64的客戶端后,將Server放在Binaries\Win64下
Joystick的淡
在編輯器模式下,如果用DS模式運(yùn)行多個(gè)客戶端,則只有第一個(gè)客戶端的Joystick是正常的,其他都控制到第一個(gè)客戶端去了。4.19和4.21都有這個(gè)BUG.
APlayerController.SetPawn重載問題
SetPawn重載后不被調(diào)用,百思不得其解
VS2017編譯UE4.22的蛋蛋
每次都提示錯(cuò)誤:
Setting up Unreal Engine 4 project files...
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(1179,5):
error MSB3644: 未找到框架“.NETFramework,Version=v4.6.2”的引用程序集。若要解決此問題,請安裝此框架版本的 SDK 或 Targeting Pack,
或?qū)?yīng)用程序的目標(biāo)重新指向已裝有 SDK 或 Targeting Pack 的框架版本。請注意,將從全局程序集緩存(GAC)解析程序集,并將使用這些程序集替換引用程序集。
因此,程序集的目標(biāo)可能未正確指向您所預(yù)期的框架。 [G:\Unreal\UE4.22\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.csproj]
GenerateProjectFiles ERROR: UnrealBuildTool failed to compile.
解決
下載.Net 4.6.2,安裝或已安裝選擇修復(fù)。
https://dotnet.microsoft.com/download/visual-studio-sdks
蛋:
已經(jīng)安裝了這個(gè)版本,但是還是提示錯(cuò)誤。直接打開UnrealBuildTool.csproj工程,VS會提示沒有這個(gè)版本,選擇下載安裝跳到微軟的下載網(wǎng)站。
修復(fù)一下就好了。
SObjectWidget回收的蛋
蛋:
You may just be holding onto some slate pointers on an actor that don't get reset until the actor is Garbage Collected. You should avoid doing this, and instead reset those references when the actor is Destroyed.
[2019.09.08-07.22.53:693][667]LogOutputDevice: Error: Ensure condition failed: !IsGarbageCollecting() [File:D:\Build\++UE4\Sync\Engine\Source\Runtime\UMG\Private\Slate\SObjectWidget.cpp] [Line: 43]
解決:
在Actor(例如PC,Character等)的BenginPlay中創(chuàng)建了UMG,需要在EndPlay的時(shí)候銷毀掉。
VS2019升級到4.25出現(xiàn)“chcp 65001 >NUL”錯(cuò)誤的蛋
蛋:
Creating makefile for YoursEditor (no existing makefile)
由于 Exception.ToString() 失敗,因此無法打印異常字符串。
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets(46,5):
error MSB3073: The command "chcp 65001 >NUL && "D:\Program Files\Epic Games\UE_4.25\Engine\Build\BatchFiles\Build.bat"
YoursEditor Win64 Development -Project="F:\UE\AbilitySystem\GameAbility_gitee\Yours.uproject" -WaitMutex -FromMsBuild" exited with code -532462766.
Done building project "Yours.vcxproj" -- FAILED.
解決:
找到工程下的中文路徑,刪改之。如果有g(shù)it,則需要?jiǎng)h除中文明后提交,避免本地git緩存中也包含了這個(gè)中文名。
扯蛋:
之前的4.19沒有這個(gè)問題,到4.25就突然這樣了。網(wǎng)上說是VS2019的問題,幾個(gè)月了都不見修復(fù)
4.25新鮮出爐的Android蛋蛋
從4.25開始Android版本需要用新的方式安裝,具體建發(fā)布聲明中的“New: Android NDK 21b Update”
https://docs.unrealengine.com/en-US/Support/Builds/ReleaseNotes/4_25/index.html
簡單來說就是卸載就的NDK和CodeWork,然后安裝AndroidStudio和新的NDK 21b
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>
<占位標(biāo)題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項(xiàng)1>
<占位項(xiàng)2>