Steam için derleme
- Oyun Geliştirme kursu
- Uzman
- Ders 15/47
- 4 dk
Steam için Windows derleme ve Steamworks entegrasyonunu öğrenirsin.
Steam için Windows derlemesi
Steam platformu masaüstü için çoğunlukla Standalone Windows 64-bit (x86_64) derlemesi talep eder. Derleme alındığında bir ana çalıştırılabilir dosya (Oyun.exe) ve oyun varlıklarını barındıran veri klasörü (Oyun_Data) üretilir.
// SteamPipe araci ile Steam sunucularina depot yuklenir:
// Klasor yapisi: Oyun.exe ve UnityPlayer.dll ayni dizinde kalmalidirSteamworks SDK entegrasyonu başarımlar, bulut kayıtları ve atölye desteği için gereklidir.
Steamworks başlatma ve SteamPipe
Steam API, oyun döngüsünün en başında SteamAPI.Init() çağrısı ile başlatılır. Steam istemcisi açık değilse bu fonksiyon false döner ve oyun yetkisiz çalıştırmayı engellemek için kapatılabilir.
if (!Steamworks.SteamAPI.Init()) {
Debug.LogError("Steam istemcisi bulunamadi!");
Application.Quit();
}Hazırlanan derlemeler SteamPipe komut satırı aracıyla Steamworks paneline otomatik olarak yüklenir.
Uygulama Steam bağlantı durumunu doğrula
steamConnected bayrağını bir if bloğu ile kontrol et. Değer true ise Console.WriteLine ile "SteamAPI Baslatildi: AppID 480" metnini yazdır.
Başlangıç kodu
using System;
class SteamLauncher
{
static void Main()
{
int appId = 480;
bool steamConnected = true;
// Steam durumunu kontrol et ve konsola yazdir
}
}Örnek çözüm
using System;
class SteamLauncher
{
static void Main()
{
int appId = 480;
bool steamConnected = true;
if (steamConnected)
{
Console.WriteLine($"SteamAPI Baslatildi: AppID {appId}");
}
}
}Beklenen çıktı
SteamAPI Baslatildi: AppID 480
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Steamworks entegrasyonu içeren bir projede editör içinde yerel test yapabilmek için proje kökünde hangi dosya bulunmalıdır?
- steam_manifest.json
- steam_appid.txt Doğru cevap
- steam_config.ini
- steam_license.key
Açıklama: steam_appid.txt dosyası içinde oyunun Steam AppID numarası yer alır ve yerel editör testinde Steam API bağlantısını mümkün kılar.
2 SteamAPI başlat
// Steamworks baglantisini baslat
bool isSteamReady = Steamworks.SteamAPI.____();
// Steamworks baglantisini baslat
bool isSteamReady = Steamworks.SteamAPI.Init();
Açıklama: Steamworks API kütüphanesi SteamAPI.Init() metoduyla başlatılır.
3 Steam dağıtım araçları
| Kavram | Anlamı |
|---|---|
Standalone Windows |
PC için bağımsız oyun derlemesi |
steam_appid.txt |
Editör testi için Steam App ID tutar |
SteamAPI.Init() |
Steam istemcisiyle bağlantı kurar |
SteamPipe |
Steam'e derleme yükleme aracı |