私は自分のゲームにSteamworks関数を実装し始めました。私は蒸気APIとの同期を取ることができました(私は成果を上げ、私は自分の蒸気でゲームをしていることを知ることができます)。しかし、私は彼らが提供したいくつかの機能を使い始めたいとき、私のエンジンは言っています:Unreal Engine 4でSteamworksを使用する
error LNK2019: unresolved external symbol
誰でも私はこの問題を解決するのに役立ちますか?私はリーダーボードでのスコアの読み取りと保存を目標にしています。私のために良いアドバイスはありますか? :私にエラーを与えるD
コードサンプル:
int MyCodeLibrary::TryGetScore()
{
if (SteamAPI_Init())
{
CSteamLeaderboards obj();
obj().FindLeaderboard("test");
obj().DownloadScores();
return 0;
}
else
{
return 0;
}
}
はまた、このようOnlineSubsystemで蒸気に取得しよう:だから
void MyCodeLibrary::UpdateScoreInt(int score, FName board, APlayerController* PlayerController)
{
OutputDebugStringA("Funkcja jest wywoływana");
if (SteamAPI_Init())
{
OutputDebugStringA("Steam API działa");
ULocalPlayer* LocalPlayer = Cast<ULocalPlayer>(PlayerController->Player);
IOnlineSubsystem* ion = IOnlineSubsystem::Get(FName("Steam"));
TSharedPtr<const FUniqueNetId> UserId = ion->GetIdentityInterface()->GetUniquePlayerId(LocalPlayer->GetControllerId());
ion->GetLeaderboardsInterface();
FOnlineLeaderboardWrite wrt;
wrt.LeaderboardNames.Add(board);
wrt.SetIntStat(TEXT("Score"), score);
if (UserId.IsValid())
{
OutputDebugStringA("Mam UserID");
ion->GetLeaderboardsInterface()->WriteLeaderboards(board, *UserId, wrt);
printf("Odpalony score");
}
}
}
あなたはSteamworksのライブラリにリンクしていません。あなたは少なくとも、象徴的に欠けている象徴を見せてもらえますか? – arrowd
残念ながら、私はプロジェクトATMにアクセスすることはできませんが、私は明日それを行うことができます。私はSteam_api.hがリンクされていることを確かに知っていますが、他には何も言及されていません。/ – Avengar
ヘッダーを含むだけでは不十分です。いくつか**ライブラリ**にリンクする必要があります。 – arrowd