基于steamworks获取steam用户头像
查看官网api,使用c++写的,转成c#之后,有个问题就是,图片显示问题
我们可以获取到一个含有图片信息的byte[]
然后
private Texture2D downloadedAvatar; public RawImage image; downloadedAvatar = new Texture2D((int) width, (int) height, TextureFormat.RGBA32, false); downloadedAvatar.LoadRawTextureData(avatarStream); downloadedAvatar.Apply(); image.texture = downloadedAvatar;
Texture2D先load,然后Apply就行了
【完整源码】
IEnumerator _FetchAcatar(CSteamID id, RawImage ui) { //获取中等图片,如果获取的是大图片的话,可能获取不到 var AvatarInt = SteamFriends.GetMediumFriendAvatar(id); Debug.Log("AvatarInt" + AvatarInt); while (AvatarInt == -1) { yield return null; } if (AvatarInt > 0) { SteamUtils.GetImageSize(AvatarInt, out width, out height); if (width > 0 && height > 0) { byte[] avatarStream = new byte[4 * (int)width * (int)height]; SteamUtils.GetImageRGBA(AvatarInt, avatarStream, 4 * (int)width * (int)height); downloadedAvatar = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false); downloadedAvatar.LoadRawTextureData(avatarStream); downloadedAvatar.Apply(); ui.texture = downloadedAvatar; } } }
一个开源的unity+steam联机方案
https://zhuanlan.zhihu.com/p/33601024
【steam用户验证】
https://api.steampowered.com/ISteamUser/CheckAppOwnership/v2/?key=A182BE6994FEE94C0880A2FB2759E311&format=json&steamid=76561198448857469&appid=776510
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~