UE5 Lyra:从基础到实践

UE5 Lyra是虚幻引擎5中新出现的一种视觉编程语言。相较于传统的代码编程,用视觉编程可以让你更直观地编辑逻辑、操控游戏。本文将从多个方面对UE5 Lyra进行详细的阐述,并提供相应的代码示例。

一、概述

UE5 Lyra建立在Blueprint的基础上,是一种更加直观、易于理解的视觉编程语言。与传统的蓝图类比,Lyra可以使程序的可读性和可维护性更高。Lyra是一个深度嵌入到虚幻引擎编辑器中的编程语言,拖放节点,连接它们,设置参数等操作,用于表达想要实现的逻辑,并生成可执行的代码。

Lyra支持所有 Blueprint 的特征,包括事件、变量、函数调用以及组件交互。Lyra自身特有的特点主要是分层模式。每个 Lyra 篮子都包含一个封装的逻辑块,这个块可以被嵌套在另一个 Lyra 篮子中使用。这样,程序可以很好地组织起来,更加模块化。

二、基础语法与概念

在我们深入了解 Lyra 之前,我们需要了解一些基础知识。下面是一个简单的代码示例:

    
        // 打印输出文本 "Hello World!"
        Print String("Hello World!");
    

// 表示注释,Print String是一个函数调用,”Hello World!”是函数的参数。这个示例表明 Lyra 也支持与传统编程语言一样的语法。

当我们使用 Lyra 建立一个新的 Program 或创建一个 Lure 篮子时,我们会看到下面的界面:

如图所示,我们可以选择从空项目开始或者导入已有的 Lyra 篮子。在开始前,我们需要先理解一些 Lyra 的概念。

3.1 Program

一个 Program 就是一个 Lyra 程序,可以拥有多个 Lure 篮子。Program 就像一个传统蓝图的 Level Blueprint,是程序的主入口。

下面是一个简单的示例。创建一个新的 Program,然后拖入两个 Lure 篮子:

在一个 Program 中,你可以执行以下操作:

  • 添加、删除或管理 Lure 篮子
  • 设置程序、篮子或节点的说明信息
  • 保存或导出程序和篮子
  • 添加或编辑全局变量和宏
  • 导入或导出 JSON 文件

3.2 Lure

Lure 代表着用户在 Lyra 中编写的逻辑。它可以嵌套在其他 Lure 中,在 Lyra 中形成复杂的逻辑层次结构。在Lure中,你可以执行以下操作:

  • 添加或删除节点
  • 连接、断开、编辑和删除节点连接线
  • 更改节点的名称、参数值等等
  • 撤销和重做操作

下面是一个简单的示例。创建一个空 Lure,然后从左侧菜单栏拖动一个打印字符串节点到 Lure 篮子中:

3.3 节点

节点是 Lyra 中的基本操作单元。它只做一件事情,然后把结果传递给下一个节点。节点可以是函数的调用、变量的获取、数组的操作等。在创建节点时需要选择节点类型,每种类型都有对应的参数和功能。

下面是一个简单的示例。在一个 Lure 篮子中,使用键盘输入节点取得一个整数值,然后相乘后打印输出:

首先,我们需要添加一个带有输出值的键盘输入节点。然后,我们添加一个带有两个输入和一个输出的乘法节点。最后,我们添加一个打印输出节点。

这些节点都使用默认的参数值。我们只需要连接所有节点,并将输入框上的默认值改为我们所需的值,然后运行程序即可。

3.4 连接线

连接线连接了两个节点,将第一个节点的输出传递给第二个节点的输入。然后第二个节点执行一些操作,并将输出传递给下一个节点,这样不断的连接。在 Lure 中,你可以连接多个节点,形成功能复杂的逻辑结构。

下面是一个简单的示例。创建两个输入节点,然后将它们相加后输出:

三、使用示例

