首页 > 编程语言 >Godot C#接入steam sdk

Godot C#接入steam sdk

时间:2024-02-26 20:46:24浏览次数:35  
标签:Godot 项目 C# Steamworks dll 文件夹 steamsdk steam 下载

视频参考链接:How i did it Godot Tutorial - Connect your game to Steam + lobby server + Playfab

1.下载资源

首先使用C#版的godot记得下载.net。

下载steamsdk: 链接

2.创建项目

和平常的操作无异,我这里的项目名称是steamsdk。

再在项目中添加一个CSharp代码,随便写点什么,比如写个Hello world。

GD.Print("Hello world");

把这个文件挂载在任意一个节点上,并编译项目

img

3.将下载的steamsdk中的文件添加到项目中

在下载的steamsdk中将 Unity\redistributable_bin\win64 文件夹下的 steam_api64.dll 复制到项目的根目录下。

img

再创建一个文件夹,名叫Libs,将下载的steamsdk中Unity文件夹下的 Facepunch.Steamworks.Win64.dll 复制到这个文件夹下

img

4.更改项目配置文件

在vscode中打开项目文件夹,就会看见一个[项目名].csproj的文件。

img

点开它,默认的代码应该是


  <Project Sdk="Godot.NET.Sdk/4.2.0">
  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>
    <TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
    <EnableDynamicLoading>true</EnableDynamicLoading>
  </PropertyGroup>
</Project>

修改它为

<Project Sdk="Godot.NET.Sdk/4.2.0">
  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>
    <TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
    <EnableDynamicLoading>true</EnableDynamicLoading>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="Facepunch.Steamworks.Win64">
      <HintPath>Libs\Facepunch.Steamworks.Win64.dll</HintPath>
    </Reference>
  </ItemGroup>
</Project>

其中,HintPath 中的路径就是 Facepunch.Steamworks.Win64.dll 在项目中的相对路径。

标签:Godot,项目,C#,Steamworks,dll,文件夹,steamsdk,steam,下载
From: https://www.cnblogs.com/bookerbug/p/17893120.html

相关文章

  • Go 100 mistakes - #77: Common JSON-handling mistakes
       ......
  • Codeforces 1451F Nullify The Matrix
    因为保证了这个路径必须是向下和向右,就可以考虑每一条\(i+j=x\)的斜线上的点,因为一条路径经过的点对应的\(i+j\)一定是每次\(+1\)的。考虑到因为对于同一条直线,每个点是独立的,因为一条路径至多经过这条直线上的一个点。于是可以考虑用\(\text{Nim}\)的思想把这条......
  • centos7安装hadoop(集群模式)
    目录节点规划安装前准备准备jdk和hadoop的安装文件分别修改三台主机名字建立hadoop账号添加账号并且指定密码添加hadoop账号到sudo组,vi/etc/soduers切换到hadoop账号配置三台主机的证书登录解压jdk和hadoop配置环境变量复制jdk和配置文件到别的节点使环境变量生效编辑文件修改修......
  • C语言进行时3-数据类型
    数据类型:整数类型:int,char,short,long,longlong(字节:4,1,2,8,8其中long在32位电脑中是4字节)1字节(byte)=8位(bit)浮点数类型:float,double,longdouble(字节:4,8)有效字数:7,15逻辑类型:&&(与),||(或),!(非)整数的输入输出%dint%uunsigned%ldlonglong%luunsignedlonglong......
  • pandas | value_counts()的用法
    value_counts()方法返回一个序列Series,该序列用于统计某列中各个值的出现次数的函数。当配合参数bins使用时,它可以将数据分成指定的区间,然后统计每个区间内值的出现次数。value_counts()是Series拥有的方法,一般在DataFrame中使用时,需要指定对哪一列或行使用。value_counts()只......
  • C++ 关键字
    C++关键字alignas和alignof用法alignasalignas指定了内存按照多少对齐。alignas(0)这种写法无效,编译器会无视你的这个代码structalignas(8)S{};//表示是8个字节的对齐方式structalignas(1)U{Ss;};//虽然里面有个S,但是依然指定了该结构体的内存对齐要求为1字......
  • CF1923 Educational Codeforces Round 162 (Rated for Div. 2)
    C.FindB给出一个数组A,对于q个询问,每个询问给出[l,r],对于A的子数组[l,r],问是否存在一个相同大小的数组B,使得两个数组的和相同,且任意相同下标的元素不同?Solution:A中任意一个大于1的元素,可以把他变成1,多余的那部分给到其他位置的元素上(如最后一个)对于等于1的元素,把......
  • 【opencv】两种cpp读取图片作为
    #include<fstream>//ifstream,ifstream::inusingnamespacestd;intmain(){ //1.打开图片文件 //评论区的@霍鑫网络帮忙发现一个隐藏的bug,在此表示感谢,已经修正 ifstreamis("test.jpg",ifstream::in|ios::binary); //2.计算图片长度 is.seekg(0,is.end);......
  • Backpropagation
    backpropagation(反向传播)在计算gradient的vector时可以有效率地把vector计算出来我们先考虑一个neuron考虑链式法则,现计算$\frac{\partialz}{\partialw}$,计算较为简单,规律发现就是input以上步骤就叫forwardpass,接下来介绍backwardpass,即计算$\frac{\partialC}{\parti......
  • CF1932 Codeforces Round 927 (Div. 3)
    E.FinalCountdown我愿称之为今年最傻逼的一次,思路很快想出来了,但是实现一直搞不对观察发现答案是n的所有前i位数相加(如12345,那么ans=12345+1234+123+12+1)要证明的话就是按照题目的Note那样算,(以12345为例,ans=(12345-1234-123-12-1)+21234+2123+212+21)然后傻逼的事情......