zoukankan      html  css  js  c++  java
  • 基于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

  • 相关阅读:
    Java [Leetcode 319]Bulb Switcher
    Java [Leetcode 122]Best Time to Buy and Sell Stock II
    谱聚类算法
    Java [Leetcode 238]Product of Array Except Self
    Java [Leetcode 260]Single Number III
    X++ StrFix方法
    D365 FO第三方访问https证书问题
    D365 FO 使用.NET DLL
    D365 FO第三方集成(四)---客户端调用
    D365 FO第三方集成(三)---服务实现
  • 原文地址:https://www.cnblogs.com/sanyejun/p/8664729.html
Copyright © 2011-2022 走看看