现在,我们来实现一个更实用的例子。在这个例子中,我们将创建一个东西西方向的相机,并实现玩家能够通过鼠标移动来控制摄像机的旋转。代码示例如下:

    
        // 视角旋转
        // 得到鼠标在视口中的位置
        Get Mouse Position(X, Y);

        // 移动摄像机垂直方向上
        Add Controller Pitch Input(Y);

        // 移动摄像机水平方向上
        Add Controller Yaw Input(X);
    

这个示例中,我们使用了三个 Lyra 常用的节点:Get Mouse Position、Add Controller Pitch Input 和 Add Controller Yaw Input。按照我们上面的步骤,我们可以通过拖拽来建立这个 Lure 篮子,并连接这三个节点,加上一些参数值来运行我们的程序。

下面是这个例子的Lure示例图:

运行程序之后,我们就可以使用鼠标来移动摄像机了。

总体来说,Lyra 是一个易学易用的视觉编程语言。在虚幻引擎开发中,使用 Lyra 来建立逻辑可以大大提高代码可读性和可维护性,同时使游戏开发变得更加高效。

原创文章,作者:KBLNO,如若转载,请注明出处:https://www.506064.com/n/372756.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
KBLNOKBLNO
上一篇 2025-04-25 15:26
下一篇 2025-04-25 15:26

相关推荐

  • Python基础代码用法介绍

    本文将从多个方面对Python基础代码进行解析和详细阐述,力求让读者深刻理解Python基础代码。通过本文的学习,相信大家对Python的学习和应用会更加轻松和高效。 一、变量和数…

    编程 2025-04-29
  • 数据结构与算法基础青岛大学PPT解析

    本文将从多个方面对数据结构与算法基础青岛大学PPT进行详细的阐述,包括数据类型、集合类型、排序算法、字符串匹配和动态规划等内容。通过对这些内容的解析,读者可以更好地了解数据结构与算…

    编程 2025-04-29
  • 树莓派DIY无人机一:制作基础

    本文将介绍如何使用树莓派制作一个可飞行的小型无人机。本文将介绍树莓派的选型、比例积木的使用、无线电通信以及如何控制飞行器的基本运动。 一、树莓派的选型 在DIY无人机中,树莓派是必…

    编程 2025-04-29
  • Python零基础PDF下载

    本文将为大家介绍如何使用Python下载PDF文件,适合初学者上手实践。 一、安装必要的库 在Python中,我们需要使用urllib和requests库来获取PDF文件的链接,并…

    编程 2025-04-29
  • Polyphone音频编辑器基础入门教程

    Polyphone是一款免费的音频编辑器,可用于编辑.sf2和.sfz格式的音色库。本文将详细介绍Polyphone的基础操作及使用方法。 一、安装和简介 首先,我们需要下载并安装…

    编程 2025-04-29
  • Python语言设计基础第2版PDF

    Python语言设计基础第2版PDF是一本介绍Python编程语言的经典教材。本篇文章将从多个方面对该教材进行详细的阐述和介绍。 一、基础知识 本教材中介绍了Python编程语言的…

    编程 2025-04-28
  • Python基础语言

    Python作为一种高级编程语言拥有简洁优雅的语法。在本文中,我们将从多个方面探究Python基础语言的特点以及使用技巧。 一、数据类型 Python基础数据类型包括整数、浮点数、…

    编程 2025-04-28
  • 键值存储(kvs):从基础概念到实战应用

    本文将从基础概念入手,介绍键值存储(kvs)的概念、原理以及实战应用,并给出代码实现。通过阅读本文,您将了解键值存储的优缺点,如何选择最适合的键值存储方案,以及如何使用键值存储解决…

    编程 2025-04-28
  • Python基础考点用法介绍

    Python作为一门脚本语言,其易学易用、开发快速的特点吸引了大量开发者。本文将从Python基础考点出发,详细阐述Python的特点、数据类型、运算符、流程控制、函数、模块等方面…

    编程 2025-04-28
  • Python动态输入: 从基础使用到应用实例

    Python是一种高级编程语言,因其简单易学和可读性而备受欢迎。Python允许程序员通过标准输入或命令行获得用户输入,这使得Python语言无法预测或控制输入。在本文中,我们将详…

    编程 2025-04-28

发表回复

登录后才能评论