问题标签 [unreal-engine4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2072 浏览

c++ - C++ 中的同步 HTTP 请求

我已经建立了一个使用 PHP 脚本和 MySQL 数据库运行的多人专用服务器。我正在尝试通过 HTTP 访问服务器以发送/接收游戏数据,从获取服务器状态这样简单的事情开始。

我已经能够使用 Unreal Doc 的 IHttpRequest 成功联系服务器:

这将正确的代码与调试器相呼应,所以我知道服务器正在工作并且代码实际上正在获取它需要获取的内容。但是,我需要能够以 FString 的形式获取 HTTP 响应并将其返回给调用者,以便我可以在游戏中使用它。现在这个方法是异步的,这会阻止我返回响应。

如何进行同步 HTTP 请求,以便可以将响应作为字符串返回给调用者?

IE

0 投票
1 回答
1910 浏览

c++ - 将 C++ 函数导入为蓝图节点

我正在与虚幻引擎 4 中的一些朋友一起工作,我正在运行最新版本。我想知道是否可以将 C++ 中的函数作为节点带入蓝图中,因为我们中的一些人正在使用蓝图,而有些人正在使用 C++。

0 投票
1 回答
364 浏览

c++ - IHttpRequest 响应长度限制

我有一个我正在设置的 HTTP 游戏服务器,我有一个函数可以返回很多关于地图的信息。来自服务器的输出大约有 7800 个字符,但是当我在游戏中获取 URL 的内容时,游戏只得到了 1124 个字符。

IHttpRequest 的响应内容的长度是否有限制?

相关代码:


在旁注中,我不确定如何检查 an 是否FHttpResponsePtr指向空对象。我以为我在 while 循环中使用了该代码,但似乎没有什么不同。偶尔,代码会中断,因为当我尝试以字符串形式访问内容时响应为空。

任何人都知道如何正确检查它是否为空?


编辑:

根据@TheBrain 的回答,这是我修改后的循环:

但是,这会导致无限循环。

0 投票
1 回答
2936 浏览

unreal-engine4 - 如何在 UE4 中动态渲染四边形?

answers.unrealengine.com 上对此有一些手动的答案,但它们似乎缺乏任何细节或示例。

具体来说,如果你想实现一组在 3d 游戏世界中渲染的动态纹理四边形,你会怎么做?

对于用例,请考虑使用Spriter动画的 2dish 侧滚动条。从 XML 加载 2D 动画很容易,但是如何在场景中动态渲染这组 2D 纹理、旋转和缩放的四边形?

0 投票
1 回答
451 浏览

c++ - 如何在运行时分配组件名称?

嘿嘿,

在下面的代码中,我将 StaticMeshComponent 名称指定为“StaticMeshComponentCOMP1,StaticMeshComponentCOMP2”。对于 N 分量,它不是很有效。

因此,我尝试将 StaticMeshComponent 名称指定为 StaticMeshComponentCOMP,并带有如下所示的“i”,但无法获得结果。

提前谢谢你的帮助

0 投票
1 回答
487 浏览

unreal-engine4 - 使用会话时参与者不复制 | 虚幻引擎 4.7.5

我关注了多人枪战展示(https://docs.unrealengine.com/latest/INT/Resources/Showcases/BlueprintMultiplayer/index.html)并尝试为我自己的项目复制会话部分。我可以创建一个(局域网)会话,查看其他会话并加入其中。我的问题是,由于某种原因,正确的地图打开了,但演员没有复制。如果我只是打开地图,对于 2 名玩家,他们可以毫无问题地复制。使用会话时我还应该做些什么来启用复制?谢谢!

0 投票
1 回答
4385 浏览

c++ - 如何获取 UStaticMesh Array 的组件?

嘿嘿,

在下面的代码中,我试图获取 UStaticMesh Array 的组件,但出现如下错误。

错误 1 ​​错误 C2338:GetComponents 的“T”模板参数必须从 ActorComponent 派生

在 .h 文件中

在 .CPP 文件中

有没有其他函数或方法来获取 UStaticMesh Array 的组件???

0 投票
1 回答
1169 浏览

plugins - 如何将 UE4 中的 Leap-Motion-Plugin 包含到现有项目中?

我正在开发 UE4.7.5 中的一个项目,我想在项目中使用 Leap Motion。我下载了插件并将 LeapMotionController 文件夹复制到我现有项目的插件文件夹中。我现在可以在项目设置中启用插件。UE4想重启才能使用插件所以我试了一下。但随后出现消息“以下模块丢失或使用不同的引擎版本构建:UE4Editor-LeapMotionController.dll 你想现在重建它们吗?” 出现了。所以我按了是。现在出现错误消息“无法编译MyProject。尝试手动从源代码重建”。我不知道现在该怎么做才能让 Leap Motion 工作。我在计算机上的任何地方都找不到丢失的模块。而且我不知道如何手动从源代码重建。

0 投票
1 回答
1201 浏览

c++ - 在虚幻引擎中导入 Steam 社区 API

所以我在我的虚幻引擎项目中导入了 Steamworks SDK。它构建,运行时,我得到了 Steam 覆盖。伟大的!

但是,我现在正在尝试获取用户的好友列表,这需要 Steam 社区 API,它包含在两个文件中,ISteamFriends.h并且ISteamUtils.h. 我正在尝试将这些导入到我创建的用于管理 Steam 通信的 Actor 类中,但 Visual Studio 看不到这些文件并且不会构建。

这会产生错误:

错误 C1083:无法打开包含文件“ISteamFriends.h”:没有这样的文件或目录

错误 C1083:无法打开包含文件“ISteamUtils.h”:没有这样的文件或目录

我需要给它一个特定的目录路径以便它可以找到这些文件吗?如何让 Visual Studio 找到这些文件以便我可以使用社区 API?

0 投票
0 回答
1366 浏览

c++ - 如何计算此网格的正确 UV?

我目前正在使用 UE4 开发一个项目,并编写了一个高度图生成器并将他与一个 delaunay-triangulator 结合起来。然后我必须从输出文件中读取三角形/顶点。但是我有紫外线的问题。每个顶点都想定义一个 U 和一个 V 变量,但我不知道如何计算它们。基本上,我放在最终网格上的纹理应该看起来像一个大纹理。我唯一得到的工作(只是使用 0-1 范围内的值)是每个三角形都有一个显示的纹理,但没有与所有其他三角形对齐,所以它看起来像核电站爆炸。

这是我从两个文件中读取所有顶点并随机指定UV类型的代码。

谢谢你的帮助!

线框: 线框

指定材料: 有材质

编辑:

好的,我添加了以下代码:

现在它看起来不再像核事故了,但是纹理围绕整个网格拉伸,而不是重复,并且仍然略微扭曲。