Steamworks 文献库
Steam 屏幕截图

概览

Steam 界面自动提供给所有 Steam 游戏的截图,而 Steamworks API 也提供了一组可与之互动的 API。Steamworks 截图 API 可让您截取屏幕画面,并储存至用户本机的截图库中,当中也包含例如游戏中的地名或标记的用户等元数据。
备注:必须开启游戏的 Steam 界面才可使用截图系统。

按下由 Steam 控制的快捷键(默认为 F12),即可截取屏幕画面。

用户可自行更改截图的快捷键,并在任何 Steam 游戏中都会生效。前往设定 -> 游戏中即可更改。

screenshot_hotkey.png

截图上传器

结束游戏后,截图上传器即会自动开启之前游玩时所有截取的画面。若要关闭,可前往设定 -> 云,并取消勾选“如已抓取截图,在关闭游戏后开启截图上传器”。

screenshot_uploader.png

您可随时通过 Steam 访问截图上传器。前往查看 -> 截图,或点击 Steam 界面中的截图即可开启截图上传器。

用户上传了任何截图后,便可在他们的社区个人资料或游戏的社区中心看到。

Steam 截图 API

Steamworks SDK 提供了 ISteamScreenshots,让您能够使用高级功能,将 Steam 截图系统集成至您的游戏中,并带给顾客最佳体验。

默认情况下,Steam 会截取所有截图,但您也可使用 ISteamScreenshots::HookScreenshots 挂钩并控制截图功能。如要挂钩截图,用户按下截图快捷键时,便会收到 ScreenshotRequested_t 回调。您可使用 ISteamScreenshots::IsScreenshotsHooked 来确认当前是否已挂钩至截图。

无论是否已挂钩,在截图成功储存至磁盘中后,您都会收到 ScreenshotReady_t 回调。收到回调后,您应检查结果。 如果成功,便可使用 ScreenshotHandle 来设置以下标签:

如果您希望使用自己的按钮截取屏幕,或是在游戏中某个时刻自动截取,例如游戏结束时,您可将 ISteamScreenshots::TriggerScreenshot 写入程序代码中,或使用 ISteamScreenshots::WriteScreenshot 写入 RGB 字节,另外也可用 ISteamScreenshots::AddScreenshotToLibrary/ISteamScreenshots::AddVRScreenshotToLibrary 从磁盘新增一个文件。