虚幻引擎UE4:使用图生成随机数的详细博客教程

来源:ai知识-合作伙伴 时间:2024-07-11 18:42:26

虚幻引擎UE4:使用图生成随机数的详细博客教程

# 虚幻引擎UE4:利用图生成随机数的详细博客教程

在游戏开发中,随机数生成是一个常用的功能,它可帮助咱们创建更加动态和不可预测的游戏体验。虚幻引擎UE4提供了强大的图系统使得咱们可以轻松地实现随机数的生成。本文将详细介绍怎样在UE4中采用图生成随机数,涵随机数值、布尔值以及列表元素等。

## 一、UE4图简介

虚幻引擎UE4的图系统是一种基于可视化的编程界面,它允开发者通过拖拽节点和连接线来创建游戏逻辑和功能。图系统极大地减少了编程的难度,使得非程序员也可以参与到游戏开发中。

## 二、生成随机数值

### 2.1 创建图函数

咱们需要在图中创建一个新的函数。以下是创建步骤:

1. 打开虚幻引擎编辑器。

2. 在内容浏览器中选择或创建一个图类。

3. 双击打开该图类。

4. 在图编辑器中,右键点击空白处,选择“添加函数”。

### 2.2 添加随机数生成节点

在创建的函数中,我们能够添加以下节点来生成随机数值:

- 随机选择节点:用于生成一个指定范围内的随机数。

- 随机种子节点:用于设置随机数的种子值,确信每次生成的随机数都不同。

以下是一个示例:

```plntext

float x = FMath::FRandRange(-500, 500);

```

这里,`FMath::FRandRange`函数接受两个参数,分别为随机数的最小值和更大值返回值是这两个值之间的随机数。

### 2.3 显示隐藏参数

在某些情况下,我们可能需要调整随机性模式、覆种子和种子等参数。这些参数默认是隐藏的,可通过点击节点下方的箭头来显示。

虚幻引擎UE4:使用图生成随机数的详细博客教程

## 三、生成随机布尔值和列表元素

### 3.1 随机布尔值

在图中,生成随机布尔值非常简单。我们可采用以下节点:

- 随机布尔节点:该节点会随机返回`True`或`False`。

### 3.2 随机列表元素

要是需要从列表中随机选择一个元素,能够采用以下节点:

- 随机选择节点:该节点可从一个列表中随机选择一个元素。

例如,若是我们有一个包含多个敌人的列表,能够采用以下形式随机选择一个敌人:

```plntext

Enemy* RandomEnemy = Enemies[ FMath::RandRange(0, Enemies.Num() - 1) ];

```

虚幻引擎UE4:使用图生成随机数的详细博客教程

这里,`Enemies`是一个包含敌人的数组,`RandRange`函数用于生成一个随机索引。

## 四、UE4随机生成Actor

在游戏开发中自动生成敌人和物体是创造动态环境的要紧手。以下是怎样采用UE4图实现随机生成Actor的方法:

### 4.1 创建生成函数

1. 创建一个新的图函数命名为`GenerateRandomActor`。

2. 添加一个生成Actor的逻辑,例如:

```plntext

Actor* NewActor = GetWorld()->SpawnActor(ActorClass, Location, Rotation);

```

虚幻引擎UE4:使用图生成随机数的详细博客教程

这里,`ActorClass`是我们要生成的Actor的类,`Location`和`Rotation`是Actor的生成位置和旋转角度。

### 4.2 采用随机数控制生成

为了使生成的Actor具有随机性,我们可利用以下方法:

- 采用`FMath::FRandRange`函数生成随机位置和旋转角度。

- 采用随机布尔值决定是不是生成某个Actor。

## 五、RandomStreams(随机流)

UE4中的RandomStreams允在图、关卡图及针对动画的动画图中重复地生成及应用随机数。通过RandomStreams我们能够保证在不同场景和动画中生成的随机数是一致的。

### 5.1 创建RandomStream

1. 在图中,添加一个RandomStream变量。

虚幻引擎UE4:使用图生成随机数的详细博客教程

2. 利用RandomStream的`GetRandomValue`函数来生成随机数。

```plntext

RandomStream MyRandomStream;

float RandomValue = MyRandomStream.GetRandomValue();

```

这里,`MyRandomStream`是我们创建的RandomStream对象`RandomValue`是生成的随机数。

## 六、总结

利用UE4的图系统生成随机数是一个简单而强大的功能。它不仅能够帮助我们生成随机数值和布尔值还能够实现更复杂的随机生成逻辑,如随机生成Actor和列表元素。通过RandomStreams,我们还可保证在不同场景和动画中生成的随机数是一致的,从而增进游戏的可玩性和可重复性。掌握这些技巧,将使你在UE4游戏开发中更加得心应手。

精彩评论

头像 2024-07-11
3d溜溜设计问答平台为广大设计师们提供各种UE4怎么取随机值问题解答,3d溜溜素材问答平台汇聚全球各地的设计师、名师名司、设计爱好者等设计灵感和经验。
头像 剑峰 2024-07-11
生成随机数不仅是生成随机数值还涵生成随机布尔值、随机列表元素等。在UE4图中,你可采用“随机选择”节点来实现这一点。 创建一个新的函数。上述三项:随机性模式(RandomnessMode)、覆种子(OverrideSeed)和种子(Seed)最初为隐藏,点击节点下方的箭头即可显示。
头像 马瑞卡 2024-07-11
在DataVisualizer图中添加一个,例如“BeginPlay”,在该中生成一些随机数据。您可以使用UE4提供的随机数函数来实现这一步骤。
头像 养羊 2024-07-11
UE4 图RandomStreams RandomStreams(随机流)允在图、关卡图及针对动画的动画图中重复地生成及应用随机数。

虚幻引擎UE4:使用图生成随机数的详细博客教程

编辑:ai知识-合作伙伴

本文链接:http://www.tsxnews.com.cn/2024falv/aizhishi/47911.html

上一篇:《子原文精选:逍遥游篇章解析》
下一篇:Unreal Engine 4 敌人自动生成与动态AI脚本编写全攻略

版权与免责声明:
  ① 凡本网注明"来源:"的所有作品,版权均属于,未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明"来源:XX"。违反上述声明者,本网将追究其相关法律责任。
  ② 凡本网注明"来源:xxx(非)"的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
  ③ 如因作品内容、版权和其它问题需要同本网联系的,请在30日内进行。

编辑推荐

新媒体

  • 喜讯!咸多了一个“中国天然氧吧”
    喜讯!咸多了一个“中国天然氧吧”
  • 投资26亿元!嘉鱼县官桥八组把大学办到家门口
    投资26亿元!嘉鱼县官桥八组把大学办到家门口
  • 咸一地入选中国美丽休闲乡村
    咸一地入选中国美丽休闲乡村
  • 省级名单揭晓,咸这户家庭上榜!
    省级名单揭晓,咸这户家庭上榜!
  • 距银泉大道不足百米,竟藏着这些卫生死角!
    距银泉大道不足百米,竟藏着这些卫生死角!

社会新闻